Oddbean new post about | logout

Notes by bright-bonefish | export

 hello,
i can pay $13.99/month for privacy preserving youtube interface that accepts monero and allows good user experiance viewing and downloading all videos with maximum quality. 
 how to use internet the correct and wrong way in 2025

watch youtube video
correct way: sign in to confirm you age
wrong way: write browser script to redirect videos to youtube downloader

watch a movie
correct way: go to netflix and see movie at 720p
wrong way: download torrent with high quality

read reddit:
correct way: sign in to confirm you are not a bot
wrong way: use redlib when it works

read any website:
corrent way: solve captcha to view website
wrong way: write python script to move and click mouse automatically to solve captcha 
 gays #clouflare

https://pomf2.lain.la/f/lthwr68.mp4

import cv2
import numpy as np
import pyautogui
import time
import base64

while True:
    screenshot = pyautogui.screenshot()
    screenshot_np = np.array(screenshot)
    large_image = cv2.cvtColor(screenshot_np, cv2.COLOR_BGR2GRAY)
    imgdata=('iVBORw0KGgoAAAANSUhEUgAAALMAAAAbBAMAAADFdaNDAAAAGFBMVEUrLSpBQ0BmaGV9f3yXmpa1t7TU19P///8iR1F4AAAByUlEQVRIx+3Wz2/aMBQHcJOV5Jq2BK4pMHKlmdReoa2Wq4tUfE2rga84Jv7++'
    '3svuEXaaLtDIvUwK4rI4/Hxj2eSCHTVdgL1+K2plunVkf7eMj3Wrxdu3DZ9vPpPf0Lfw4rPdk3+73QdHdOfILdoj0a/OXxbok06p4G7OMHqOcqtCPqwGSQwcGmgjcKAUq57yj4ELv3G6fMAHK6n8Wx+hjq+xOox0Cdpqau'
    's/Cn1Y6JzGvUEO0WHC83sZeTp9a/IXqzNzXMBzOnc0MFW0K/qdank7CU7SRu1UzmqW6nBtOQh22w/ktr1PQ2ENqL4fkQzoC8bOqSPhvoyBXUQnaRtJpEKQeeG5n7gIlPQsg88vTwPaZUWQjQl3zeTIS0ntr6KC0n5J2kXT'
    'jDebrWn7W1CwaTUR9oOwfSSkv6iparepzHgqQGerkNKw90d1YDWu8AZT9kxLfWh6kRT2NMN/y69GKG82byOGhdUEpRTcBmrbE90lVVMm+FGHWgOe3qJxQd0WcClvTd6zv9HE4I3n0svp7RkcTIkmpI8zWFPV70fH9B/NHm'
    'obRe3p8lhR3ZAb0LeNdcd3FQdryfk8Ks9wDp87Hb4stDhK05n9G9Bc/SDKkOp0wAAAABJRU5ErkJggg==')

    image_data = base64.b64decode(imgdata)
    image_np = np.frombuffer(image_data, np.uint8)
    small_image = cv2.imdecode(image_np, cv2.IMREAD_GRAYSCALE)
    #small_image = cv2.imread(imgdata, 0)
    result = cv2.matchTemplate(large_image, small_image, cv2.TM_CCOEFF_NORMED)
    threshold = 0.8
    min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)

    if max_val >= threshold:
        print("found match")
        top_left = max_loc
        bottom_right = (top_left[0] + small_image.shape[1], top_left[1] + small_image.shape[0])

        middle_x = (top_left[0] + bottom_right[0]) // 2
        middle_y = (top_left[1] + bottom_right[1]) // 2

        pyautogui.moveTo(middle_x, middle_y)
        pyautogui.click()

    time.sleep(0.1) 
 #cloudflare turnstile #capcha #userscript getting started:

this user script finds "verity you are human" element from dom,

if(window.self.location.href.indexOf("cloudflare") != -1){
  Element.prototype._attachShadow = Element.prototype.attachShadow;
  Element.prototype.attachShadow = function () {
    return this._attachShadow( { mode: "open" } );
  };

  console.log("window", window.top, window.self, document, window.self.location.href)
  console.log("document.scrollingElement", document.scrollingElement)

  setTimeout(function(){
    console.log("timeout")
    const body = document.scrollingElement.querySelector("body")
    console.log("body", body)
    console.log("body.shadowRoot", body.shadowRoot)
    
    setTimeout(function(){
      const label = body.shadowRoot.querySelector("label")
      console.log("cloudflare element", label.innerText)
      // you can click it but it results in error
      //label.click()
    }, 1000)
  }, 1000)
} 
 #firefox uses centralized redirect list for redirecting domains from http to https.
seems stupid idea.

so this is some kind of security practice based on this centralized list maintained by chromium project.

https://hstspreload.org

another centralized list firefox is using is of course the "malware list", where firefox displays red page and may or may not allow accessing the site after dismissing this notification.  
 while redirect list from http to https may not seem that bad, its still security practice based on trust of central authority. this central authority may affect following:

- non inclusion of site to the list based on political view
- central server may be down
- central server may collect ip information upon access

however, the latter list "malware list" is already being misused. this list is basically based on user reporting. domain names may be flagged as "distributing malware" for whatever reason anyone thinks.

web is distributed and web browsers should not rely on any centralized trust based security principles which moves some control of your browser to third party services. 
 just found out yt-dlp can download content from lbry:// protocol #lbry #yt-dlp 
 it seems this protocol is just totally ignored despite being technically best censorship resistant tube platform with very active content uploaders. see: https://explorer.lbry.com/claims 
 how to hack a system 101

go to bug tracker:
https://security-tracker.debian.org/tracker/status/release/stable?filter=1&filter=high_urgency&filter=medium_urgency&filter=low_urgency&filter=unimportant_urgency&filter=unassigned_urgency&filter=endoflife_urgency&filter=undetermined_issues&filter=nodsa&filter=noignored&filter=nopostponed

see list of hundreds of vulnerabilities not patched in current stable release of os

find remote code execution vulnerability,

for example:
https://security-tracker.debian.org/tracker/CVE-2024-51774
mitm remote code execution in qbittorrent
bookworm	4.5.2-3+deb12u1	vulnerable

dyor how to execute attack on target machine
proceed 
 i did some reverse engineering of #quest3.

it is possible to completely disable existing ui. in this state where you see only black, it is possible to launch immersive application.

disable default ui:
adb shell pm disable-user com.oculus.vrshell

start immersive app, such as immersive custom launcher:
adb shell am start -n aaa.QuestAppLauncher.App/aaa.QuestAppLauncher.App.AppInfo

note that controls do not work except centering the view using long press of home-button.

some other commands that may be useful:

hide task bar etc:
adb shell pm disable-user com.oculus.systemux

re-enable full iu:
adb shell pm enable com.oculus.vrshell

hide windows, (background and controller remains visible) ?? may or may not work
adb shell am force-stop com.oculus.explore

start lightning launcher:
adb shell am start -n com.threethan.launcher/.activity.LauncherActivitySearchable

hide windows, (background and controller remains visible) ?? may or may not work
adb shell am force-stop com.oculus.explore 
 controls do work! im able to use skybox vr and watch videos. just dont press meta-button. 
 the new moderation is no moderation

applications may provide opt-in filters, such as:
- age of pubkey
- post frequency (spam?)
- number of reactions to posts (flat or algorithmic)
- kinds of reactions to posts
- llm analyzed quality of posts
- amount of pow applied
- semantics used in post
- exact words used in post
- mllm analyzed quality of media in posts

filters may be applied with different strategies:
- post basis
- hide all posts if n posts by npub match filter 
 repetition in posts' content 
 number of tags used. using too many tags can be considered tag spam 
 write 5 english words that end with 3 consonants and at least one of them is r 
 incompetent enable the power of competent. the new ignorance is your lack of understanding what your device is doing. 
 #web devs are now normalizing websites to use 100 % cpu core
soon everyone thinks this is the normal state

allocating full core to programs doing unknown things
because web is so safe and sandboxed

phone and macbook users dont even notice this, because their systems dont have fans, and they have plenty of cores to spare 
 soon devices are able to utilize webgpu. websites can then hijack the full use of gpu acceleration. this enables websites to hijack visitors' devices full hardware capabilities to run unknown machine learning models
how the fuck do you think skynet is going to run? its going to run on your web browser when you visit youtube.com or any other website. millions of machines running webgpu apps they have no idea those are running because their low power devices dont have fans and they have plenty of cores to spare. 
 there is one big problem with computing systems we are building currently. focus is on sandboxing, making programs and apps safe and isolated.
so its all more safe, whats the issue?

here it is:
the more safe and sandboxed the program is, the less you care what its doing
you are more likely to allocate resources to programs you have no idea what they are doing

"sandboxing" may be the trojan javascript turned out to be. not because sandboxing is inherently bad, its because of the psychological effect it causes: you dont care anymore 
 so we built a system where everyone can safely run programs they have no idea what those programs are even doing
just type a web address, and the program can run whatever it wants to do

#javascript was a mistake 
 #web used to be like #linux. thats http.
you request content, you get content

now web is like #windows
it updates when you dont ask
it does stuff you dont ask

#javascript was a mistake 
 http is state of mind:
you request content, you get content

javascript was a mistake 
 just a few quick things

nostr is awful word.
everyone hates twitter. its political. its hectic.

build calm interfaces, not infinity scroll ones.
dont try to replace something that doesnt implement good ui to begin with

javascript devs dont get this, but updating content dynamically does not make interface better. it makes it only more hectic. 
 Plan B S01 was pretty good. Don't bother with second season however. Now watching Lightfields, good so far after two episodes. 
 its interesting to note how whole #tv and film industry has turned into shit in just a few years. all shows have about 90 % higher probability of being watchable if you select something to watch before 2016. 
 made so elegant #nostr command line viewer, im not gonna share it. but i tell you this:

3 queries:
- feed
- replies
- profiles

create 2 lookup tables
merge contents

you'll get json formatted tag feed with replies and names with very short and elegant code
jq is fucking efficient

https://www.meme-arsenal.com/memes/afb90ebf7c2af0543dc0cbd4fcd9b1c2.jpg 
 im using transmission, but out of interest checked. debian repos have old version of qbittorrent, updated 2023-11-22