News for hackers. Stuff that matters.
Re:All Tridactyl installations might get removed by Firefox ... by mcpherrinm on Friday August 16, 2019 @03:18PM (#20718695)
Oof, looks like Tridactyls "fixamo" disabled the URL checking for addon installation in firefox, by writing into the user.js prefs:

    user_pref("extensions.webextensions.restrictedDomains", "");
I can see why they'd get yanked over that. I would definitely not expect installing a random addon that makes my browser have vim controls to change a relatively sensitive setting like that.

The developers are now whining about being asked to revert that change, on the grounds that touching the file is a breach of trust (which, they've already done)

Re:All Tridactyl installations might get removed by Firefox ... by Ambroisie on Friday August 16, 2019 @03:27PM (#20718785)
The thing is, users that ran this command know what it did. Maybe not in all its detail (I certainly didn't know exactly what it did, although I could have looked for it). That's because for this command to be of any use to the user, they first have to enable the "native client" to enable reading Tridactyl's RC file, which is explicitly stated to weaken the security model Mozilla tries to enforce on extensions.

This isn't a "random plug-in" playing with your security settings. It's a well designed extension which tries its hardest to allow power users to do what they want : control their browser the way they best see fit, without restrictions. If you want to stay safe, just don't enable those settings : they're not necessary to get a good out-of-the-box experience, but they allow some very powerful fine-tuning to turn your browser into your browser, with your commands.

Re:All Tridactyl installations might get removed by Firefox ... by shawnz on Friday August 16, 2019 @04:08PM (#20719203)
It's explicitly stated that it will weaken the security model, but it's not explicitly stated that it will modify user.js. Now the author is claiming that reversing the change would be improper because it involves modifying user.js without explicitly saying so, but that's literally exactly what they did already.

They are not claiming that the problem is being forced to strengthen the security model without explicitly asking. They are claiming that the problem is specifically being forced to modify user.js without explicitly asking.

Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @05:04PM (#20719690)
> it involves modifying user.js without explicitly saying so, but that's literally exactly what they did already.

We have never modified firefox settings without a user explicitly opting in.

All the documentation for the `fixamo` function named the two firefox settings (as viewable in about:config) that `fixamo` would change.

`fixamo` was an opt-in feature that users were only going to find by reading our help files or asking us on our support channel.

Disclaimer: I am one of the authors of tridactyl.

Re:All Tridactyl installations might get removed by Firefox ... by feanaro on Friday August 16, 2019 @05:49PM (#20720045)
I've certainly read somewhere that running `fixamo` would modify my user.js. I was fully aware of this fact prior to running the command.
Re:All Tridactyl installations might get removed by Firefox ... by tptacek on Friday August 16, 2019 @04:09PM (#20719204)
Did they? I just looked up the documentation for this command, and I have no idea why users would have the expectation that it did this.
Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @06:05PM (#20720166)
This is the documentation we provided:

"To make Tridactyl work on addons.mozilla.org and some other Mozilla domains, you need to open about:config, run fixamo or add a new boolean privacy.resistFingerprinting.block_mozAddonManager with the value true, and remove the above domains from extensions.webextensions.restrictedDomains."

And

"Simply sets

"privacy.resistFingerprinting.block_mozAddonManager":true "extensions.webextensions.restrictedDomains":""

in about:config via user.js so that Tridactyl (and other extensions!) can be used on addons.mozilla.org and other sites."

You can find these messages in src/excmds.ts at commit 92e1b005c47995e3d24f61a7d4c3935df8437f1a

The only way this hurts you as a user is if all of the following occurs:

1. You manually install Tridactyl

2. You manually install our native messenger

3. You manually fun a command called `fixamo` or you manually find and install our exemplar RC file that explicitly says at the top that you should read it because it does things you might not like; and then you don't read or edit it

4. You also manually install a malicious addon

5. That malicious addon doesn't have permissions for <all_urls> (otherwise it can steal your banking credentials without tridactyl's help) but does have permission for accounts.firefox.org

6. That addon can then steal your firefox account credentials and use them to e.g. mess with your synced settings and e.g. download your passwords database (if you don't have a master password set).

My view is that you're pretty much fucked if you install a malicious addon with <all_urls> anyway (and many addons request that permission), so this slight extra capability you get if you successfully phish someone in this pool of <1000 people isn't a big deal.

Re:All Tridactyl installations might get removed by Firefox ... by ndarwincorn on Friday August 16, 2019 @04:11PM (#20719225)
I feel like vim browsing is better off with a browser designed for it like luakit, and that's coming from someone who uses vimium and tridactyl.

They both get in the way as often as they help. Mirrors my experience with vim-mode plugins for non-vim IDEs/editors too.

Re:All Tridactyl installations might get removed by Firefox ... by codetrotter on Friday August 16, 2019 @08:13PM (#20720914)
I used to be a Vimperator user, then Pentadactyl user, and after that, Vimium user. In all three cases I eventually gave up on 'em because they kept breaking and like you said, they got in the way as much as they helped.

But on the Vim-emulation for IDEs front I would like to send a shout-out to JetBrains for the IdeaVim plugin. IdeaVim combined with the CLion IDE, also by JetBrains, and language specific plugins, help me so massively much when I work on any project that spans more than a handful of files.

In several cases there are projects that I work on with ease in CLion that I could not imagine trying to do with plain old Vim, and there is no other IDE that I have enjoyed using as much as CLion, not even by a long shot.

I have nothing but good things to say about CLion and of JetBrains. Unless they do something drastically weird to CLion they likely have a customer for life in me.

IdeaVim is not a complete emulation of Vim, but it is a complete emulation of the parts of Vim that I use and expect, so I am very satisfied with it.

Re:All Tridactyl installations might get removed by Firefox ... by bovine3dom on Friday August 16, 2019 @04:46PM (#20719532)
Whining developer here.

The documentation was this: https://github.com/tridactyl/tridactyl/blob/32ac11fe9d432190...

A fragment of that documentation would have been displayed in our tab completions as fixamo was typed.

As many other replies have mentioned, it was only ever run if users installed our native executable, and ran `fixamo` themselves.

Re:All Tridactyl installations might get removed by Firefox ... by nextos on Friday August 16, 2019 @05:20PM (#20719818)
Thanks for developing Tridactyl.

It's sad how Mozilla killed Vimperator with the transition to WebExtensions. And how many of its features still cannot be replicated in Tridactyl, which I otherwise love, despite all your efforts.

Due to the new addon model, addons don't get the chance to run till the page finishes loading. So e.g. a 404 or a slow page force you to revert to standard keybindings which ruins the immersive Vim user experience.

Mozilla should perhaps create an API for privileged extensions. I know the userbase is small. But it's a very important userbase to keep the platform healthy.

Re:All Tridactyl installations might get removed by Firefox ... by bovine3dom on Friday August 16, 2019 @05:27PM (#20719879)
There is some prior for this in that they actually already have a "God mode" permission [1] that they grant to some of their own extensions such as the screenshot tool (which might not be an extension any more). I don't think they'd let us have it, though. It would be really nice to work on PDFs again!

[1]: https://bugzilla.mozilla.org/show_bug.cgi?id=1456485

Re:All Tridactyl installations might get removed by Firefox ... by bovine3dom on Friday August 16, 2019 @05:49PM (#20720049)
I should probably also point you to this comment - https://news.ycombinator.com/item?id=20719678 - some interaction before pages load would be possible if that keyboard-api was brought up-to-date and merged into Firefox.
Re:All Tridactyl installations might get removed by Firefox ... by nextos on Friday August 16, 2019 @07:21PM (#20720626)
Thanks. I had heard about keyboard-api somewhere in Tridactyl issues page I think. Probably in the issue linked in that comment.

I'd love to see Mozilla helping a bit by enabling APIs that are necessary to make Tridactyl as immersive as Vimperator was.

Re:All Tridactyl installations might get removed by Firefox ... by Dylan16807 on Friday August 16, 2019 @06:41PM (#20720404)
And mouse, gestures have to have such garbage responsiveness right now.
Re:All Tridactyl installations might get removed by Firefox ... by kevin_thibedeau on Saturday August 17, 2019 @03:52AM (#20722798)
And don't work on "privileged" pages.
Re:All Tridactyl installations might get removed by Firefox ... by bsdubernerd on Friday August 16, 2019 @03:48PM (#20718986)
This was never done automatically.

In fact, I did it manually to enable umatrix and tridactyl on AMO as I hate not being able to use my regular keybindings everywhere.

I'm doubly pissed at Mozilla here. I'm tired of being baby-sitted. Quantum killed half of what I was using before. And trydactyl still cannot do half of what previous extensions could do.

[dead]
Re:All Tridactyl installations might get removed by Firefox ... by tptacek on Friday August 16, 2019 @04:29PM (#20719408)
If that's the best argument Tridactyl can marshal, there isn't much controversy here: Tridactyl will lose, and be blocked by Firefox.
Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @05:44PM (#20720006)
The arguments made by tridactyl developers to Mozilla are published in the linked thread. There is no need to speculate.

We don't complain about walled gardens.

Re:All Tridactyl installations might get removed by Firefox ... by pvg on Friday August 16, 2019 @07:17PM (#20720606)
In that thread there's stuff like 'Add-ons before WebExtensions could access the AMO fine and the sky did not fall in' and similar sentiments expressed in the issue post itself. It also seems like a thoroughly unwinnable argument, you're basically saying Mozilla's security policies are pointless because things were just fine as they were. They obviously disagree profoundly and aren't going to be convinced by this.
Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @08:03PM (#20720863)
This is a misrepresentation of our argument.

The very next sentences are:

"I am happy to be corrected on this. If you have any specific explanations you would like me to provide to our users, I would be happy to pass them on."

We also supported Mozilla's choice to move away from the XUL API.

I and most of the other core contributors are in favour of of capabilities-based security with explicit permission granting, not just in Firefox, but in general.

We believe that it should also be possible for users to have their software do what they want it to do. Part of that is letting people make their own decisions about what level of risk they are willing to accept.

We are reasonable people. We have been told in non-specific terms that something is unsafe that we think is useful and reasonably safe. So we have asked Mozilla (several times) to explain how it is unsafe so that we can update our beliefs if necessary.

We are asking because we know from experience that Mozilla employees generally have a lower tolerance for risk than us (the developers of tridactyl) or many of our users. Fundamentally, that is OK, but here Mozilla is asking us to do a bunch of work and change our code in ways we don't really want to do so that it more closely matches their risk tolerance than ours.

They can choose to manage their ecosystem how they like, but we in the ecosystem rightly also get a small say.

So we are asking them to say why and trying to negotiate a compromise that will be acceptable to all of us.

Re:All Tridactyl installations might get removed by Firefox ... by pvg on Friday August 16, 2019 @08:32PM (#20721031)
This is a misrepresentation of our argument.

It's a quote from your own devs in your own thread, and there are other similar ones. I don't know what your exact argument is but what's there sounds adversarial and reads more or less like telling Mozilla, Morrie Kessler-style, that they're being an unconscionable ballbreaker. There's probably some better, clearer way to present whatever it is you have in mind. Morrie didn't win the argument either.

Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @09:16PM (#20721267)
The devs in the thread are those with [member] in their name. Which might just be me and bovine3dom.

None of the dev team believe that Mozilla are acting unconscionably. We believe roughly what I put in the post above.

E: and sure, it is a quote, but the immediate context matters.

Re:All Tridactyl installations might get removed by Firefox ... by Causality1 on Friday August 16, 2019 @07:00PM (#20720534)
I refer primarily to depriving us of XUL extensions, not of Tridactyl's particular situation.
Re:All Tridactyl installations might get removed by Firefox ... by miloignis on Friday August 16, 2019 @03:21PM (#20718718)
It looks like you had to run the command explicitly to do that though, and that it wasn't done by default, so it seems pretty kosher to me if they had appropriate warnings (and I think the issue says they did...)
Re:All Tridactyl installations might get removed by Firefox ... by mcpherrinm on Friday August 16, 2019 @03:32PM (#20718839)
As far as I can tell from a brief check, it just says it "fix tridactyl on addons.mozilla.org".

But it's overriding a fairly useful setting, one that we use internally: By preventing webextensions from running on "sensitive domains", which includes AMO by default (since that could allow an addon to install more addons and bypass or hide the user prompts, I gather), but it would also include any other domains you've marked as sensitive.

I don't use Firefox at work unfortunately (because of https://bugzilla.mozilla.org/show_bug.cgi?id=963354), but we generally want to allow users to install addons on non-sensitive sites.

Internal domains that are much higher risk, and may have regulatory requirements around who can receive data on them (eg, because of GDPR). So we'd use a setting like this (or the equivalent in Chrome) to restrict addons on those very sensitive sites. Having addons like Tridactyl that undermines that is a big red flag.

I admit I don't fully understand all the nuances here, but it seems like Mozilla's stance closely aligns with what I'd expect here.

Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @04:54PM (#20719598)
Disclaimer: I am one of the authors of Tridactyl.

We did actually set another firefox setting that means that webextensions cannot access the privileged JS environment on AMO (to my knowledge).

We have invited Mozilla several times to provide some text for us to share with our users explaining what the issue is and they have demurred.

I think for 99% of users, if a webextension can run on all pages (which many do) it can hurt them a lot more by stealing credentials (which is quite easy) than by installing other addons (which is hard).

Sure, we could have included some more warnings but 1. we did document clearly what we were doing if anyone wanted to check up (we were just automating the advice given in several blogs); 2. I think I talked to some mozillian's about it at the time, and they were unconcerned, but maybe not, could have been a similar other issue; 3. last time I looked there was no good explanation of why this is actually dangerous anywhere.

For reference, the exact messages provided to users were:

"To make Tridactyl work on addons.mozilla.org and some other Mozilla domains, you need to open about:config, run fixamo or add a new boolean privacy.resistFingerprinting.block_mozAddonManager with the value true, and remove the above domains from extensions.webextensions.restrictedDomains."

And

"Simply sets

"privacy.resistFingerprinting.block_mozAddonManager":true "extensions.webextensions.restrictedDomains":""

in about:config via user.js so that Tridactyl (and other extensions!) can be used on addons.mozilla.org and other sites."

---

You can find these messages in src/excmds.ts at commit 92e1b005c47995e3d24f61a7d4c3935df8437f1a

Re:All Tridactyl installations might get removed by Firefox ... by jhall1468 on Friday August 16, 2019 @04:10PM (#20719218)
Fundamentally, Firefox is forcing the addon vendor to overwrite the users.js file without the users permission. What's more, these users only got this overwrite by explicitly allowing it.

So on one hand the reviewer is saying modifying the users.js setting without explicitly saying what it does, even though it required a separate process, was a bad thing to do. And their way of rectifying that is to do the same thing, only this time without any user interaction.

Re:All Tridactyl installations might get removed by Firefox ... by Mathnerd314 on Friday August 16, 2019 @04:16PM (#20719282)
IIRC the reason AMO is sensitive is because the browser injects a "control the browser" object into the page. The first pref Tridactyl sets is to remove this privilege escalation, the second (in top comment) is to remove the restriction on addons accessing AMO. Perusing the original bug (https://bugzilla.mozilla.org/show_bug.cgi?id=1415644) the main concern overall seems to be stealing browser history through Firefox Accounts. But as the reviewer says, "I'm not really clear what we're protecting here, feels like a bug in search of a problem."
Re:All Tridactyl installations might get removed by Firefox ... by mechnesium on Friday August 16, 2019 @05:24PM (#20719847)
The fact that third-party addons can even touch sensitive settings in the user.js prefs is a massive security flaw in Mozilla's implementation of the WebExtensions API. Addons should be sandboxed/containerized or require privilege escalation before touching files on the disk.
Re:All Tridactyl installations might get removed by Firefox ... by Mathnerd314 on Friday August 16, 2019 @05:34PM (#20719947)
It uses native messaging with a Python script: https://github.com/tridactyl/tridactyl/blob/master/native/na...

I don't think anyone who uses Tridactyl is worried about its security, it has a permissions list 15+ lines long.

Re:All Tridactyl installations might get removed by Firefox ... by gruez on Friday August 16, 2019 @05:34PM (#20719942)
This. The whole point of this security feature is to prevent extensions from interfering with Mozilla pages. What's the point of this when addons can bypass turn it off themselves?
Re:All Tridactyl installations might get removed by Firefox ... by cmcaine on Friday August 16, 2019 @05:45PM (#20720014)
Only extensions that have a native messenger can do this (which requires users to accept a scary sounding permission and install a separate application on their computer)
Re:All Tridactyl installations might get removed by Firefox ... by cp9 on Friday August 16, 2019 @03:50PM (#20719012)
and it wouldn't. You explicitly have to install the native messenger and run fixamo, which in the rc file for tridactyl explictly mentions what it's about to do