3 ms·
"This also applies to other things, like browser-fingerprinting, or how Google will now try to identify people using machine learning without actually using coo
by x3blah 6y ago
"This also applies to other things, like browser-fingerprinting, or how Google will now try to identify people using machine learning without actually using cookies."
Even if only a User-Agent string is sent from a "browser" that has no Javascript engine and does no CSS processing or auto-loading of any resources, the online ad services folks, not to mention the "web security" folks, will still try to create a "fingerprint".
There are companies whose entire business is dependent on a demand for lists/databases of user agent strings. For example,
https://deviceatlas.com/ https://deviceatlas.com/
https://51degrees.com/ https://51degrees.com/
https://www.scientiamobile.com/ https://www.scientiamobile.com/
Fingerprinting based on user agent seems like a rather easy problem to solve. Aside from not sending the header or every user sending the same one, one idea is to keep changing the string.
The following is from a file called "mosaic-spoof-agents" and dates back to at least 1996.
#
# Agent Spoofing -- Who will you be today?
#
# "I don't think [t]he[y]'ll be too keen" -- Originally from Monty Python, run
# into the ground by Tommy Reilly
#
# NOTE! There is a hard limit of 50 agents! Mosaic will not read anymore!
#
# This file should be located in your HOME directory under the filename:
# .mosaic-spoof-agents
#
# This file consists of lines that begin with a # (comment), a - (a seperator
# for the sub-menu off options), a + (this is special...it denotes that the
# agent following it [no spaces] should be the default agent to use) and
# anything else (considered an agent spoof line).
#
- This is a seperator...as long as the first thing is a dash
# This is a comment line
#
# This is the "example" agent. If you don't like it...comment it out.
# if you want it to be your default, put a + infront of it.
#
Bond_James_Bond/007 (BMW; Z3 Roadster) DOHC_inline_16-valve_4-cylinder
Gandalf/White (Shadowfax; Wind) White_Staff
Elric/Emperor_of_Melnibone (Hellsword; StormBringer - Devourer of Souls)
https://github.blog/2010-03-08-ncsa-mosaic-on-github/ https://github.blog/2010-03-08-ncsa-mosaic-on-github/
https://github.com/alandipert/ncsa-mosaic https://github.com/alandipert/ncsa-mosaic
One could argue that the original "netiquette" was to change one's user agent string. At least we can see it was contempleted by authors of Mosaic.
https://en.wikipedia.org/wiki/Mosaic_(web_browser) https://en.wikipedia.org/wiki/Mosaic_(web_browser)
Today tech companies will argue that any user agent string is an abberration from what they expect then "something is wrong". Users might get blocked or they might be alerted their "browser is not supported" and/or be advised to "upgrade". They might receive a "security" warning that someone logged in to their account. All based on simply changing the user agent string. The assumption today is that no netizen would ever do that.
Today, browsers allow changing the user agent string using some "toolbar" or "console" but if the name given to it is any indication, this is only meant for "developers", not "dumb [users]", to borrow from the infamous Zuckerberg quote.
One of the authors of Mosaic is now a Silicon Valley VC who posts on HN.
The "Who do you want to be today?" is probably a play on the Windows 95 slogan "Where do you want to go today?" A web browser was a new thing in Windows back then, the web being an idea Gates was not easily sold on, and I always thought the slogan seemed to suggest someone thought web access would be a selling point to users.