(new Soapbox())->shout(array_map('strtoupper', $opinions)); //Shaun's blog

Me, elsewhere

Miscellaneous public code

I don't tweet much

XMPP chat
(Pidgin, Miranda, Swift, etc.)

Firefox's privacy.resistFingerprinting option reports a very old User-Agent (50.0)

Posted December 20, 2017 by shaun

If your copy of Firefox has been behaving oddly but you can't figure out why, you might want to check the value of your privacy.resistFingerprinting preference.

Starting around Firefox 41, a setting called privacy.resistFingerprinting was introduced. This option didn't get much fanfare until the release of Firefox 55, when Mozilla announced a litany of features they'd be retrofitting into mainline Firefox from the Tor browser bundle. I decided to enable privacy.resistFingerprinting in Firefox 56, hoping this preference might obviate the need for one or more of the privacy extensions I use.

After a few days I forgot all about toggling that option. Meanwhile, Firefox had begun acting strangely:

  • Some sites using Flash were telling me I didn't have Flash installed, despite being in my Flashblock whitelist.

  • Some sites had miscellaneous elements that stopped functioning properly.

  • When I started or restarted Firefox, it came up windowed instead of maximized, even after verifying that xulstore.json had the main window set for "sizemode":"maximized".

  • I went to install a Firefox add-on directly from AMO and got the error message: "This add-on requires a newer version of Firefox (at least version 56.0a1). You are using Firefox 50.0."

At this last point I knew something was seriously amiss, but I still hadn't put it all together. Some searching turned up this Reddit thread with the answer. Disabling privacy.resistFingerprinting not only fixed the User-Agent string but also resolved the other weird symptoms I was seeing. It turns out this setting touches a lot of code, and changes or interferes with things I didn't expect it to.

Unfortunately, you can't enable both privacy.resistFingerprinting and general.useragent.override at the same time. Firefox explicitly disregards a custom User-Agent setting when the resistFingerprinting toggle is true. Forcefully regressing the User-Agent from 56.0 all the way back to 50.0 doesn't work for me, so I had to disable the new option.

Mozilla, Firefox and the Firefox logo are trademarks of the Mozilla Foundation in the U.S. and other countries.

Recent articles

📰 Generating vanity DNSSEC key tags

📰 DDoS involving forged packets from

📰 Website integrity monitoring through version control

📰 SpamAssassin 3.4.2 fixes security problems, adds HashBL and phishing plugins

📰 Bug or turf war? ICQ via Pidgin now fails with "startOSCARSession: Request Timeout"

📰 🎂

📰 SFSQuery, a PHP class to query the StopForumSpam API and DNSBL

📰 Resolving portmaster error "pkg-static: automake-1.16.1 conflicts with automake-wrapper-20131203"

📰 Resolving LibreNMS error "RuntimeException: The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths"

📰 Fast, but not so accurate (yet)

📰 autodiscover.xml as an Indicator of Attack

📰 Blocking Facebook's Tracking and Surveillance: A Comprehensive Approach

📰 Let's Encrypt Readies for Certificate Transparency with Embedded SCTs

📰 Evaluating DNSBL Effectiveness with Postfix Logs

📰 Resolving subversion error E145001: Node has unexpectedly changed kind

▲ Back to top | Permalink to this page