Opened 19 months ago

Last modified 3 weeks ago

#28290 new defect

Don't allow fingerprinting via navigator.userAgent

Reported by: indigotime Owned by: tbb-team
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-fingerprinting-os, user-feedback, blog
Cc: Torontoman, HenkAnon, sj2001010, bigsteve1337, op_mb, dapphp, unarmed Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Reporting real operating system in navigator.userAgent is a bug because of the following:

  1. Since you introduced this anti-privacy feature (by "anti-privacy feature" I mean reporting real OS in navigator.userAgent property), you must provide a way to disable it. Otherwise it looks like an intentional action against all Tor Browser users who want to keep their privacy protected. Users may want to stop reporting real OS. Users didn't gave you a permission to decide it for them.

There are many websites which rely on navigator.userAgent and don't use any other fingerprinting methods. Currently Tor Browser users can't stop them from reading real OS version from navigator.userAgent. It's a bug, and it's must be fixed.

  1. According to specifications, navigator.userAgent must be equal to HTTP User-Agent header.

https://html.spec.whatwg.org/multipage/system-state.html#dom-navigator-useragent
https://fetch.spec.whatwg.org/#default-user-agent-value
Any difference between HTTP User-Agent and navigator.userAgent is spec violation.

Child Tickets

Change History (18)

comment:1 Changed 19 months ago by indigotime

Component: - Select a componentApplications/Tor Browser
Owner: set to tbb-team

comment:2 Changed 19 months ago by gk

Keywords: tbb-fingerprinting-os added
Priority: Very HighMedium

I am fine logging this as a bug in our system to remind us of the fact that this is an OS fingerprinting vector we actually like to get solved (together with the other OS fingerprinting ones).

comment:3 Changed 19 months ago by cypherpunks

Keywords: it's-not-only-os-but-bitness added; tbb-fingerprinting-os removed

comment:4 Changed 19 months ago by gk

Keywords: tbb-fingerprinting-os added; it's-not-only-os-but-bitness removed

Please, don't change our keywords, thanks!

comment:5 Changed 19 months ago by cypherpunks

Summary: Stop lying that "reporting real OS in navigator.userAgent is not a bug"Don't allow fingerprinting via navigator.userAgent

comment:6 Changed 17 months ago by boklm

Cc: Torontoman added

#29106 is a duplicate.

comment:7 Changed 17 months ago by Thorin

FWIW:

https://bugzilla.mozilla.org/show_bug.cgi?id=1509829 in FF66+ upstreamed #26146 (this reduces HTTP header OSes to two, but leaves JS navigator to four OSes)

https://bugzilla.mozilla.org/show_bug.cgi?id=1519122 (In RFP Mode, spoof the modifier state "Meta" in OSX into a "Ctrl" state in keyboard events) when landed will then allow MacOS to properly use the cmd key on sites such as Google Docs etc - and then the JS navigator can be reverted to two OSes (assuming all the web site breakage was from this).

1519122 will probably not happen before ESR68, but will hopefully be backported when done, and then both Tor Browser and Firefox with RFP can get in sync (also note that the platform will change to Windows 10 see https://bugzilla.mozilla.org/show_bug.cgi?id=1511434) and headers vs navigator will also be in sync

tl;dr: it's being handled upstream at Mozilla

comment:8 Changed 16 months ago by boklm

Cc: HenkAnon added

#29441 is a duplicate.

comment:9 Changed 16 months ago by boklm

Cc: sj2001010 added

#29518 is a duplicate.

comment:10 Changed 13 months ago by gk

#30622 is a duplicate.

comment:11 Changed 12 months ago by wayward

Keywords: user-feedback blog added

comment:13 Changed 9 months ago by boklm

Cc: bigsteve1337 added

#31587 is a duplicate.

comment:14 Changed 8 months ago by boklm

Cc: op_mb added

#31667 is a duplicate.

comment:15 Changed 7 months ago by dapphp

Add me to CC please. If there is a way to add myself, I am not seeing it.

comment:16 in reply to:  15 Changed 7 months ago by boklm

Cc: dapphp added

Replying to dapphp:

Add me to CC please. If there is a way to add myself, I am not seeing it.

Yes, you can click on Modify Ticket, then add yourself to the Cc field.

comment:17 Changed 5 months ago by gk

#32843 is a duplicate.

comment:18 Changed 3 weeks ago by gk

Cc: unarmed added

#34003 is a duplicate.

Note: See TracTickets for help on using tickets.