
Prueba de concepto de exploit para CVE-2025-59287, una vulnerabilidad de ejecución remota de código en Microsoft WSUS mediante deserialización insegura. Envía solicitudes SOAP manipuladas para desencadenar la ejecución de código bajo SYSTEM.
⚠ Esta herramienta se crea únicamente con fines educativos. El uso no autorizado fuera de entornos controlados está estrictamente prohibido.
CVE-2025-59287 es una vulnerabilidad crítica de ejecución remota de código en Microsoft Windows Server Update Services (WSUS). Se origina por una deserialización insegura de datos dentro de los componentes de WSUS, lo que permite a un atacante remoto no autenticado hacer que el servicio deserialice un objeto .NET manipulado y ejecute código arbitrario bajo la cuenta SYSTEM. La vulnerabilidad se explota comúnmente enviando solicitudes SOAP especialmente diseñadas a los endpoints web de WSUS. Este repositorio se creó para demostrar una prueba de concepto de esta vulnerabilidad.
Esta PoC espera un payload serializado con .NET BinaryFormatter y codificado en Base64. Si no se proporciona ningún payload, se usará un payload benigno de calculadora en su lugar. Hay varias formas de usar un payload personalizado.
Simplemente inserte su payload en payload.txt.
YOUR_PAYLOAD
El código usará el payload de este archivo.
Segunda opción: Puede agregar su payload manualmente. Abra exp.py y localice el siguiente bloque. Reemplace 'your_payload' con su payload .NET BinaryFormatter codificado en Base64.
...
if not args.no_wait:
time.sleep(0.02)
injected = payload_text or 'your_payload'
success, event_id, target_sid = send_malicious_event(target, cookie, injected)
...
python exp.py http://example.local:8533
(reemplace http://example.local:8530 con la URL del servidor WSUS objetivo)
encrypt.py prepara un blob que parece los datos cifrados/empaquetados que WSUS espera; exp.py construye y envía solicitudes SOAP que colocan ese blob en los campos de WSUS que el servicio vulnerable descifrará y deserializará — si el servidor es vulnerable, el objeto deserializado puede desencadenar la ejecución de código.
Esta herramienta se crea únicamente con fines educativos. El uso no autorizado fuera de entornos controlados está estrictamente prohibido.