NEGOCIOS

Claves PGP, seguridad de software y mucho más amenazado por el nuevo exploit SHA1

Claves PGP, seguridad de software y mucho más amenazado por el nuevo exploit SHA1

Hace tres años, Ars declaró oficialmente muerto el algoritmo hash criptográfico SHA1 después de que los investigadores realizaran la primera instancia conocida en el mundo de un exploit fatal conocido como «colisión» en él. El martes, el caballo SHA1 muerto fue golpeado nuevamente cuando un equipo diferente de investigadores reveló un nuevo ataque que es significativamente más poderoso.

La nueva colisión brinda a los atacantes más opciones y flexibilidad de las que estaban disponibles con la técnica anterior. Hace que sea práctico crear claves de cifrado PGP que, cuando se firman digitalmente con el algoritmo SHA1, se hacen pasar por un objetivo elegido. De manera más general, produce el mismo hash para dos o más entradas elegidas por el atacante agregando datos a cada una de ellas. El ataque revelado el martes también cuesta tan solo $ 45,000 para llevar a cabo. El ataque revelado en 2023, por el contrario, no permitió falsificaciones en prefijos de documentos predeterminados específicos y se evaluó en un costo de $ 110,000 a $ 560,000 en la plataforma de servicios web de Amazon, según la rapidez con la que los adversarios quisieran llevarlo a cabo.

El nuevo ataque es significativo. Si bien SHA1 se ha eliminado gradualmente durante los últimos cinco años, aún está lejos de estar completamente obsoleto. Sigue siendo la función hash predeterminada para certificar claves PGP en la versión heredada 1.4 de GnuPG, el sucesor de código abierto de la aplicación PGP para cifrar correo electrónico y archivos. Esas firmas generadas por SHA1 fueron aceptadas por la rama moderna de GnuPG hasta hace poco, y solo fueron rechazadas después de que los investigadores detrás de la nueva colisión informaran sus resultados en privado.

Git, el sistema más utilizado en el mundo para administrar el desarrollo de software entre varias personas, todavía se basa en SHA1 para garantizar la integridad de los datos. Y muchas aplicaciones no web que dependen del cifrado HTTPS aún aceptan certificados SHA1. SHA1 también está permitido para las firmas dentro del protocolo en los protocolos Transport Layer Security y Secure Shell.

En un documento presentado en el Real World Crypto Symposium de esta semana en la ciudad de Nueva York, los investigadores advirtieron que incluso si el uso de SHA1 es bajo o se usa solo para compatibilidad con versiones anteriores, dejará a los usuarios expuestos a la amenaza de ataques que degradan las conexiones cifradas a las rotas. función hash. Los investigadores dijeron que sus resultados subrayan la importancia de eliminar completamente SHA1 en todos los ámbitos lo antes posible.

“Este trabajo muestra de una vez por todas que SHA1 no debe usarse en ningún protocolo de seguridad en el que se espere algún tipo de resistencia a la colisión de la función hash”, escribieron los investigadores. “El uso continuo de SHA1 para certificados o para la autenticación de mensajes de protocolo de enlace en TLS o SSH es peligroso y existe un riesgo concreto de abuso por parte de un adversario bien motivado. SHA1 se ha roto desde 2004, pero todavía se usa en muchos sistemas de seguridad; Recomendamos encarecidamente a los usuarios que eliminen la compatibilidad con SHA1 para evitar ataques de degradación”.

Una cartilla de hash

En resumen, un hash es una huella digital criptográfica de un mensaje, archivo u otro tipo de entrada digital que, como las huellas digitales tradicionales, parece única. También conocidos como resúmenes de mensajes, los hashes juegan un papel vital para garantizar que las actualizaciones de software, las claves criptográficas, los correos electrónicos y otros tipos de mensajes sean el producto auténtico de una persona o entidad específica, a diferencia de una entrada falsificada creada por un adversario. Estas huellas digitales vienen en forma de una secuencia fija de números y letras que se generan cuando el mensaje se ingresa en una función o algoritmo hash.

Toda la seguridad de un esquema de hashing se basa en la imposibilidad de encontrar dos o más entradas diferentes que produzcan las mismas huellas dactilares. Una función con una longitud de bits de n debería requerir un atacante de fuerza bruta para probar 2n/2 entradas antes de encontrar una colisión (un concepto matemático conocido como la paradoja del cumpleaños reduce significativamente la cantidad de conjeturas requeridas, lo que representa el n/2 en la ecuación). Las funciones hash con longitudes de bits suficientes y resistencia a colisiones son seguras porque requieren que un atacante dedique una cantidad de tiempo y recursos informáticos inviable para generar una colisión. Las funciones hash se consideran rotas cuando las colisiones se pueden encontrar usando menos de 2n/2 intentos.

La función hash MD5 de 128 bits fue uno de los primeros participantes ampliamente utilizados para caer en ataques de colisión. Aunque los investigadores advirtieron ya en 1996 que las fallas en MD5 lo hacían propenso a colisiones, siguió siendo una parte clave del software y la autenticación web durante más de dos décadas después.

Luego, en 2008, los investigadores utilizaron colisiones MD5 para crear un certificado HTTPS para cualquier sitio web de su elección. La demostración finalmente convenció a las autoridades de certificación confiables de los navegadores para que eliminaran MD5, pero la función continuó usándose ampliamente para otros fines. La desaprobación total de MD5 con fines de autenticación no se produjo hasta 2012, cuando el malware de espionaje Flame, que se informa que EE. podría propagarse de computadora a computadora dentro de una red infectada.

SHA1 está demostrando seguir un camino asombrosamente similar al de MD5. Siendo ya una parte clave del estándar oficial para validar actualizaciones de software, claves criptográficas y otros datos confidenciales, SHA1 se volvió aún más vital después de la desaparición de MD5. Pero también tenía vulnerabilidades de colisión que se conocen desde 2004. La dificultad de hacer la transición a algoritmos más nuevos con mejor resistencia a colisiones permitió que SHA1 se mantuviera en uso a gran escala incluso después de 2023, cuando los investigadores predijeron que podría sucumbir a los ataques de colisión por años. final.

SHA1 está muerto. Larga vida a SHA1

Unos 16 meses después, los investigadores demostraron el primer ataque de colisión conocido del mundo contra SHA1. Llegó en forma de dos archivos PDF que, a pesar de mostrar contenido diferente, tenían el mismo hash SHA1. Los investigadores detrás de esto dijeron que podría permitir que un propietario redacte dos contratos de alquiler con hashes que colisionan. El propietario podría hacer que un inquilino firme digitalmente un documento que ofrece un precio de alquiler bajo y luego reclamar que el inquilino firmó el contrato de arrendamiento acordando un precio mucho más alto.

El ataque, que costó tan solo $ 110,000 para llevar a cabo en la plataforma de computación en la nube de Amazon, fue lo que los criptógrafos llaman un ataque de colisión clásico. También conocida como colisión de prefijos idénticos, se produce cuando dos entradas tienen el mismo prefijo predeterminado, o el mismo comienzo, y datos diferentes a continuación. Aunque las dos entradas son claramente diferentes, pueden generar el mismo valor si se agregan datos adicionales a los archivos. Dicho de otra manera, para una función hash H, dos mensajes distintos M1 y M2 conducirán a la misma salida hash: H(M1) = H(M2).

Las colisiones de prefijos idénticos son poderosas y un golpe fatal contra la seguridad de una función hash, pero su utilidad para los atacantes también es limitada. Una forma de colisión mucho más poderosa se conoce como ataque de prefijo elegido, que es lo que permitió los ataques MD5 contra el sistema de certificados HTTPS en 2008 y contra el mecanismo de actualización de Microsoft en 2012. Si bien es más difícil de llevar a cabo que las colisiones de prefijo idéntico, el prefijo elegido los primos son generalmente mucho más útiles.

Esto se debe a que los ataques de prefijos elegidos permiten a los atacantes tomar dos o más prefijos diferentes, a diferencia del mismo prefijo en los ataques de colisión tradicionales, y agregar datos a cada uno para que tengan el mismo valor. Dados dos prefijos de mensaje P1 y P2, un atacante puede calcular dos mensajes M1 y M2 tales que H(P1 || M1) = H(P2 || M2), donde || denota «concatenación», o el acto de vincular los dos. Una explicación más detallada de las colisiones de prefijos elegidos está disponible en esta publicación de 2023 de Nick Sullivan, jefe de investigación y criptografía en la red de entrega de contenido Cloudflare.

Suplantación de identidad de PGP/GnuPG

El ataque demostrado el martes es la primera colisión de prefijo elegido conocida en SHA1. Para demostrar su potencia, los investigadores Gaëtan Leurent y Thomas Peyrin de Inria Francia y la Universidad Tecnológica de Nanyang en Singapur, respectivamente, utilizaron la colisión para realizar un ataque de suplantación de identidad PGP/GnuPG. En su artículo Real World Crypto, los investigadores explican:

Los prefijos elegidos corresponden a cabeceras de dos certificados de identidad PGP con claves de diferente tamaño, una clave RSA-8192 y una clave RSA-6144. Al explotar las propiedades del formato OpenPGP y JPEG, podemos crear dos claves públicas: la clave A con el nombre de la víctima y la clave B con el nombre y la imagen del atacante, de modo que el certificado de identidad que contiene la clave y la imagen del atacante tiene el mismo SHA- 1 hash como certificado de identidad que contiene la clave y el nombre de la víctima. Por lo tanto, el atacante puede solicitar una firma de su clave e imagen de un tercero (de Web of Trust o de una CA) y transferir la firma a la clave A. La firma seguirá siendo válida debido a la colisión, mientras que el atacante llave de controles A con el nombre de la víctima, y ​​firmada por el tercero. Por tanto, puede hacerse pasar por la víctima y firmar cualquier documento a su nombre.

En una publicación que demuestra aún más el ataque, los investigadores proporcionaron tanto el mensaje A como el mensaje B. A pesar de contener diferentes prefijos de ID de usuario, ambos se asignan al mismo valor hash SHA1 de 8ac60ba76f1999a1ab70223f225aefdc78d4ddc0.

Los resultados de los investigadores mejoran significativamente la eficiencia de los ataques SHA1, con un factor de aceleración de aproximadamente 10. Más precisamente, los nuevos ataques reducen el costo de un ataque de colisión de prefijo idéntico de 264.7 a 261.2y el costo de un ataque de colisión de prefijo elegido de 267.1 a 263.4 cuando se realiza en un procesador de gráficos GTX 970.

Los investigadores llevaron a cabo el ataque durante un período de dos meses en un grupo de 900 GPU Nvidia GTX 1060 que alquilaron en línea. Dijeron que el clúster alquilado es una plataforma mucho más económica que Amazon Web Services y los servicios en la nube de la competencia. El ataque costó $74,000 cuando se llevó a cabo hace unos meses, pero con una implementación optimizada y costos de computación que han seguido cayendo, los investigadores dicen que el mismo ataque ahora cuesta $45,000. Para 2025, los investigadores estiman que el ataque costará 10.000 dólares. El resultado: los mismos ataques de prefijo elegido que han sido posibles contra MD5 desde 2009 ahora también son prácticos contra SHA1 y solo serán más asequibles con el tiempo.

SHA1: Que (por fin) descanse en paz

Los investigadores informaron en privado de sus resultados a los desarrolladores del software más afectado. Incluyeron desarrolladores para:

  • GnuPG. Los desarrolladores respondieron implementando una contramedida en noviembre que invalida las firmas de identidad basadas en SHA1 que se crearon después de enero de 2023.
  • CAcert, una autoridad de certificación que emite claves PGP. Los investigadores notaron una gran cantidad de claves emitidas por CAcert con firmas SHA1 recientes en servidores de claves públicas. Eso puede indicar que la CA todavía usa SHA1 para firmar claves de usuario. CAcert ha reconocido el problema y planea alejarse de SHA1.
  • OpenSSL, una biblioteca criptográfica que continúa aceptando certificados SHA1 en muchos contextos sensibles a la seguridad. Los desarrolladores respondieron diciendo que están considerando deshabilitar SHA1 en esos contextos.

Sin embargo, dada la cantidad de aplicaciones y protocolos que continúan confiando en SHA1 para hashes resistentes a colisiones, los investigadores no pudieron contactar a todos los desarrolladores afectados. Para evitar que los ataques se utilicen activamente en la naturaleza, los investigadores están reteniendo muchos de los detalles de la colisión por el momento.

Matt Green, profesor de la Universidad Johns Hopkins especializado en criptografía, dijo que los resultados fueron impresionantes y subrayó la observación repetida de que SHA1 ya no puede considerarse seguro.

“Para una función hash segura, un [speedup] factor de 10 no debería marcar una gran diferencia, pero cuando tienes algo que está bastante cerca de romperse, ese tipo de eficiencias realmente marcan la diferencia, especialmente cuando hay mucho hardware de minería disponible”, dijo en un entrevista. “Sabíamos que un zapato se había caído y este es el próximo zapato”.

Imagen del listado por Westend61 / Getty Images

Artículo Recomendado:  IBM se dividirá en dos empresas a finales de 2023

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba