24May, 2017
0Comments

La primera colisión de SHA-1 real tras el experimento de Google

La primera colisión de SHA-1 real tras el experimento de Google

SHA-1 (Secure Hash Algorithm 1), es un código de encriptación desarrollado por la NSA. Tras una década de advertencias sobre sus vulnerabilidades, se ha seguido utilizando para garantizar la seguridad de las conexiones a Internet, garantizar la integridad de los datos, etc. Hasta que Google consiguió romperlo, provocando la primera colisión de SHA-1 de la historia. En la jerga informática, un ataque de colisión o colisión de hash es lo que sucede cuando dos inputs distintos introducidos en una función de hash producen el mismo output. La posibilidad de que eso ocurra es el talón de Aquiles de SHA-1, y es la responsable de que finalmente haya quedado obsoleto.

La encriptación algorítmica con SHA-1 consiste en cifrar un mensaje con un código basado en números y letras que funciona como hash o huella criptográfica. Pero SHA-1 podía teóricamente quebrantarse mediante una colisión de hash, y eso es lo que consiguió Google el pasado día 23 de febrero. SHA-1 ha pasado a la historia, y los sistemas que lo integran deberán darse prisa para sustituirlo por otro sistema de cifrado.

Pocos días después de que Google pusiera de manifiesto la obsolescencia de SHA-1, se ha producido una auténtica colisión de hash hacia este algoritmo de encriptación, cumpliéndose la profecía. Pero veamos antes en qué consistió la colisión llevada a cabo por el gigante de Mountain View.

El experimento de colisión de SHA-1 de Google

En colaboración con el Centrum Wiskunde & Informatica (CWI) de Holanda, Google. La estrategia de colisión, bautizada por el equipo como “SHAttered“, consistió en la elaboración de dos archivos PDF con diferente contenido, pero con el mismo hash. Para ello se tuvo que utilizar la nube de Amazon y varios superordenadores dotados con procesadores Intel Xenon y tarjetas gráficas NVIDIA, en una operación que duró meses y que costó un total de 110.000 dólares.

El método empleado por Google para vulnerar SHA-1 es hasta 100.000 veces más rápido que un ataque por fuerza bruta. El mismo proceso hubiera llevado 110 años con una sola tarjeta gráfica. La colisión precisó de 9,2 trillones de computaciones SHA-1.

El hecho de que dos documentos compartan el mismo código cifrado puede utilizarse para alterar las funciones hash y acceder a cualquier otra cuenta que utilice cifrado SHA-1.

Primera colisión de SHA-1 “real” tras la demostración de Google

Tras derrotar a SHA, Google dio un plazo de 90 días (todavía está vigente el plazo) para que los sistemas que emplean esta tecnología de cifrado la abandonen y sustituyan por otra, antes de lanzar el procedimiento SHAttered para que cualquiera pueda replicar el experimento.

Sin embargo, en menos de una semana tuvo lugar una colisión real, llevada a cabo por un desarrollador de WebKit, que subió los dos archivos PDF con el mismo hash a su repositorio Subversión para ver cómo se comportaría el motor web en caso de colisión.

El repositorio dejó de funcionar de forma prácticamente inmediata, provocando una serie de desastres consecutivos. Tras eliminar manualmente los dos PDF, el repositorio seguía sin funcionar. El desarrollador tuvo que revertir todos los cambios de forma manual desde el servidor.

Aunque los expertos aseguran que el problema se puede solucionar con parches y scripts, la colisión del repositorio viene a reforzar la tesis de que es necesario abandonar cuanto antes SHA-1 por otros algoritmos como SHA-3 o SHA-256.

About The Author


Read more

Post A Comment

Your email address will not be published. Required fields are marked *