Nueva técnica de ataque de canal lateral para recuperar claves ECDSA

Investigadores de la Universidad. Masaryk descubierto Información sobre vulnerabilidades en varias implementaciones del algoritmo de creación de firma digital ECDSA/EdDSA, que permite restaurar el valor de una clave privada basándose en un análisis de las fugas de información sobre bits individuales que surgen al utilizar métodos de análisis de terceros. Las vulnerabilidades recibieron el nombre en código Minerva.

Los proyectos más conocidos afectados por el método de ataque propuesto son OpenJDK/OracleJDK (CVE-2019-2894) y la biblioteca librería (CVE-2019-13627) utilizado en GnuPG. También susceptible al problema. MatrizSSL, Crypto ++, loboCripta, elíptico, jsrsasign, Python-ecdsa, ruby_ecdsa, fastecdsa, fácil-ecc y tarjetas inteligentes Athena IDProtect. No probadas, pero las tarjetas Valid S/A IDflex V, SafeNet eToken 4300 y TecSec Armored Card, que utilizan un módulo ECDSA estándar, también se declaran como potencialmente vulnerables.

El problema ya se solucionó en las versiones de libgcrypt 1.8.5 y wolfCrypt 4.1.0, los proyectos restantes aún no han generado actualizaciones. Puede realizar un seguimiento de la solución para la vulnerabilidad en el paquete libgcrypt en las distribuciones de estas páginas: Debian, Ubuntu, RHEL, Fedora, abiertoSUSE/SUSE, FreeBSD, Arco.

Vulnerabilidades no susceptible OpenSSL, Botan, mbedTLS y BoringSSL. Aún no probado Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL en modo FIPS, Microsoft .NET crypto,
libkcapi del kernel de Linux, Sodium y GnuTLS.

El problema se debe a la capacidad de determinar los valores de bits individuales durante la multiplicación escalar en operaciones de curva elíptica. Para extraer información de bits se utilizan métodos indirectos, como la estimación del retraso computacional. Un ataque requiere acceso sin privilegios al host en el que se genera la firma digital (no excluido y un ataque remoto, pero es muy complicado y requiere una gran cantidad de datos para su análisis, por lo que puede considerarse poco probable). Para cargar esta disponible herramientas utilizadas para el ataque.

A pesar del insignificante tamaño de la filtración, para ECDSA la detección de incluso unos pocos bits con información sobre el vector de inicialización (nonce) es suficiente para llevar a cabo un ataque y recuperar secuencialmente toda la clave privada. Según los autores del método, para recuperar con éxito una clave, es suficiente analizar entre varios cientos y miles de firmas digitales generadas en mensajes conocidos por el atacante. Por ejemplo, se analizaron 90 mil firmas digitales utilizando la curva elíptica secp256r1 para determinar la clave privada utilizada en la tarjeta inteligente Athena IDProtect basada en el chip Inside Secure AT11SC. El tiempo total de ataque fue de 30 minutos.

Fuente: opennet.ru

Añadir un comentario