this post was submitted on 19 Jul 2024
97 points (100.0% liked)

Privacy

31790 readers
207 users here now

A place to discuss privacy and freedom in the digital world.

Privacy has become a very important issue in modern society, with companies and governments constantly abusing their power, more and more people are waking up to the importance of digital privacy.

In this community everyone is welcome to post links and discuss topics related to privacy.

Some Rules

Related communities

Chat rooms

much thanks to @gary_host_laptop for the logo design :)

founded 5 years ago
MODERATORS
 

I've just been playing around with https://browserleaks.com/fonts . It seems no web browser provides adequate protection for this method of fingerprinting -- in both brave and librewolf the tool detects rather unique fonts that I have installed on my system, such as "IBM Plex" and "UD Digi Kyokasho" -- almost certainly a unique fingerprint. Tor browser does slightly better as it does not divulge these "weird" fonts. However, it still reveals that the google Noto fonts are installed, which is by far not universal -- on a different machine, where no Noto fonts are installed, the tool does not report them.

For extra context: I've tested under Linux with native tor browser and flatpak'd Brave and Librewolf.

What can we do to protect ourselves from this method of fingerprinting? And why are all of these privacy-focused browsers vulnerable to it? Is work being done to mitigate this?

all 42 comments
sorted by: hot top controversial new old
[–] [email protected] 5 points 3 months ago
[–] [email protected] 9 points 3 months ago (2 children)
[–] [email protected] 4 points 3 months ago* (last edited 3 months ago)

Is trust score 0 good or bad? I use uBlock with canvas blocker (fakes canvas) and some settings like referer.xorigin.trimming.

[–] [email protected] 4 points 3 months ago

Doesn't work for Tor Browser also: shows different fingerprints after a full relaunch of the browser.

[–] [email protected] 6 points 3 months ago (1 children)

I think it may be fonts embedded in the thing already. Noto is kind of standard because it supports everything.

[–] [email protected] 2 points 3 months ago (1 children)

This is what I though as well, but brave on stock windows doesn't show any noto fonts. Haven't tested tor browser on windows yet tho, so idk

[–] [email protected] 3 points 3 months ago (1 children)

Does every Tor browser show the same fonts? That's whats important.

[–] [email protected] 2 points 3 months ago (1 children)

Okay, I just tested Tor on windows, and it shows a bunch of microsoft fonts that my linux box doesn't have.

But what I did notice is that the fingerprint changed on my linux box after a full restart of tor browser. So I guess their approach is to randomize fingerprints between sessions, rather then to keep everyone's fingerprint the same?

[–] [email protected] 1 points 3 months ago

Submit a bug report

[–] [email protected] 7 points 3 months ago

I’m an iOS user who has not installed custom fonts. I’m sure I’m not the only one. Certainly that wouldn’t provide much useful information?

[–] [email protected] 2 points 3 months ago (1 children)

OK, my fingerprint for Tor Browser is 0b8c195e60af3e2c29ebb8adecb340b1. Is it so unique? What is yours?

[–] [email protected] 2 points 3 months ago (1 children)

I guess the important thing is in the unique versus total in for example 200 fonts and 150 unique metrics found.

[–] [email protected] 2 points 3 months ago

It doesn't matter really, one can write any words on a webpage, but show me the proof e.g. an unique and permanent resulting fingerprint.

I see from topics like this that many people don't understand fingerprinting, just showing a fingerprint, a soft of ID means nothing. A fingerprint must be:

  1. Unique for a particular browser instance, or at least effectively rare. For example, when the same browser on different distros shows different fingerprints.
  2. Permanent, the same each time you launch the browser.
[–] [email protected] 17 points 3 months ago (2 children)

IIRC, it actually goes deeper than just reporting what fonts are installed. Even if the font names and metrics are masked by the browser, scripts can render them to a canvas and sample the resulting pixels.

This is why I don't install any custom fonts where a web browser can use them, and part of why I keep javascript disabled by default.

[–] [email protected] 8 points 3 months ago (3 children)

Out of curiosity, how much of the internet is unusable with js disabled? As in, how often do you run into sites that are essentially non-functional without?

[–] [email protected] 4 points 3 months ago

how much of the internet is unusable with js disabled

Quite a lot actually. A lot of articles / blogs / news sites are actually more usable without javascript than with, because none of the annoying popups and shit can load. I suggest having two browser profiles: one with javascript enabled by default, and one with javascript disabled. So for things like online shopping, you'd open the js profile. And for things where you expect to do a lot of reading, use the nojs profile. Ublock origin also lets you temporarily enable/disable js for a particular website pretty easily.

[–] [email protected] 8 points 3 months ago

Don't bother https://noscriptfingerprint.com/

There's also TLS-based fingerprinting which cloudflare uses to great success, no html/css/js even needed for that.

[–] [email protected] 8 points 3 months ago* (last edited 3 months ago) (1 children)

I haven't taken measurements, but there are many problematic sites these days. Lots of web developers fail to see the problems that javascript imposes on users, so they build web apps even when they're serving static content, where a regular web site (perhaps with javascript enhancements that aren't mandatory) would do just fine.

I selectively enable first-party scripts on a handful of sites that I regularly use and mostly trust (or at least tolerate). Many others can be read without scripts using Firefox Reader View. I generally ignore the rest, and look elsewhere for whatever information I'm after.

[–] [email protected] 1 points 3 months ago

Thank you for the information! I kind of suspected it'd be like that tbh,

[–] [email protected] 3 points 3 months ago (3 children)

I wonder if running it in a container such as flatpak would help.

[–] [email protected] 1 points 3 months ago

I'm running Brave and Librewolf from flatpak. Nope, it doesn't help, at least with default sandbox settings.

[–] [email protected] 4 points 3 months ago (1 children)

I would not count on it, since it's required for proper theme integration. A quick search confirms my suspicion: some font direcories are mapped.

I quite like the idea though, sort of a lite qubes or unmodified VM for all Firefox Flatpak users could be nice.

[–] [email protected] 1 points 3 months ago (1 children)

In a perfect world, it would be nice to have a checkbox per app where I can select whether it should share anything with the system libraries.

[–] [email protected] 2 points 3 months ago

Not sure whether it can fix the font problem, but in general Flatseal allows you to customise permissions for installed flatpaks.

https://flathub.org/apps/com.github.tchx84.Flatseal

[–] [email protected] 7 points 3 months ago

Flatpak is not a container and should not be thought of as such for security/privacy purposes:

In general though we try to avoid using the term container when speaking about Flatpak as it tends to cause comparisons with Docker and rkt, comparisons which quickly stop making technical sense due to the very different problem spaces these technologies try to address. And thus we prefer using the term sandboxing.

https://flatpak.org/faq/#Is_Flatpak_a_container_technology_

It can provide container-like functions if specifically configured for that, but that's not normal and it shouldn't be relied on as a security barrier.

[–] [email protected] 48 points 3 months ago* (last edited 3 months ago) (3 children)

Disable javascript, trying to get around fingerprinting with javascript enabled is an exercise in futility, and is especially risky with something as heavily monitored as tor.

[–] [email protected] 6 points 3 months ago (2 children)

Disable javascript, trying to get around fingerprinting with javascript enabled is an exercise in futility, and is especially risky with something as heavily monitored as tor.

I like disabling JS myself for some web browsing but this can make fingerprinting easier because most people do enable JS, and I've read that with JS disabled certain things still can be detected through CSS files.

[–] [email protected] 2 points 3 months ago

I feel like on Tor specifically, disabled JS is far more common than on clearnet connections so not as big of an issue.

[–] [email protected] 5 points 3 months ago

easy, disable css too (text browsers do this) :)

[–] [email protected] 16 points 3 months ago (2 children)

Disable javascript

This is like those people who say that the only form of safe sex is abstinence. Technically true, practically useless.

[–] [email protected] 1 points 2 months ago

No script lets you individually allow js on certain sites, even specific sources. Block all by default, allow safe sites or temporarily allow other sites based on need. I started doing that this year and it hasn't been nearly as much trouble as I thought it would be.

[–] [email protected] 7 points 3 months ago

I'm slowly starting to agree with @ssm that safeguarding against fingerprinting is an exercise in futility though...QubesOS sounds like something that might help though, since it makes it easy to browse from a virtual machine with fonts and other settings that may be leaked set to the most bog-standard defaults.

On a related note, disabling javascript can actually improve your user experience quite a lot for certain types of tasks. A lot of news/blogs/article-style websites nowadays are actually more usable without javascript, because you don't have to waste time closing all of the ads and cookie popups. I have a separate browser profile with js disabled and use it quite a lot.

[–] [email protected] 8 points 3 months ago (3 children)

Tor has noscript automatically enabled no?

[–] [email protected] 3 points 3 months ago

Tor has noscript automatically enabled no?

There's three security settings via NoScript in Tor browser. The default has JS enabled.

[–] [email protected] 2 points 3 months ago

It does, but you have to manually configure it to turn off javascript entirely.

[–] [email protected] 15 points 3 months ago* (last edited 3 months ago) (1 children)

It should, but I guess this user disabled it. I visited the same site with javascript disabled and it can't fingerprint it (not in tor browser, I don't trust it (css has nasty fingerprinting capabilities, huge mozilla codebase), I use w3m with torsocks and my useragent set to tor browsers, also tested qutebrowser with js disabled).

[–] [email protected] 3 points 3 months ago (1 children)
[–] [email protected] 4 points 3 months ago* (last edited 3 months ago) (1 children)

stated in post, w3m, a text browser (unless it wasn't there when I last edited it, I'm a very sporadic editor)

[–] [email protected] 5 points 3 months ago* (last edited 3 months ago)

Never heard of w3m, will check it out

Edit: I thought I was paranoid for using tor as a daily browser lmao

[–] [email protected] 7 points 3 months ago (1 children)

There's something beautiful about the simplicity of Gemini in Kristal and LaGrange.

You set your font and colors offline and it's universal.

Hyper Text Web is great but I wonder if we will see a return to simplicity in high tech circles now that the Net is the new "Television Rules The Nation"