Heartbleed es una vulnerabilidad en la biblioteca de código abierto OpenSSL. Este bug permite a un atacante leer la memoria de un servidor o un cliente, permitiéndole por ejemplo, conseguir las claves privadas SSL de un servidor. Por tanto para practicar con esta vulnerabilidad del certificado SSL vamos a montar un contenedor de docker para ello desde este repositorio: vulhub/openssl/CVE-2014-0160 at master · vulhub/vulhub (github.com)
Lo descargamos:
Ahora lo montamos:
Y vemos que lo tenemos corriendo por el puerto 8443 de nuestra máquina que a su vez redirige al 443 del contenedor:
Y vemos que ya tenemos la web operativa:
Y ahora si le pasamos un escaneo con sslcan vemos que es vulnerable SSLSCAN - Analizar Certificado SSL en webs HTTPS:
Dentro de este mismo directorio, en el repositorio que nos hemos descargado, tenemos un exploit de python para lanzar este ataque llamado ssltest.py; por tanto vamos a ejecutarlo contra la máquina:
Y vemos que nos devuelve información de la memoria interna de la máquina:
Vemos que nos sale siempre lo mismo, pero podemos filtrar esta salida con el comando grep -v:
python3 ssltest.py 127.0.0.1 -p 8443 | grep -v '00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'