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

Change Debian 8 template to use apt-transport-https by default #1539

Closed
isislovecruft opened this Issue Dec 25, 2015 · 8 comments

Comments

Projects
None yet
8 participants
@isislovecruft

In my opinion, the default Debian setting of using plaintext HTTP for package updates presents something of a security concern, since a passive adversary watching the update process gains information regarding which packages are installed and their current versions. I would strongly prefer that adversaries not know which versions of software they should be looking for bugs in in order to attack me. Debian has stalled on changing this for some time, but I see no valid reason why Qubes should persist in the same poor decisions.

Would Qubes consider having apt-transport-https installed in the Debian 8 template by default, and using an HTTPS mirror (e.g. https://mirrors.kernel.org/debian)?

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Dec 25, 2015

Member

First of all it requires #1188 which is only present in R3.1 - so not going to happen in R3.0. But other than that, it worth consideration.

Possible downsides:

  • not able make use of (transparent) caching

Alternatives:

  • download updates over Tor (which is already an option in R3.1), related to #1159

/cc @adrelanos

Member

marmarek commented Dec 25, 2015

First of all it requires #1188 which is only present in R3.1 - so not going to happen in R3.0. But other than that, it worth consideration.

Possible downsides:

  • not able make use of (transparent) caching

Alternatives:

  • download updates over Tor (which is already an option in R3.1), related to #1159

/cc @adrelanos

adrelanos added a commit to adrelanos/qubes-builder-debian that referenced this issue Dec 25, 2015

install the apt-transport-https package by default
Note, this does not automagically download from all apt repositories by default.

Quote [1]:

> This package enables the usage of 'deb https://foo distro main' lines in the /etc/apt/sources.list so that all package managers using the libapt-pkg library can access metadata and packages available in sources accessible over https (Hypertext Transfer Protocol Secure).

> This transport supports server as well as client authentication with certificates.

This is part of QubesOS/qubes-issues#1539.

[1] https://packages.debian.org/jessie/apt-transport-https

@adrelanos adrelanos referenced this issue in marmarek/qubes-builder-debian Dec 25, 2015

Merged

install the apt-transport-https package by default #23

@adrelanos

This comment has been minimized.

Show comment
Hide comment
@adrelanos

adrelanos Dec 25, 2015

Member

Created marmarek/qubes-builder-debian#23 to install apt-transport-https by default. Not a big deal. Small change. Small package.

If however it makes sense to update over https depends on how much one trusts the broken SSL CA system in relation to their adversaries.

Member

adrelanos commented Dec 25, 2015

Created marmarek/qubes-builder-debian#23 to install apt-transport-https by default. Not a big deal. Small change. Small package.

If however it makes sense to update over https depends on how much one trusts the broken SSL CA system in relation to their adversaries.

@mig5

This comment has been minimized.

Show comment
Hide comment
@mig5

mig5 Dec 28, 2015

Just implementing this myself now on templates carried over from 3.0 to 3.1. I think there isn't any alternative mirror for the security updates available at http://security.debian.org. And there isn't any HTTPS for security.debian.org (disappointed). So correct me if I'm wrong but this will always be only a partial fix that Qubes project can't solve :(

mig5 commented Dec 28, 2015

Just implementing this myself now on templates carried over from 3.0 to 3.1. I think there isn't any alternative mirror for the security updates available at http://security.debian.org. And there isn't any HTTPS for security.debian.org (disappointed). So correct me if I'm wrong but this will always be only a partial fix that Qubes project can't solve :(

@unman

This comment has been minimized.

Show comment
Hide comment
@unman

unman May 17, 2016

Member

It's trivially easy to assess which packages are being installed under TLS, so privacy is illusory.

As @mig says, Debian security updates are not available by HTTPS, so method cant be absolute default.
@adrelanos has already added apt-transport-https method.
Is there any purpose in shipping templates with HTTPS across all sources except security.debian.org ?

Member

unman commented May 17, 2016

It's trivially easy to assess which packages are being installed under TLS, so privacy is illusory.

As @mig says, Debian security updates are not available by HTTPS, so method cant be absolute default.
@adrelanos has already added apt-transport-https method.
Is there any purpose in shipping templates with HTTPS across all sources except security.debian.org ?

andrewdavidwong added a commit that referenced this issue May 31, 2016

@rootkovska rootkovska removed the C: label Jun 30, 2016

@rustybird

This comment has been minimized.

Show comment
Hide comment
@rustybird

rustybird Jul 1, 2016

@marmarek:

Possible downsides:

  • not able make use of (transparent) caching

Indeed.

@isislovecruft:

You can get HTTPS+caching for Debian packages if you use qubes-updates-cache and remove the comment character from line 9 of /etc/qubes-updates-cache/urls.conf (and from line 4 for Fedora packages).

rustybird commented Jul 1, 2016

@marmarek:

Possible downsides:

  • not able make use of (transparent) caching

Indeed.

@isislovecruft:

You can get HTTPS+caching for Debian packages if you use qubes-updates-cache and remove the comment character from line 9 of /etc/qubes-updates-cache/urls.conf (and from line 4 for Fedora packages).

@unman

This comment has been minimized.

Show comment
Hide comment
@unman

unman Nov 25, 2016

Member

@marmarek @isislovecruft
can we move on this?

  1. @adrelanos has added support for apt-transport-https, so users can easily configure if they wish;
  2. Debian security isn't available at all via https
  3. It's straightforward to identify package updates over TLS
  4. The fedora templates use http and https

I would leave as present and leave it to users to configure, but if it's decided to move to default https it's a trivial change.

Member

unman commented Nov 25, 2016

@marmarek @isislovecruft
can we move on this?

  1. @adrelanos has added support for apt-transport-https, so users can easily configure if they wish;
  2. Debian security isn't available at all via https
  3. It's straightforward to identify package updates over TLS
  4. The fedora templates use http and https

I would leave as present and leave it to users to configure, but if it's decided to move to default https it's a trivial change.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Nov 25, 2016

Member

I'd also leave as it is. Much easier (in terms of configuration) solution is to connect template through Whonix Gateway - which gives much more than https (you can hide that you download updates at all, not only what updates). It is even possible to select such option during installation.

Member

marmarek commented Nov 25, 2016

I'd also leave as it is. Much easier (in terms of configuration) solution is to connect template through Whonix Gateway - which gives much more than https (you can hide that you download updates at all, not only what updates). It is even possible to select such option during installation.

@unman

This comment has been minimized.

Show comment
Hide comment
@unman

unman Jan 6, 2017

Member

@andrewdavidwong Please close "Won't Fix"

Member

unman commented Jan 6, 2017

@andrewdavidwong Please close "Won't Fix"

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