Let's Encrypt es una iniciativa de Electronic Frontier Foundation (EFF), Mozilla, Cisco, Akamai, IdenTrust e investigadores de la Universidad de Michigan, cuyo objetivo es proporcionar automáticamente a cada propietario de dominio un certificado reconocido que pueda usarse para TLS.
Para demostrar que posee un dominio, debe instalar un archivo con contenidos particulares (generados aleatoriamente) en una URL particular (generada aleatoriamente) en ese dominio. El servidor Let's Encrypt lo verificará accediendo a la URL, antes de firmar el certificado.
Ahora, supongamos que tengo algún ataque que hará que el dominio awesomebank.example
se resuelva en mi servidor. Supongamos que también puedo MITM las conexiones de algunas personas a https://awesomebank.example/
. El objetivo de TLS es evitar que vea o altere sus comunicaciones con el servidor sin ser detectado.
¿Qué me impide usar este ataque en el servidor Let's Encrypt y obtener un certificado para awesomebank.example
y luego usarlo para los clientes de Mesome de AwesomeBank sin ser detectado (porque tengo un certificado válido)? ¿La existencia de una CA completamente automatizada no hace que Internet sea menos seguro?