lunes, 6 de octubre de 2014

Factorizando clave RSA 1024 bits en 20 minutos!!!

Hola, muy buenas a todos!!

La semana pasada, se celebró en tierras Manchegas , más concretamente en Albacete, el “cuartocongreso de Seguridad Navaja Negra” en el cual se desarrollaron una gran variedad de talleres y charlas sobre seguridad informática, contando con algunos de los mayores expertos de seguridad del país como Lorenzo Martínez(Securízame / Security by Default) o el gran Chema Alonso y su presentación “No me cachees que me indexo”, entre otros.

Hoy me quería centrar en una de las charlas que expuso un miembro, presentándonos una herramienta que permite explotar una vulnerabilidad en RSA de 1024 bits de longitud en una librería OpenSSL, factorizando dicha clave en unos 20 minutos con la potencia de un ordenador convencional de casa.


Antes de explicaros como hace esto la herramienta, vamos a ver que es eso de RSA y para que se utiliza.

RSA, es un sistema criptográfico de clave pública (método criptográfico que usa un par de claves para el envío de mensajes), desarrollado en 1977, cuya seguridad radica en el problema que se nos presenta a la hora de factorizar números enteros. El funcionamiento se basa en el producto de dos números primos grandes elegidos al azar, los cuales actualmente son del orden de diez elevado a doscientos. Como os podéis imaginar, esto es bastante complejo y se pensaba que solo la computación cuántica podría dar una solución a este problema de factorización.

La herramienta que se nos presentaba se llama RSAhack, y lo que hace es explotar un fallo de implementación de RSA en OpenSSL (fallo que se encuentra en todas las versiones) mediante fuerza bruta (forma de recuperar una clave probando todas las combinaciones posibles hasta encontrar aquella que permite el acceso).
OpenSSL genera una clave mediante la función rsa_builtin_keygen dentro del directorio /crypto/rsa/rsa_gen.c



Para que nosotros podamos atacar una clave de 1024 bits necesitamos atacar una de 512bits y como vemos en el código en la parte final se divide en dos la clave quedando una de 512,5 bits y otra de 511,5 bits.

A continuación pinchando aquí podéis descargar de forma totalmente gratuita esta herramienta.

Si os interesa más información sobre esta herramienta y el RSA en general, os dejo aquí debajo la página web oficial del autor de la herramienta y su vídeo demostrándonos como se hace.


Un saludo a tod@s y no os olvidéis de comentar para ir mejorando mi blog :D

No hay comentarios:

Publicar un comentario