Live data from Hacker News

Browser Fingerprinting Without JavaScript

fingerprintjs.com

101–110 of 124 posts

Re: Browser Fingerprinting Without JavaScript

#101

Earlier quoted context omitted.

I can't tell if you're trying to say unrooted phones with stock carrier roms are somehow understood to be secure, or if rooting is mutually incompatible with security, or something else. Want to expound?

not OP but rooting is incompatible with security.

What's your threat model? Is it more secure that you as a user can execute root code? Or that your phone manufacturer can without asking for your permission?

Modern smartphones are basically spyware distros. I would argue it's far more secure to run a decent distro (Lineage/Replicant) with root, than it is to run any SamWeiMi crapware without root. Oh yes, the manufacturer's crapware has system privileges whether you ask for it or not, and so does Google Play Services, Google's universal backdoor for Android.

On paper, no root is better. In practice, even on a crap distro, rooting it will enable you to remove most crapware to reduce attack surface.

Also related: if you're concerned about security, you should probably only use applications from F-Droid.org repos. Google Play Store (and others) are just full of spyware! See also the Exodus Privacy project tracking trackers via static analysis of APKs.

Re: Browser Fingerprinting Without JavaScript

#102

Being a fervent Tor Browser user, i just tried with it and of course the fingerprinting failed. Several copies of it give me the same fingerprints: e56952dba176a47af3c051b626b64ff3 (Safer mode) 632e305f8a939e5ba6afd24eced586f0 (Safest mode) That's because the Tor Browser, contrary to urban legend, is not just a browser that routes trafic through the tor network, but a firefox reworked (most of which is being upstream…

TCP fingerprinting TOR would fingerprint the exit node

That's a fair interpretation! I'm not familiar with tor internals, but i assumed after removing the last encryption layer, the exit node would "expose" raw TCP trafic from the original requester. Otherwise, how does it work?

Re: Browser Fingerprinting Without JavaScript

#103

Earlier quoted context omitted.

Did you see the spefific CSS hack they use to tell if you're using the Tor Browser as opposed to normal Firefox?

What's the point? You can tell if someone is using Tor anyways from their IP.

Tor is not Tor Browser. Detecting outdated Tor Browser version would help you detect well-known vulns. Detecting non-TBB browser over Tor would suggest that side-channel attacks are available to defeat onion routing (eg. WebRTC leaks).

If you want privacy, use Tor Browser. It's the only privacy-friendly browser out there. All others have many holes and leaks and very little intentions to close them. Although Firefox has a "Tor uplift" project upstreaming patches from Tor Browser into Firefox's strict privacy mode.

Re: Browser Fingerprinting Without JavaScript

#104

Earlier quoted context omitted.

I tried this with Tor Browser on two different computers and got two different fingerprints, even in safest mode.

Interesting. Are you running different systems? If so, can you explain which (and which desktop environments) so we can (try to) reproduce?

Yes, the one was on Void Linux (no desktop environment), the other on Kubuntu (KDE).

Re: Browser Fingerprinting Without JavaScript

#105
post #69

Earlier quoted context omitted.

So how crippled does regular web browsing become using Tor safest mode? I'm tempted to give it a whirl for a week. Root my phone, flash something secure, leave VPN always on, and limit web browsing to Tor to get a feel for how bad or good it is. The self inflicted contortions developers go through to justify the need to spy drive me crazy. Modern devices and bandwidth are more than sufficient to handle a vast majorit…

I think the biggest problem of surfing the web via Tor end nodes will be the Cloudflare captcha. As much as I like Cloudflare, their captcha makes the open web pretty much unusable through Tor. At least last time I tried.

We need to boycott Cloudflare and others like them. They are pretending to protect websites, but in fact they create a walled garden where they decide who gets in.

People who use privacy tooling are left out, people from poorer countries are left out (due to bad IP range reputation), and legit bots scraping websites are left out.

If you need DDOS protection, use network-level mitigations from your host and basic rate limiting. If you need to protect your admin area from bruteforce and known vulns, restrict it to localhost queries and use SSH tunneling with public-key auth. If you need geo-replication, think again, you probably don't: make your pages lighter (why JS? why custom fonts?) and reduce the number of queries at all costs (the biggest slowing factor on high-latency links).

You don't need Cloudflare, even for a popular international website. Designing your website properly will make it more user-friendly and faster to load. From anywhere in the world, it should be fully rendered before any similar Cloudflare-powered page could load the JS spyware blocking access to the content.

Re: Browser Fingerprinting Without JavaScript

#106

Earlier quoted context omitted.

Interesting. Are you running different systems? If so, can you explain which (and which desktop environments) so we can (try to) reproduce?

Yes, the one was on Void Linux (no desktop environment), the other on Kubuntu (KDE).

It's probably worth a bug report to the TBB team so that they can investigate why fingerprints would be different. Having a unique fingerprint across instances is the very goal of TBB.

Re: Browser Fingerprinting Without JavaScript

#107
> And since most websites require JavaScript to function properly, using this method to preserve your online privacy will invariably lead to a suboptimal web experience.

Great article and a good demo and insight into CSS capabilities in particular but I have to disagree with the above quote taken from the article. I surf the web with JavaScript disabled and the words 'most', 'properly' and 'suboptimal' in my view are debatable.

most - for me, about 99% of websites still work best with JS disabled. If I see the 'please enable JavaScript ' message on a content site (like a blog) I generally bail immediately because delivering content with JS is my definition of suboptimal and a sign of inexperienced devs or a CMO with way too much influence over dev.

properly - when I view a pure content site (like a blog), actually seeing the content is my definition of 'properly'. Seeing a blank screen or the 'please enable JavaScript ' is my definition of not functioning properly. Using JavaScript to deliver content seems like overkill to me.

suboptimal - for me, rather than leading to a suboptimal web experience, disabling JavaScript leads to an optimal web experience. I avoid most ads and I don't suffer JS download delays. All I want is the info. Helping to preserve my online privacy is just a side bonus.

I have a simple rule. If a website is an application (i.e. it has instrumental value) and it's behind a login screen, then by all means use JS. If it's not (i.e. it has intrinsic value like a blog post) then don't. To me, a PWA is the optimal app experience, not the optimal content experience. JS is not for delivering content, it's for delivering functionality, instrumentality.

Re: Browser Fingerprinting Without JavaScript

#108
post #9

I used to think that privacy was a technical problem, then I thought it was a legal problem, now I think it is a reaction problem. We are not disgusted enough. I do wonder if that will change.

No, it's a legal problem. There are countries where groping women is not a big deal for example. Even in the most "ideal" EU countries, casual racism is an afterthought. Reaction is a problem because there is no adverse consequence to the perpetrator. I don't need a browser extension, I need CEOs in prison. Then reactions will catch up.

> Even in the most "ideal" EU countries, casual racism is an afterthought

Could you clarify what you mean and what countries?

Re: Browser Fingerprinting Without JavaScript

#109
post #27

Earlier quoted context omitted.

Can you elaborate on this?

Sure. Etag stands for "Entity Tag", and it's a header value that comes from the web server and related to caching. A normal implementation would use something like a CRC or MD5 hash of the requested page/image/etc to calculate a tag, and send it to the web browser. The browser stores it for later. The browser, if it's asked to retrieve that thing (image, page, etc) later, sends the "etag" back in the request via a If…

Does private browsing in FF solve this by not caching between program starts?

Re: Browser Fingerprinting Without JavaScript

#110
post #27

Earlier quoted context omitted.

Sure. Etag stands for "Entity Tag", and it's a header value that comes from the web server and related to caching. A normal implementation would use something like a CRC or MD5 hash of the requested page/image/etc to calculate a tag, and send it to the web browser. The browser stores it for later. The browser, if it's asked to retrieve that thing (image, page, etc) later, sends the "etag" back in the request via a If…

Does private browsing in FF solve this by not caching between program starts?

Seems like it would, yes.
Post reply on HN