What is vulnerable in this browser setup to avoid fingerprinting/tracking for general browsing that is still easy to use?
The setup is as follows:
Firefox on my personal machine with several profiles (3-5 profiles)--each profile is dedicated to certain aspects of my browsing (i.e. one for social media only, another for banking, another for purely "anonymous" browsing where I don't specify any of my personal info or login to accounts tied to my real identity, etc.
For each of these profiles, I have the following addons: uMatrix with a default-deny policy--I allow images and CSS by default for all sites and everything else is disabled unless I enable certain things like JavaScript or cookies for a specific site. uMatrix also deletes cookies and cache periodically throughout the session to prevent e-tagging or cookie tracking and can spoof header referers as well as disable web fonts. Canvas Defender addon and Random Agent Spoofer addon to give each profile a canvas fingerprint and a user-agent string that does not change for the duration of a session (for the user-agent string, it will be rarely changed, just like your average user that doesn't try to spoof his user-agent). HTTPS-Everywhere addon.
As for cookies, they are deleted after every session. If I have profiles that are only dedicated to a single website that requires login (and therefore requires cookies), then that cookie might not even need to be deleted because I don't see how it would provide any more information than what you providing to the company of the service you're using (i.e. what's the point of deleting Facebook cookie for a profile if that's the only site you're using on that profile? There's nothing for the cookie to track).
All browser plugins such as Java and Flash are not installed because you don't really need them nowadays; however, JavaScript can be enabled on a site-by-site basis if needed (disabled through default-deny policy by uMatrix by default).
For evercookies, they apparently can be deleted just by enabling the option to delete cookies at end of session from Firefox (I've tested this)--they are only seem to be persistent if you use plugins. As for HSTS fingerprinting, Firefox's implementation currently forces you to choose between privacy and security. I choose security and therefore enabled HSTS so sites can be tracked in a given session. I empty the contents of SiteSecurityServiceState.txt when I initiate system shutdown so at least you get a new fingerprint.
a user.js file that disables WebRTC, OpenGL, and geolocation.
Finally, for each profile, they will be tunneled through a separate exit node (proxy/VPN) that may or may not be changed frequently.
How effective is this browser setup? There are several things I'm concerned with:
Perhaps making so much customizations to he browser, even if their goal is to create a different identity, actually makes you stand out among the crowd if types of fingerprinting are cross-analyzed for consistency (what kinds of information can be tied together?). As a specific example, spoofing user-agent string means JavaScript variables need to be spoofed to match that user-agent. Unfortunately, there doesn't seem to be able to spoof all JavaScript variables, only some. For companies that check for this and find inconsistencies between your user-agent and JavaScript variables, they know you spoofed and therefore you are unique and most likely in a worse position than if you haven't spoofed at all. The question is: how many sites actually bother checking this? Internet privacy is all about net gains--if there are many sites including popular ones that do not check for this, then it might still be worth spoofing.
This setup does not use virtual machines--perhaps there are kinds of fingerprintable information regarding the machine itself I did not take into account for and it might not match all the information that I attempted to spoof for each profile. For example, how would using virtual machines be an advantage over the setup I've described?
Please remember that this is for general browsing, which means that the goal is to make it usable but still maximize privacy. I realize that much of the issues involve JavaScript, but disabling it for general browsing is not really realistic nowadays when so many sites depend on it for functionality. For any sensitive browsing, of course it it is recommended to use Tor.
EDIT: "General browsing" means what an average person's browsing activities would be like. That means not anything illegal and threats are ad companies and companies like Google, Facebook, Microsoft, Amazon, etc. "Usability" means these services are still used, JavaScript is required for certain sites, browsing experience is not significantly hindered (i.e. Tor would not be suitable).
usable but still maximize privacy
doesn't really explain your requirements