We’ve been anticipating it for years,1 and it’s finally happening. Google is finally killing uBlock Origin – with a note on their web store stating that the …
We’ve been anticipating it for years,1 and it’s finally happening. Google is finally killing uBlock Origin – with a note on their web store stating that the …
Okay that’s fine, but when websites are effectively writing
if user_agent_string != [chromium] break;
It doesn’t really matter how good compatibility is. I’ve had websites go from nothing but a “Firefox is not supported, please use Chrome” splash screen to working just fine with Firefox by simply spoofing the user agent to Chrome. Maybe some feature was broken, but I was able to do what I needed. More often than not they just aren’t testing it and don’t want to support other browsers.
The more insidious side of this is that websites will require and attempt to enforce Chrome as adblocking gets increasingly impossible on them, because it aligns with their interests. It’s so important for the future of the web that we resist this change, but I think it’s too late.
The world wide web is quickly turning into the dark alley of the internet that nobody is willing to walk down.
As a developer, I can foresee websites using features other than
navigator.userAgent
to detect Chrome, because it’s easy to change its value. For example: for now,navigator.getBattery
is available only in Chromium, and it doesn’t need permissions to be checked for its existence throughtypeof navigator.getBattery === 'function'
(also, the function seems to be perfectly callable without user intervention, enabling additional means of fingerprinting). While it’s easy to spoof userAgent, it’s not as easy to “mock” unsupported APIs such asnavigator.getBattery
through Firefox.