Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

firefoxPackages.tor-browser*, tor-browser-bundle: remove #77452

Merged
merged 1 commit into from Jan 10, 2020

Conversation

flokli
Copy link
Contributor

@flokli flokli commented Jan 10, 2020

These are all based on firefox versions with known vulnerabilities
exploited in the wild.

We seriously shouldn't ship this in nixpkgs, especially not for
sensitive applications as the Tor Browser.

tor-browser-bundle is just a wrapper around
firefoxPackages.tor-browser, so let's remove it too.

tor-browser-bundle-bin is the much safer bet, which is individually
downloaded from dist.torproject.org and just patchelf-ed locally to
work on NixOS.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

Copy link
Member

@alyssais alyssais left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do think it would be nice to build TBB ourselves at some point, especially since it’s reproducible, but it’s clearly not something we’re up to right now, so I agree with removing.

@flokli
Copy link
Contributor Author

flokli commented Jan 10, 2020

It's currently causing more harm than good.

pkgs/top-level/aliases.nix Outdated Show resolved Hide resolved
These are all based on firefox versions with known vulnerabilities
exploited in the wild.

We seriously shouldn't ship this in nixpkgs, especially not for
sensitive applications as the Tor Browser.

`tor-browser-bundle` is just a wrapper around
`firefoxPackages.tor-browser`, so let's remove it too.

`tor-browser-bundle-bin` is the much safer bet, which is individually
downloaded from `dist.torproject.org` and just `patchelf`-ed locally to
work on NixOS.

Co-Authored-By: Alyssa Ross <hi@alyssa.is>
Co-Authored-By: Andreas Rammhold <andreas@rammhold.de>
Co-Authored-By: Graham Christensen <graham@grahamc.com>
@flokli flokli merged commit 39f9b46 into NixOS:master Jan 10, 2020
@flokli flokli deleted the tor-remove-insecure branch January 10, 2020 18:32
@vcunat
Copy link
Member

vcunat commented Jan 10, 2020

@oxij might be interested, even if it's merged already.

dtzWill pushed a commit to dtzWill/nixpkgs that referenced this pull request Jan 10, 2020
firefoxPackages.tor-browser*, tor-browser-bundle: remove

(cherry picked from commit 39f9b46)
@oxij
Copy link
Member

oxij commented Jan 11, 2020 via email

@alyssais
Copy link
Member

alyssais commented Jan 11, 2020 via email

@oxij
Copy link
Member

oxij commented Jan 11, 2020 via email

@flokli
Copy link
Contributor Author

flokli commented Jan 11, 2020

@oxij I don't think there's any pressure to revert immediately. For 19.09, derivations are marked as insecure, and users are directed to tor-browser-bundle-bin.

tor-browser-bundle currently is vulnerable to at least CVE-2019-17026, and based on an unsupported firefox version. I wouldn't advertise it as "the only sane web browser setup there currently is" (because of the vulnerabilities), advise against using it for online browsing, and would feel much more comfortable if people would use tor-browser-bundle-bin.

I appreciate the effort you and the SLNOS community took into packaging tor-browser from source, but at least for nixpkgs, maintaining all the different flavours in the firefox expression has become a huge maintenance burden, especially if we're talking about keeping extra switches for versions already out of support of firefox by itself.
If people really need to use these old unsupported versions for some obscure reasons (like needing support for some never-updated plugins) we should defer to an older nixpkgs channel.

As far as Tor Browser is concerned, I'd also like if we'd be able to provide a self-built Tor Browser. However, apart from the fact this needs to be done with a lot of caution, it should be based on a currently supported firefox version, maybe simply a set of patches on top. As you said by yourself, given the current SLNOS tor-browser maintainer kinda resigned, I don't feel like this should be introduced before these issues have been adressed.

@oxij
Copy link
Member

oxij commented Jan 11, 2020 via email

@flokli
Copy link
Contributor Author

flokli commented Jan 11, 2020

Yes, this is not only about tor-browser, but about keeping code for unsupported firefox versions in the tree.

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/january-2020-in-nixos/5771/1

@ehmry
Copy link
Contributor

ehmry commented Dec 9, 2020

Note that unless we build ourselves there is no tor-browser for ARM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants