Hi all,
I have been working on creating a simple installation solution to configure Firefox with the essential extensions and configs for privacy. I found ghacks-usersjs to contain the best info about privacy related Addons and configs (obviously). I have been following the project for more than six months (bit of a fan).
As we all know learning about the stuff takes time and requires some technical background. An average internet user on the other hand may not have even heard of Firefox. There would be many non tech-savvy people who would benefit from/love the privacy protecting tools/configs if there was a simple way to set them up.
I found no such setup that is thought trough. This is what I am trying to achieve.
https://github.com/jotyGill/privacy-fighter/
Privacy-Fighter is a one click setup to install and configure privacy protecting extensions and Firefox configurations, so our non tech-savvy family and friends and benefit from them.
I would like to get your feedback on it.
Thanks,
I am considering removing CookieAutodelete from it, As I am using Temporary Containers in Automatic mode. The only reason I kept it is the following case.
when you have a new tab you are in a new container. when you open tabs from that container you have multiple tabs running in one container. until all of the tabs that are part of a container are not closed, cookies of all of those domains remain. that is unless CookiesAutodelete deletes it.
Hi
when you open tabs from that container you have multiple tabs running in one container.
you can change that under Isolation > Global so that clicking links to other domains or even subdomains will open in a new container.
Yes, that's true but that would break authentication. I am trying to keep things simple that don't break :)
The only thing that is a bit tricky is that I actually decided to use
"Middle mouse click opens links in new isolated containers (excluding links of the current tab's domain)". if someone misses it would only break authentication on sites that work with multi domain environments only if they use middle click. (I am open to changing this setup)
I haven't looked yet, but this is the bit that "gets" to me
a one click setup to install and configure privacy protecting extensions and Firefox configurations
No one size fits all (yes, you say "configure" as well)
Everyone's threat model is different, everyone's expectations are different, everyone's tolerance for "breakage" differs, and so on (just imagine a dozen more "general" parameters - let alone 40 or so important prefs and loads of extension settings etc). Going down this route is, IMO, a rabbit hole with a million mad hatters at the bottom drinking copious amounts of cocaine-laced tea. It's too complex.
Not that I assume you are the same: but I look at Waterfox: and except the XUL bit, all the other things it harps on about you can achieve in Firefox with prefs (there may be an edge case: not interested in dealing with it). I look at Librefox (now LibreWolf or something) and what a fucking mess: irresponsible choices, and so on: I'm disgusted they used our work this way. They did zero research and just combined multiple sources and flipped everything possible.
I do not think that these sorts of projects are the answer: i.e the one-click setup for non-tech-savvy users: the answer is to build it into Firefox itself: which is what they are doing: for example
There are limits: for example: blocking ads is an ethical choice: not something that should be forced on users: plus they have to be super careful not to have any breakage / false-positives
Super Private Browsing Mode coming (the name may change). <snip> and that is all I will say on that!ONE CLICK is too complicatedYes it is indeed a dilemma, to decide the breakage limit vs privacy. But we must find some sweetspot that works good enough, if we are to make a setup available to non tech savvy people. I have kept things on the relaxed side.
I have tried to avoid precisely what Librefox did, that is trying to reinvent wheels and complicate things. I am not trying to solve any problem other than packaging everything. For the config I use ghacks user.js. I have gone through all configs and relaxed it using my user-overrides.js removing configs that are non critical and configs that can break webpages. I have been following the changes in this user.js >25 of configs that I had originally relaxed are now also relaxed in ghacks-user.js (https://github.com/jotyGill/privacy-fighter/commit/258ca11957efac863c61301d1abeb76bac47ae38).
You are right, it is probably best when Firefox makes a single/few clear configs (buttons) that do everything.
My limited experience from working with non tech savvy users is that, many people would not have the motivation to learn about all the current settings but if I give them a setup that works, they would gladly use it.
If you look at a project like Librefox, despite the complete lack of any objective value it adds and bad decisions, it got popular very quick (1.2k github stars). Why? Because there are people who would want a simple setup.
If you ask me I can鈥檛 convince a few of my friends to look into firefox configs but they would try an installation setup.
I understand my knowledge in this area is limited. This is why I am very patient with the project. I started looking into this many months ago. I looked for info from many places but ended up using mostly this projects recommendations. here's my user-overrides.js
The setup also installs uBlock Origin, Cookie AutoDelete, Canvas Blocker, Temporary containers, decentraleyes, clear_urls, HTTPS Everywhere, Terms of Service; Didn't Read.
it got popular very quick (1.2k github stars)
partly because someone (numerous handles) spammed it on multiple reddit forums numerous times: initially everyone ignored it, so he/she did it again a few days later, and then again days after that .. and then Martin gave it a fucking article. It was the linux forums that blew it up: other forums weren't interested. And hackernews also had a hotly debated thread about it - plus after Martin's article: about 5 or 6 other sites also wrote about it. Fucking pisses me off. Takes us 2 years to get 1.3K watchers and that PoS piggybacks on it to get the same in a week.
Put it this way: several months ago, this repo got a post at hackernews. First time ever. As simple as someone saying, "hey check this out, it's got some good stuff" - that was it. It got all of 12 comments, but it was added to the hackernews twitter (or something like that) .. and we got an extra 250+ watchers in about 2 days.
I have never ever done anything to promote this (besides some changelog articles at ghacks way back): it's been sites like restore privacy, atomgit's articles etc that drive users here: occasional mentions on 4chan, or reddit. Maybe I'll get Trump to do me a tweet to his 50 million human followers and his 50 million bot followers :grin:
I didn't use ghacks' user.js for a long time because I knew it was going to take a lot of time in reading and research to implement properly. Given that, maybe something simple will make it so others don't have the same issue. In principle, I agree with pants and it's probably the direction I would take as well.
I don't believe that is necessary. I keep the following from user.js. which should cover that.
user_pref("privacy.sanitize.sanitizeOnShutdown", true);
user_pref("privacy.clearOnShutdown.cache", true);
user_pref("privacy.clearOnShutdown.cookies", true);
user_pref("privacy.clearOnShutdown.downloads", true); // see note above
user_pref("privacy.clearOnShutdown.formdata", true)
user_pref("privacy.clearOnShutdown.offlineApps", true);
user_pref("privacy.clearOnShutdown.sessions", true);
ho you are replying to my deleted message where i was saying that autodelete cookies is still needed to clean permanents containers of unwanted datas.
with your settings it clean everything so there is no point at all to use permanent containers i guess.
I think this is an interesting idea as the typical use case seems to contain the requirement for a simple installation without much effort. Tor browser does this but it seems to be a different use case. If it could be deployed as a complete package without being a fork (delay in development), it could suffice.
Mozilla needs to compete, there's a market. They are taking measures but it's simply not quite there yet (or this repo would be dead), this could even increase traction. Something like this could be a truly privacy focused alternative.
That鈥檚 the idea. This is not a fork of any sort. In order to keep things upto date. I don鈥檛 bundle any configurations within the tool at all. When you run it, it downloads the latest copy of ghacks-user.js and also a copy of my user-overrides.js. My relaxed overrides are not forcefully imposed on top of ghacks-userjs but instead they are commented out from ghacks-userjs same way ghack鈥檚 updater script does it. eg
//// --- comment-out --- 'security.OCSP.require'
It also downloads the list of addons to install and their configurations. The idea is even if you run the tool after a year you would have everything upto date.
There鈥檚 a exe for windows/executable for GNU/Linux distros, or pip install for any OS.
As I understand, the problem of browser fingerprinting can only be solved by minimising entropy AND having a large set of people using exact configuration set. Tor does exactly this.
This setup could also handle (as much it can be, given the situation with fonts, etc) the problem of browser fingerprinting better than anything else (except Tor of course). Entropy is reduced by following this repo鈥檚 settings, RFP, disabling webgl, web audio api, etc. The setup also has consistent set of addons and their configurations.
When many people start using this and cover the variations in unavoidable entropy leaks, we could potentially defeat fingerprinting. As I understand the OS kind (windows/linux), fonts, screen resolution (Letterboxing helps there a bit) are easily finger printable. But when we have hundreds of users using this consistent setup we would cover the common OS setups. For example there would be many users with windwos10/1080p/some variations in fonts.
<snip>and that is all I will say on that!
Well fuck. Might as well just read about it then
There's a lot of info missing here (that I'm privy to)... but enjoy the news tidbits from the public arena
i can understand pant's POV, however i somewhat disagree - there's all kinds of hammers for all kinds of different jobs and buying one to fit the job you need done is far easier than making one, assuming you know how, have the time, etc.
i can see an obvious market for this as jotyGill describes where those without the tech knowhow will simply use whatever they have in its largely default configuration absent a prepackaged setup such as this - is some protection not better than none?
the timing is interesting - i just found IllusionFox today which claims to offer a similar package apparently, however they have a shitty privacy policy and are charging people $99 / month, and that doesn't include their ($351 / mo.) proxy service - wtf rock these idiots crawled out from under, i can't say
lastly, you might have a peek at The Firefox Privacy Guide For Dummies! in the event there may be something there helpful to you - i avoid containers and use SiteBleacher which dumps some storage, including IDB, automatically per domain which gets around the WebExtension API shortcoming
@atomGit
slightly offtopic..
This "market" you and jotyGill talk about has lots of people who want ads on the internet because it makes them aware of products/services they were not aware they "needed"...
My half brother is one of them. He also clicks next>next>next>etc every time he installs something, and then complains his laptop is slow. When I try to teach him how to use windows settings and freeware apps to "maintain" his computer, he says: If it's not something that does it for me in the background, I'M NOT INTERESTED!!!
My sister falls in this category as well. She claims photography is a passion of hers, yet vehemently refuses to learn anything about camera settings/sensors/profiles/etc. As far as she is concerned, there's only one "setting" on the camera: the 'Auto' on the mode dial. And then she complains that her expensive camera only takes good pictures outside and when it's sunny...
The internet privacy/security landscape is always evolving and there's no 'one glove fits all' permanent solution for it. Those people that cannot (or are unwilling to) learn how to apply this well maintained template to their needs should not use it or any other "universal" all-in-one solution.
When a person like that encounters site breakage, complains about it to the 'one glove fits all' project manager demanding fixes for him(her). Or worse, forgets about the custom privacy project/package he(she) uses and switches to Chrome, thinking it's better than Firefox because everything works...
How many people from that "market" you suppose use desktop/laptop as their main internet browse platform?!? Most will use "smart"phones as their main internet go-to device.
Those people that cannot (or are unwilling to) learn
This is it in a nutshell. Things should just work. Which is why a default Firefox profile is not as tight as it could be. It's why "one-click" solutions are not full solutions
Examples
^^ in time they will ramp it up as much as they can: slowly, incrementally, with feedback, and education. They have to take baby steps, because as soon as something breaks, the user will say Firefox is broken, and not use it.
And part of this is education, and learning where the limits are: such as educating users that a tor based Super Private Browsing Mode = some sites block tor exit nodes, reCaptcha is hell, latency is higher, some sites may "breaK" a little: and then as long as the user is aware of this, and within the same browser and session (which is key), they can use a PB mode or normal window.
This is how you get uptake: which is important: growing 6 million (at any one time) Tor users to 60 million does far more for reducing or protecting a lot of entropy "buckets" than anything else: it would make hiding your language almost immaterial. Wait til it gets to 600 million.
Of course, first things first: does Tor scale: before that, it needs new and better (more precise) metrics, and tweaks to the whole thing (example: turning the slowest nodes into obs4: so the overall latency is decreased), and about 2 dozen other ideas which I won't talk about). Then the tests can begin: such as a Firefox experiment to throw in half a million users (not at once). And the new metrics can see what works, and what needs working at the protocol, guards, nodes etc level. And the experiment itself at a client level can gauge metrics Tor can't: such as actual real latency: from first paint to ready. And the experiment can get user feedback on what they liked, didn't like (e.g finding out how much tolerance they have for latency), and even finding new problems (such as being able to change your tor guard: the guard doesn't change (not sure: maybe every three months?): but not all guards are equal in terms of speed: you get one assigned on first run: it's a coin toss, you could get a shitty slow one or a fucking fast one: so the user experience will differ and this would probably be unacceptable to Mozilla for a final solution.
There is a two-click solution: 1: install Firefox 2: install Tor Browser
There is no one-click solution (yet): it does not exist. IMO, it can only be achieved (for the masses) alongside a fully working non-breaking state which allows users to choose what sites to open where
Even jotyGill's setup has lots of combinations: and probably a steep learning curve for most people (e.g new extensions, understanding how shit works: what is first party, what does inline mean, how do I see ads on amazon i love that shit on there, why does my porn site think I'm a robot). I don't really see jotyGill's setup as any easier that this one (except maybe they don't have to deal with as much breakage from prefs: although TBH, there's fuck all IMO)
fuuuuck .. I wrote a book, again ... damnit
When a person like that encounters site breakage, complains about it to the 'one glove fits all' project manager demanding fixes for him(her). Or worse, forgets about the custom privacy project/package he(she) uses and switches to Chrome, thinking it's better than Firefox because everything works...
I have relaxed many prefs to minimize breakage (user-overrides.js) and I am always willing to make changes to be more effective. But yes I agree some breakage would still happen. I thought about this exact issue so I ended up setting up an 'alternative' profile, which is vanilla FF profile, except that it cleans local storage on exit (cookies, caches). Users are instructed to use it if breakage happens on any website.
Even jotyGill's setup has lots of combinations: and probably a steep learning curve for most people
People who wish to learn about it indeed can get into the details. To just use it however it is quite straight forward. 1. Follow the installation instructions. (which include setting up the 'alternative' profile as well). 2. Use the current profile for everyday browsing, if something breaks 3. open it in 'alternative' profile. That's it.
I believe that the problem of why most people are not using any effective privacy protections is a two face problem. It's the learning curve And the motivation. For us tech savvy users, the learning curve is not as steep And we have a lot of motivation as we understand the technologies and their privacy implications much better. We have to bridge both barriers. Whenever I have explained about online tracking to anyone and introduced them to a tracking/ads blocker (uBlockOrigin). They are usually very excited and keep using such tools.
Most people don't know about the extent of online tracking and privacy implications of the online services they use.
How do we get our friends and families to care/inform about these issues?
This is the other part I am working on. Developing evidence based arguments on what the state of online privacy is and what the implications of loosing privacy are. This will eventually be a comprehensive document. https://github.com/jotyGill/privacy
please feel free to send suggestions :)
PS. It's ok if we have different ideas about the effectiveness of certain approaches, we are working towards the same goals :)
How do we get our friends and families to care/inform about these issues?
i always think that sharing such methods with neophytes is like shooting yourself in the foot, once too much people will defeat tracking companies will use better and unblockable methods, see what happened with adblockers, people shared it and now we need to use anti-anti-adblockers (when it works)
edit, plus the settings breaks many websites, not sure how neophytes are going to deal with that
once too much people will defeat tracking companies will use better and unblockable methods...
The alternative of people not knowing about the privacy issues is worse.
".... Then they came for me鈥攁nd there was no one left to speak for me." Martin Niem枚ller
Look at the situation we are already in with Google reCAPTCHA for example. Because not enough people use tracking protections and speak up for Google to care. Google gets away with it's abuse of powerful position to deter users from using privacy protections discussion.
edit, plus the settings breaks many websites, not sure how neophytes are going to deal with that
Could you please tell me (in the repo or here) about what broke for you? It's been working ok for me for quite some time.
If we're not done here: that is, you want me to do something, then feel free to re-open
Most helpful comment
partly because someone (numerous handles) spammed it on multiple reddit forums numerous times: initially everyone ignored it, so he/she did it again a few days later, and then again days after that .. and then Martin gave it a fucking article. It was the linux forums that blew it up: other forums weren't interested. And hackernews also had a hotly debated thread about it - plus after Martin's article: about 5 or 6 other sites also wrote about it. Fucking pisses me off. Takes us 2 years to get 1.3K watchers and that PoS piggybacks on it to get the same in a week.
Put it this way: several months ago, this repo got a post at hackernews. First time ever. As simple as someone saying, "hey check this out, it's got some good stuff" - that was it. It got all of 12 comments, but it was added to the hackernews twitter (or something like that) .. and we got an extra 250+ watchers in about 2 days.
I have never ever done anything to promote this (besides some changelog articles at ghacks way back): it's been sites like restore privacy, atomgit's articles etc that drive users here: occasional mentions on 4chan, or reddit. Maybe I'll get Trump to do me a tweet to his 50 million human followers and his 50 million bot followers :grin: