Al instalar un nuevo repositorio de software, ¿es necesario verificar la huella digital de la clave del repositorio?

3

Estoy grabando un video sobre la instalación de algún software de un repositorio de proveedores. En algún momento, descargo la clave GPG para el repositorio remoto y verifico manualmente su huella dactilar antes agregando la clave y el nuevo repositorio a la lista de repositorios de confianza para el host actual:

REPO="https://download.docker.com/linux/debian"
# Download and check GPG key
# Expected fingerprint:
# 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
curl -fsSL "${REPO}/gpg" > docker.debian.gpg
gpg --no-option \
    --with-fingerprint --keyid-format LONG \
    docker.debian.gpg

Y solo si la huella digital coincide, continúo el proceso:

# Add Docker repository
apt-key add docker.debian.gpg
add-apt-repository \
   "deb [arch=amd64] ${REPO} \
   $(lsb_release -cs) \
   stable"

(el código anterior es para Debian, pero sigo el mismo patrón para CentOS / RedHat)

I siento como verificar la huella dactilar clave es un paso importante para asegurarnos de que no instalaremos un software desde un repositorio subvertido. Pero no estoy muy seguro de mí mismo: parece que algunos otros tutoriales suponen que la clave del repositorio se verificará automágicamente más adelante.

Entonces, en ese caso, ¿qué nivel adicional de seguridad agrega esa seguridad para verificar la huella digital clave? ¿Cuáles serían los riesgos de no hacer eso?

    
pregunta Sylvain Leroux 24.08.2017 - 15:32
fuente

1 respuesta

2

[No soy un experto en apt o yum/dnf , así que esto es solo una opinión.]

  

algunos otros tutoriales que vi parecen asumir que la clave del repositorio se verificará automáticamente en algún momento.

¿Comprobado contra qué? ¿Contra el mismo repositorio que te lo dio en primer lugar? Si esto resulta ser un repo malicioso, por supuesto que continuará diciéndote que es real. No hay una lista mágica en alguna parte de qué claves son auténticas para cuáles repos. Bueno, en realidad existe la lista que se envía con apt , pero le estás diciendo explícitamente a apt que modifique esa lista.

Mi comprensión de add-apt-repository es que una vez que lo agregas, este se convierte en un ancla de confianza contra el cual se verifican todas las firmas futuras de esta fuente. Si es malicioso, una vez que lo inserte en su lista de claves de confianza, estará abierto a recibir software malicioso / falsificado de ese desarrollador.

Estableciendo confianza

La verdadera pregunta es: ¿de dónde sacas esto?

# Expected fingerprint
# 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88

Si lo obtuviste de la misma fuente que te va a servir los paquetes, o de una página HTTP no cifrada, o de algún blog incompleto, entonces eso no te hará mucho bien.

Lo ideal es que desees obtener la huella digital "fuera de banda", es decir, de una fuente diferente en la que ya tienes confianza en el mundo real.

    
respondido por el Mike Ounsworth 24.08.2017 - 16:08
fuente

Lea otras preguntas en las etiquetas