shattered-attack-detalles-sobre-el-primer-ataque-de-colision-contra-sha-1

SHAttered attack, detalles sobre el primer ataque de colisión contra SHA-1

Hace pocos días se produjo un hito importante en el mundo de la seguridad informática. Era algo que los expertos llevaban años esperando y advirtiendo que sucedería: el primer ataque contra el algoritmo de hashing SHA-1 mediante colisión conseguido con éxito. Es lo que conocemos ahora como SHAttered attack.

Los responsables de encontrarlo han sido expertos de Google y otras organizaciones como el CWI (Centrum Wiskunde & Informatica) de Holanda, quienes han conseguido por fín una colisión en este anciano sistema de hashing, el SHA-1, sobre el que aún descansa gran parte de internet. La demostración práctica se nos brinda mediante dos documentos en PDF, de contenido diferente pero con el mismo hash.

SHAttered attack

Llegar a semejante hito no ha sido barato, ni en tiempo ni en dinero. Mediante el uso de servidores en la nube de EC2 (Amazon) durante varios meses, los responsables del proyecto lo dejan claro en su documentación:

Hemos sido capaces de encontrar esta colisión combinando varias formas de cripto-análisis complejo y mejorando nuestras técnicas anteriores. En total, el esfuerzo computacional necesario equivale a 263,1 compresiones SHA-1 y ha necesitado 6500 años de uso de CPU y 100 de GPU.

Ya en 2015 un grupo de investigadores demostraron que el coste de un ataque contra SHA-1 sería menor de lo que estaba estimado. El presente ataque parece haber costado entre 70000 y 110000 € en coste de alquiler de servidores cloud.

Hasta ahora se había intentado romper este algoritmo de hash mediante ataques de fuerza bruta, algo que ya se advertía desde 2010. Sin embargo, el coste era prohibitivo, y es que en comparación el ataque SHAttered es 100000 veces más rápido.

Ataque exitoso contra SHA-1, algo esperado

El algoritmo SHA-1 data del año 1995 y fue desarrollado por la NSA de EEUU, como parte de su algoritmo de firma digital segura. Este mecanismo de firma se utiliza para cosas muy variadas, siendo principalmente empleado al firmar certificados web, documentos digitales (con pleno valor legal), sistemas de copia de seguridad, firmas seguras de email PGP/GPG, diversos checksums utilizados en descargas e ISOs e incluso en GIT.

pdf_format

La prueba se ha proporcionado utilizando dos documentos PDF de diferente contenido, pero arrojando ambos el mismo hash.

Las dos fases del ataque

  1. La primera fase tuvo lugar en un cluster de CPUs heterogéneo (hospedado por Google) y que se repartía en 8 ubicaciones diferentes.
  2. La segunda fase fué desarrollada utilizando un cluster de GPUs de tipo K20, K40 y K80, todas propiedad de Google.

El coste estimado para la segunda fase del ataque a SHA-1, si tenemos en cuenta lo anterior y lo cotejamos con precios de instancias cloud Amazon, estaría cercano a 550000 €.

Las buenas noticias

Además de encontrar una herramienta para comprobar archivos frente a posibles ataques de colisión en su web, podemos tener la seguridad de que Chrome ya ofrece protección para avisarnos de certificados TLS inseguros. Firefox, por su parte, ha adelantado su abandono de SHA-1, algo que ha ocurrido con fecha de 24/02/2017.

Además, los documentos guardados o enviados a/desde Gmail o Google Drive ya están protegidos frente a este tipo de ataque.

Las malas…

A pesar de haberse descontinuado como estandar desde 2011 por el NIST, siendo recomendable su abandono, la industria aún utiliza ampliamente este mecanismo de cifrado. GIT podría ser afectado por una colisión de este tipo.

Medidas a considerar

SHA-1 debe ser sustituído inmediatamente en favor de SHA-3 o SHA-256. La integridad de los hashes se puede comprobar usando la citada herramienta de shattered.io, que además está disponible de forma pública en Github.

Deja tu comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s