Live data from Hacker News

Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

scrapfly.dev

171–180 of 237 posts

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#171
post #167
post #152

Earlier quoted context omitted.

Infinite captcha welcomes those who are using FF and linux on stackoverflow. Easier to skip its links in search results than waste time solving it (captcha never finishes).

I get them all the time on Firefox on windows using a vpn.

Overriding useragent to chrome fixes it for some sites.

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#172
post #101

Earlier quoted context omitted.

> Most users aren't spoofing their user agent headers to be a different operating system. The people behind the LLM behind this blog post are. They're trying to pretend their robots are people to sell other websites' data to their customer. It's easier to pass bot detection gates if you pretend to be a physical machine running Windows or macOS than if you honestly admit you're using Linux on a VM.

The HTTP User-Agent header was a mistake from the beginning. There is no legitimate need for the server to know what software the client is (or claims to be) running.

There is actually/obviously. It lets you identify bugs in well meaning clients. e.g. you can identify if IE v1.2.3 isn't handling form submissions correctly. It lets you serve content that works for clients with known issues or limitations.

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#173
post #80

Earlier quoted context omitted.

It takes less time to write the prompt, you could just publish that? It's an important topic, and I am glad you wrote about it, but even half a page of notes would have been enough to convey this. It would save me literally skim reading headings just to get past all the fluff.

Isn’t “just post the prompt” a joke? That only works if the content was one-shot, and I bet that (much like code) most isn’t.

[deleted]

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#174
post #163
post #22

just inject this with your favorite JS injection plugin let oldTanh = Math.tanh; Math.tanh = x => oldTanh(x) + Math.random()/10000000;

If this becomes common, it's trivially detectable with good ol' toString().

It's trivial to replace toString() as well

Maybe the right solution is an LLM that reads the fingerprinting code and adapts the counter-measure accordingly in real time.

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#175
post #156

Earlier quoted context omitted.

I work at a CDN that provides bot detection services. I agree that there's baseline necessity in terms of fraud detection, and if not necessity then definitely financial motivation to fingerprint. But these days, abusive scraping is far and way the the main driver for fingerprinting. We don't fingerprint for ad purposes, and we destroy PII for humans as fast as we can because PII should be treated as radioactive. But…

Do you think this could drive a shift towards more efficient web tech? I.e. more static websites, or websites served by faster software?

[deleted]

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#176

Earlier quoted context omitted.

First, a point I didn't make, is that if you have 32 bits of fixed, you get way more precision than with a 32 bit float. That's true, but I already responded to it. If you step up to the next size of float (e.g. f64), you have more precision than the fixed32. You can do exactly the same computation in f64 with equivalent inputs, and you'll get better precision than doing it in fixed32. Or you can round at every step…

Thanks for answering my points in detail! I think this is one of those domains where there's enough theory and practical considerations, that basically given the same set of constraints, there's generally one set of correct conclusions. To be clear I'm not anti-float, as they have less surprising behavior than fixed point, and are much less fiddly, but I do have to note that f32 sits at that awkward spot where it's n…

Totally agreed that f32s can be awkward. I'm really just arguing that most of the time, you're better off starting with floats and seeing if there are issues. If there are, you can often take advantage of float tooling (e.g. fpchecker [0]) to make better choices about how to proceed, since virtually no one does numerical analysis on commercial codebases in my experience. Sometimes you can skip that if there's an obvious reason (e.g. no float HW, FPGAs), but the general direction of software seems to be towards universal availability.

You're right about that particular constraint, though I'd question why the achievable 2-4mm precision at 32 or 64km are meaningfully different. Covering up unstable collision code and adaptive methods would be a rewrite?

[0] https://fpchecker.org/

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#177
post #101

Earlier quoted context omitted.

> Most users aren't spoofing their user agent headers to be a different operating system. The people behind the LLM behind this blog post are. They're trying to pretend their robots are people to sell other websites' data to their customer. It's easier to pass bot detection gates if you pretend to be a physical machine running Windows or macOS than if you honestly admit you're using Linux on a VM.

The HTTP User-Agent header was a mistake from the beginning. There is no legitimate need for the server to know what software the client is (or claims to be) running.

"The HTTP User-Agent header was a mistake form the beginning."

User-Agent spoofing was added to NCSA Mosaic in 1996. The public www was three years old and text-only clients were still in widespread use

https://raw.githubusercontent.com/alandipert/ncsa-mosaic/mas...

NCSA Mosaic is the early graphical browser that begat Netscape Navigator that begat Firefox. Later came Internet Explorer, Safari, Chrome and so on

What was the point of spoofing in 1996

Maybe it was just for fun, judging by the examples in the "mosaic-spoof-agents" file

As a matter of practice, by default I do not send a user-agent header. I only send the minumum headers required. For me, that's almost always 1-2 for GET and 4 for POST

For the vast majority of websites I have accessed,^1 this header minimisation has zero effect on the success of the HTTP request

1. For example, I have used a database of sites submitted to HN as way to test if header minimisation affects HTTP request success

Generally I do not use a web browser to make HTTP requests. I perform text processing on the HTML, JSON or whatever is returned, using custom utilities. I store information in SQLite. I read this information as plain text, preferably 7-bit ASCII. I dislike UTF-8

Onlilne debates about "browser fingerprinting" always seem to focus on trying to "blend in", e.g., via "spoofing"

As such, because browser continue to get more bloated with "features", online commenters argue in favor of sending more and more data points to servers that can be used to create a fingerprint instead of reducing the amount of data sent

Because, according to their reasoning (or lack thereof), sending less data would "stand out"

True, but it's generally easier to "spoof" a client that sends less data than one that sends more. And the number of sites that require a user-agent header is still smaller than the number that don't

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#178
post #106
post #44

Earlier quoted context omitted.

It is when you're doing it like the LLM companies are: at scale, to the degree that you're taking down my site, without my consent by masking your user-agent, for the purpose of stealing data I didn't authorize you to have.

What data is being stolen? Are you referring to copyright violation or something else? If you don't want LLM companies to scrape a site then just restrict access to authorized users. Simple.

This is the same mindset of criminal in a low trust society btw

"If you didn't want me to do this, you should had a fence/cameras/security guards. You shouldn't have dressed like that. You shouldn't have put your phone in that pocket."

Excusing trillion dollar corporations like low level criminals is embarrassing. Society shouldn't have to lock itself up because bad actors are spreading everywhere. The bad actors should just be removed.

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#179

Earlier quoted context omitted.

I work at a CDN that provides bot detection services. I agree that there's baseline necessity in terms of fraud detection, and if not necessity then definitely financial motivation to fingerprint. But these days, abusive scraping is far and way the the main driver for fingerprinting. We don't fingerprint for ad purposes, and we destroy PII for humans as fast as we can because PII should be treated as radioactive. But…

> we see customers that are constantly burned by abusive scrapers and the scrapers aren't slowing down So, I have two dumb questions: 1) Can't the customer rate-limit connections? If the "abuse" in scraping is the number of requests... limit the number of requests? 2) There is probably a market now for federated authentication where the provider gives legal guarantees of anonymized fingerprint in exchange for either…

1) Scrapers often rotate ip per request, rate limiting doesn’t help

Re: Since Chromium 148, Math.tanh is now fingerprintable to link underlying OS

#180

Earlier quoted context omitted.

> Most users aren't spoofing their user agent headers to be a different operating system. The people behind the LLM behind this blog post are. They're trying to pretend their robots are people to sell other websites' data to their customer. It's easier to pass bot detection gates if you pretend to be a physical machine running Windows or macOS than if you honestly admit you're using Linux on a VM.

Some scrape activity happens because I can't obtain the data any other way. I would be thrilled if certain retailers had price and availability data as an API so I could not bother with the bulk of scrape and process.

As much as I would like pricing APIs as well, the economics don’t add up for retail, and it would effectively lead to a scalper’s market.

A regular Joe consumer shouldn’t have to learn python to get thier foot in the door because some arbitrage purchaser has automated a ‘best deal’ purchasing bot based on real time pricing APIs.

Post reply on HN