¿Cuáles son los riesgos de un certificado certificado por el localhost?

13

En nuestra empresa tenemos un certificado interno de CA para firmar varias cosas, incluidas las conexiones HTTPS con proxy (MITM'd).

Supongamos que usamos esta CA para firmar una clave para "localhost" para usarla en pruebas automatizadas (por lo que no tenemos que meternos con los perfiles personalizados de Firefox). Esta clave se distribuiría a los desarrolladores, probablemente ingresándola en el repositorio de origen.

¿Cuáles son los peligros de este enfoque? Supongamos que un atacante robó la clave y luego podría firmar HTTPS localhost. ¿Qué podrían hacer?

    
pregunta artbristol 29.04.2013 - 15:05
fuente

4 respuestas

3

Dos años después de la pregunta inicial, las cosas parecen haber cambiado un poco. Frente al mismo problema, encontré que el servicio letsencrypt no firma certificados para localhost y la razón de esto se explica aquí: enlace y aquí: enlace

En pocas palabras, de hecho, "los solucionadores múltiples (en particular, OS X) envían consultas de localhost a la red" en lugar de mantenerlas localmente, por lo que tener un certificado firmado para localhost puede ser un riesgo de seguridad.

    
respondido por el schoola 23.07.2015 - 14:47
fuente
7

Con dicho certificado, cualquier sistema que confíe en su CA interna confiará en que un servidor que se ejecuta en "localhost" sea genuino, es decir, que ejecute realmente en "localhost". Sin embargo, se puede acceder a "localhost", a nivel de red, solo localmente, por lo que si su cliente se conecta correctamente a https://localhost/whatever , entonces ya sabe que está hablando con la máquina local. Por lo tanto, no hay problema de seguridad adicional.

Por supuesto, el certificado solo autentica el nombre de host. No dice nada sobre si el servidor es malicioso o benigno, solo sobre quién es el servidor.

Sin embargo, tenga en cuenta que si alguien modifica el archivo "hosts" local, entonces los accesos a "localhost" podrían redirigirse a otra parte, pero alguien que puede hacer eso en su máquina ya lo posee y podría insertar su propia CA rogue en su almacén de confianza de todos modos.

    
respondido por el Tom Leek 29.04.2013 - 15:16
fuente
4

No veo ninguna amenaza más significativa para el host local que cualquier otro certificado. El abuso principal de un certificado SSL es convencer a un sistema de que usted es el sistema con el que quiere hablar cuando no lo está, pero un atacante no puede comprometer el tráfico que va a localhost a menos que la computadora cliente ya esté comprometida a un nivel bastante bajo. nivel (al menos tiene acceso para modificar el archivo HOSTS). En ese momento, toda la farsa es innecesaria, ya que simplemente podrían instalar su propio certificado o hacer lo que quieran.

    
respondido por el AJ Henderson 29.04.2013 - 15:11
fuente
2

Casi no hay amenaza en absoluto. ¿Confías en tu propia computadora para no intentar un ataque MITM contra ti? Entonces no debería haber ningún problema.

Cuando intenta acceder a localhost, el adaptador de red ni siquiera se toca. Si alguien robó la llave, podría usarla para convencer a su propia computadora de que es ella misma. O cualquier computadora a la que tengan acceso (si tienen acceso a computadoras, sin embargo, usted tiene un problema mayor, ya que pueden interceptar los datos no cifrados antes que pasan por TLS)

El único peligro sería si su archivo de hosts haya sido alterado.

    
respondido por el Manishearth 29.04.2013 - 15:23
fuente

Lea otras preguntas en las etiquetas