4 ms·
I wish browser extensions had more fine-grained permissions but it's a tricky problem verifying if software is using permissions maliciously (see the Obfuscated
by seanwilson 3y ago
I wish browser extensions had more fine-grained permissions but it's a tricky problem verifying if software is using permissions maliciously (see the Obfuscated C Code Contest and the Underhand C Contest) and how to communicate nuanced permissions to users (most users don't read and/or understand tech stuff, and can be easily mislead).
A tip in Chrome that I never see mentioned if you want to be extra safe when trying extensions:
- Go to Profiles > Add profile > Continue without account
- Install any extensions you feel like in this profile and they're completely isolated from the tabs logins, history, cookies and so on in your regular profile. Similarly, you can run Chrome Beta or Chrome Canary for installing extensions into, alongside regular Chrome.
E.g. you can install 10s of potentially risky web development extensions into this profile (they usually need a lot of access to do what they need to do), and keep them sandboxed away from the profile where you do your personal banking or login to work websites.
It's not practical for every extension, but I do this for my web development stuff and only use a couple of extensions for personal stuff.
I sell a browser extension where the permission I really want to ask for is "can only observe the network traffic it sends/receives in its own tabs" but I'm lumped with having to ask for the "read and write all your data" permission, but I make sure to share the above tip in the description (shameless plug: https://chromewebstore.google.com/detail/checkbot-seo-web-speed-se/dagohlmlhagincbfilmkadjgmdnkjinl https://chromewebstore.google.com/detail/checkbot-seo-web-sp...).
- imhoguy 3y agoFirefox user here, I wish Multi-Account Containers had a way to disable extensions per container. I don't need any on my banking site. Sure I could use separate Profile but UX hurts here.
- SushiHippie 3y agoYep firefox profile UX is sadly not good. But I just bind different firefox profiles to different keybinds in my WM
- thisislife2 3y agoYeah, as you figured out, a separate profile is currently the only workaround. In case you aren't aware, there is an easy way to quickly launch it though in Firefox or Pale Moon - go to about:profiles and you can easily create / launch any profiles quickly in a new window.
- Terr_ 3y agoIt may be a little paranoid, but I use a separate local user account for those kinds of things. Perhaps not convenient, but it certainly helps keep me on task when I'm in official-paperwork mode. :p
- fsflover 3y agoI solved this problem by using Qubes OS. Different Firefox instances for different tasks run in dedicated VMs, with independent configs and extensions. It allowed to better organize my digital live and provided more security at the same time.
- sidwyn 3y agoThe "read and change all your data" permission is a huge hurdle for our shopping extension, especially since we only need to identify shopping pages. What I've tried to build trust is to open source our tracking analytics (e.g. https://github.com/Score-Extension/score-extension-analytics/blob/main/Analytics.md https://github.com/Score-Extension/score-extension-analytics...). Hopefully transparency is one way to overcome this trust barrier.
- dolmen 3y agoWe have the same issue. We have a browser extension that wants to extract data from given web pages (retailers, like yours), but there is no API to declare "I want to look at the content of this page only if the URL matches this pattern" or "Let me have a look at the URL and I will tell you if I want to look at the page content". It's unfortunately "all the web" or nothing.
- account42 3y ago> What I've tried to build trust is to open source our tracking analytics That's like being upfront about what kind of getaway car you are going to use for the robbery.
- Springtime 3y ago> I sell a browser extension where the permission I really want to ask for is "can only observe the network traffic it sends/receives in its own tabs" but I'm lumped with having to ask for the "read and write all your data" permission Yeah it would be nice there were a way to limit the entire scope of an addon's permissions to a whitelist of domains. Chromium has a way of whitelisting domains an addon can run on[1] but I've assumed it doesn't affects the broader permissions you mention (general history, etc). [1] Click 'Details' of the addon and switch the 'Allow this extension to read and change all your data on websites you visit' option to 'On specific sites' then add the sites to the whitelist.
- seanwilson 3y ago> Yeah it would be nice there were a way to limit the entire scope of an addon's permissions to a whitelist of domains. You can do this for the network read/write permissions, where the permission request dialog on install will tell you the URL patterns the extension wants access to. I can't do this for my specific extension though. My extension checks web pages for problems like broken links, so it needs to be able to fetch any web page URL you give it and then it has to fetch any URLs that are linked to on the page, so I have to ask for access to http://\\\ http://\\\* and https://\\\ https://\\\* (I could maybe get away with just the `activeTab` permission to check the domain of the current tab if the checks were more limited though). The extension is only doing operations like this within its own tab, when you have the extension open, and for it's own network requests, so it's frustrating there isn't a more granular permission I can ask for as I've isolated it as much as I could. It's a tricky problem though. Browser makers will have certain kinds of extensions in mind, and optimise to make the permission system and permission request messages friendly for those kinds of extensions. Less standard extensions usually have to settle for broader permissions with less friendly permission descriptions, until hopefully the permission system gets iterated on based on how it's being used in the wild (Manifest V3 in Chrome for example).
- justsomehnguy 3y agoOn Windows you can use apps packaged by portableapps.com. Needs AllowMultipleInstances=true in the .ini.