Ataques MitM y DoS en dominios mediante certificados antiguos

29 Ago 2018

Los certificados HTTPS son uno de los pilares de la seguridad de Internet, pero no es oro todo lo que reluce. Ya hemos discutido cómo el sistema actual suele fallar a la hora de garantizar la seguridad de los usuarios, pero ¿cómo podría perjudicar esto a los propietarios de los sitios web?

Dos certificados válidos para el mismo dominio

El registro de dominios y la certificación HTTPS se suelen controlar por diferentes organizaciones, así que los periodos de validez de dominios y certificados no tienen por qué ser los mismos. Esto genera situaciones en la que los propietarios antiguos y los actuales tienen certificados válidos para el mismo dominio al mismo tiempo.

¿Qué puede ir mal en una situación así? ¿Es algo corriente? En DEF CON 26, los investigadores Ian Foster y Dylan Ayrey presentaron su estudio sobre este problema. Según ellos, hay más complicaciones de las que se aprecian a simple vista y la situación está sorprendentemente extendida.

El problema más obvio es lo que te puedes esperar si alguien más cuenta con un certificado válido para tu dominio: un ataque Man-in-the-Middle a los usuarios de tu página web.

Foster y Ayrey utilizaron la base de datos de certificados de Certificate Transparency para identificar 1.500.000 certificados con propiedad compartida, que equivale a casi el 0,5 % de todos los sitios de Internet. En un cuarto de estos casos, el certificado más antiguo sigue siendo válido, lo que supone que 375.000 dominios quedan vulnerables antes el ataque Man-in-the-Middle.

Pero eso no es todo. Es muy común hacer un certificado para múltiples dominios, puede que dos o incluso cientos de ellos. Por ejemplo, Foster y Ayrey detectaron un certificado que cubría 700 dominios a la vez y, como los investigadores dicen, esta lista incluye algunos dominios muy populares.

Algunos de estos 700 dominios están vacantes actualmente, por tanto, cualquiera podría adquirir uno y obtener un certificado HTTPS para el mismo. Ahora, la pregunta es si el propietario del nuevo dominio tiene el derecho a anular el certificado previo para proteger su página web de un ataque Man-in-the-Middle.

¿Se puede anular un certificado?

Los certificados se pueden anular. Los procedimientos operativos de los centros de certificación proporcionan la anulación de certificados si “aparece en el certificado información errónea o incorrecta”. Esta anulación debe realizarse las 24 horas siguientes al recibo de la notificación.

Pero Foster y Ayrey analizaron cómo funciona en la vida real y descubrieron que el proceso varía de forma considerable dependiendo del centro de certificación. Por ejemplo, Let’s Encrypt utiliza herramientas automatizadas que ayudan a anular rápidamente un certificado, casi a tiempo real. Sin embargo, en otros centros de certificación, hay que ponerse en contacto con una persona real, por lo que el proceso es más lento. A veces, conseguir la anulación de un certificado requiere constancia y mucho más que las supuestas 24 horas especificadas y, en el peor de los casos, puede que ni consigas la anulación del certificado. Por ejemplo, Comodo respondió a los investigadores con la siguiente sugerencia: “olvida este SSL y solicita un nuevo SSL”.

De una manera u otra, es muy probable que acabes con un certificado antiguo y esto puede ser negativo y positivo. Por un lado, el nuevo propietario del dominio podrá protegerse en la mayoría de los casos de un ataque Man-in-the-Middle que utilice la vulnerabilidad de este certificado. Y, por otro lado, significa que otra persona puede comprar un dominio libre de entre los cubiertos por un certificado “compartido” y revocarlo, lo que perjudica el uso de los sitios web asociados.

Te preguntarás si este problema está extendido y podemos afirmar que incluso más que el anterior: 7 millones de dominios (¡más del 2 % de Internet!) comparten sus certificados con dominios cuya inscripción ha expirado. El 41 % de los certificados anteriores siguen siendo válidos. Por tanto, varios millones de dominios siguen expuestos a ataques DoS que utilizan la vulnerabilidad de la anulación del certificado.

Volviendo al mencionado certificado con 700 dominios, para demostrar que se trata de un problema inmediato, los investigadores compraron uno de los dominios gratuitos cubierto por este certificado. Así que ahora, en teoría, tienen la oportunidad de lanzar un ataque DoS a cientos de sitios web activos.

Cómo protegerse

Un total de 375000 dominios son vulnerables a los ataques MitM (Man-in-the-Middle) y otros tantos millones a los ataques DoS expandidos mediante un certificado antiguo. Tus dominios también pueden estar en la lista. Después de que se presentara este informe en la conferencia de hacking más importante, puedes estar seguro de que alguien ya anda en busca de dominios vulnerables, incluso mientras lees este artículo. ¿Cómo pueden protegerse los propietarios de sitios web? Foster y Ayrey sugieren que:

  • Utilicen un HTTP header de Expect-CT con directiva enforce para asegurar que los certificados listados en la base de datos de Certificate Transparency son de confianza para tu dominio.
  • Utilicen la base de datos de Certificate Transparency para comprobar si los dominios cuentan con certificados válidos expedidos por los anteriores propietarios. Pueden hacerlo con la herramienta Supervisión de transparencia de certificados de Facebook. Para simplificar la tarea, los investigadores han ofrecido su propia herramienta que cualquiera puede utilizar para buscar dominios expuestos a las vulnerabilidades descritas.

Y estos son nuestros consejos:

  • Comprueba tus sitios web corporativos en busca de certificados antiguos en tus dominios. Si no encuentras nada, intenta contactar con el centro de certificación y pídeles que anulen dichos certificados.
  • No consigas un certificado para múltiples dominios, especialmente si es una práctica común de tu compañía para crear un gran número de sitios web y dominios asociados sin supervisión de operabilidad estricta. Si el registro para un dominio “abandonado” expira y alguien más lo adquiere, solo tendrá que anular el certificado para desmontar tu sitio web corporativo.
  • Considera de antemano la posibilidad de que el certificado esté comprometido. Tendrás que anularlo inmediatamente y, según el estudio, algunos centros de verificación tardan en responder, por lo que te aconsejamos que trates con los más rápidos.