APT (herramienta de empaque avanzada) es un programa para instalar, actualizar y eliminar paquetes de software en sistemas operativos Debian y basado en ellos (Ubuntu, Linux Mint, etc.). A veces también se usa en distribuciones basadas en Mandrake. Los paquetes se descargan a través de Internet desde repositorios a través de una
conexión insegura , sin utilizar el protocolo TLS y el cifrado. Surge la pregunta: ¿por qué? ¿HTTPS no proporciona mejor seguridad? Debian cree que HTTPS es una entidad innecesaria, ya que el sistema
SecureAPT verifica la suma de verificación en busca de archivos descargados y la firma criptográfica gpg de todo el paquete.
Uno de los desarrolladores de Debian lanzó el sitio web
whydoesaptnotusehttps.com ("Por qué APT no usa HTTPS"), donde explica la posición oficial.
Cómo funciona SecureAPT
Primero, apt compara los hashes de archivos del paquete. Se publican en el sitio web de Debian en el archivo Release ...
MD5Sum: 6b05b392f792ba5a436d590c129de21f 3453 Packages 1356479a23edda7a69f24eb8d6f4a14b 1131 Packages.gz 2a5167881adc9ad1a8864f281b1eb959 1715 Sources 88de3533bf6e054d1799f8e49b6aed8b 658 Sources.gz
... y transmitido junto con el paquete.
Package: uqm Priority: optional ... Filename: unstable/uqm_0.4.0-1_i386.deb Size: 580558 MD5sum: 864ec6157c1eea88acfef44d0f34d219
Para evitar que el archivo Release sea alterado, el sistema SecureAPT agrega la firma digital gpg, que se encuentra en el archivo Release.gpg:
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQBCqKO1nukh8wJbxY8RAsfHAJ9hu8oGNRAl2MSmP5+z2RZb6FJ8kACfWvEx UBGPVc7jbHHsg78EhMBlV/U= =x6og -----END PGP SIGNATURE-----
El programa apt descarga el archivo Release.gpg y verifica la firma utilizando claves públicas confiables, que se almacenan en el archivo /etc/apt/trusted.gpg. Por defecto, la clave pública del archivo Debian se registra allí.
joey@dragon:~>sudo apt-key list /etc/apt/trusted.gpg -------------------- pub 4096R/55BE302B 2009-01-27 [verfällt: 2012-12-31] uid Debian Archive Automatic Signing Key (5.0/lenny) <ftpmaster@debian.org>
Esta es la última línea de defensa, por lo que Debian cambia periódicamente las claves. Las nuevas claves se distribuyen con el paquete debian-archive-keyring y también se publican en la
página web .
Después de la publicación de la nueva clave pública, se produce otro procedimiento. La clave secreta que se utilizó para generar la clave pública se divide en cinco partes utilizando el programa
gfshare y se distribuye entre cinco desarrolladores acreditados de acuerdo con el esquema de intercambio secreto de Shamir. Para restaurar un secreto, al menos tres de cada cinco desarrolladores deben proporcionar sus partes del secreto. Se
publicó una prueba matemática del esquema de Shamir
en Habré : se basa en el hecho de que a través de dos puntos en el plano puede dibujar un número ilimitado de polinomios de grado 2. Para elegir el único, necesita un tercer punto. En pocas palabras, el esquema se basa en la interpolación polinómica.
Entonces, en el sistema SecureAPT, la clave secreta se divide en cinco partes y está protegida de manera confiable, la firma criptográfica del archivo Release se verifica mediante la clave pública y las sumas de verificación de los archivos del paquete se almacenan en este archivo. ¿Por qué usar HTTS si todo es tan seguro?
¿Por qué usar HTTP?
El objetivo principal de HTTPS es ocultar el tráfico de miradas indiscretas (proveedor, servicios gubernamentales y otros intrusos) para que un tercero no pueda:
- Interferir con el tráfico (modificarlo).
- Escuchar el tráfico (recopilación de información, inteligencia).
El sistema SecureAPT protege parcialmente contra la primera amenaza, pero no desde la segunda. Dado que los paquetes se transmiten a través de canales abiertos, un extraño ve qué paquetes específicos se descargan y de dónde. Un atacante también puede reemplazar paquetes y firmas digitales, pero luego no pasará la verificación.
El desarrollador de Debian escribe:
HTTPS no proporciona confidencialidad significativa para recibir paquetes, ya que un atacante generalmente ve con qué hosts se está comunicando. Si se conecta al espejo de distribución, será obvio que está descargando actualizaciones.
Este párrafo probablemente esté escrito en un momento en que los navegadores y los servicios de Internet no comenzaron a admitir la tecnología DNS sobre TLS y
DNS sobre HTTPS (DoH) para cifrar el tráfico DNS. Por ejemplo, en abril de 2018, fue
presentado por uno de los mayores proveedores de CDN Cloudfalre, y en octubre de 2018, Google Public DNS también
incluyó soporte para DNS sobre TLS .
Por lo tanto, después de la configuración adecuada del sistema, puede ocultar de manera efectiva las consultas DNS de un extraño que escucha el tráfico. También se está trabajando activamente para introducir otras tecnologías que ocultan al destinatario de los paquetes. Es decir, en el futuro, HTTPS aún podrá proporcionar la confidencialidad adecuada.
Debian plantea otro argumento: incluso en una conexión encriptada, "es fácil descubrir qué archivos descarga un usuario por tamaño de tráfico". Esta "vulnerabilidad" se puede utilizar
incluso cuando se analiza el tráfico a través de Tor .
Finalmente, Debian no ve ninguna razón para confiar completamente en las autoridades de certificación: hay más de 400 CA que ofrecen certificados para cualquier dominio. Muchos tienen una mala reputación, y algunos son controlados directamente por el estado. Es difícil determinar en
qué CA puede confiar .
Por lo tanto, según Debian, lo más importante es garantizar la autenticidad de los archivos en el paquete y no proteger la conexión en sí.
¿Por qué no implementar HTTPS en la parte superior de su motor SecureAPT existente? El desarrollador considera que esta es una tarea de ingeniería difícil, que requiere el intercambio seguro y el almacenamiento de claves privadas. Además, la implementación de HTTPS implica "engañar a los usuarios con respecto al nivel de seguridad y privacidad" por las razones descritas anteriormente.
En 2019, abandonar deliberadamente HTTPS parece muy extravagante, por lo que la posición de Debian desencadenó una
animada discusión en
Hacker News , donde los comentaristas presentaron varios argumentos en contra.
¿Qué piensas, necesitas encriptar el tráfico apto? (Encuesta a continuación).

