
Un escáner de seguridad basado en Python para identificar la vulnerabilidad CVE-2025-31324 en sistemas SAP Visual Composer, y detectar Indicadores de Compromiso (IOCs) conocidos, como archivos .jsp maliciosos.
Un escáner de seguridad basado en Python para identificar la vulnerabilidad CVE-2025-31324 en sistemas SAP Visual Composer, y detectar Indicadores de Compromiso (IOCs) conocidos como archivos .jsp maliciosos.
.jsp maliciosos conocidos (webshells)requests (instalada vía requirements.txt)# 1. Clone the repository
git clone https://github.com/youruser/CVE-2025-31324.git
cd CVE-2025-31324
# 2. Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
scan.py # Escáner principal
targets.csv # Lista de objetivos de entrada
ioc_list.txt # Lista opcional de firmas IOC
results.csv # Informe de salida (si se usa --output)
requirements.txt # Dependencias de Python
Cree un archivo llamado targets.csv con el siguiente formato separado por punto y coma con IP, Puerto y opción SSL:
192.168.1.10;50000;false
myunsafelocation.example.com;443;true
10.0.0.5;8080;false
true, false, yes o noCree un archivo llamado ioc_list.txt:
# Default IOCs
cache.jsp
helper.jsp
nzwcnktc.jsp
# Add your own signatures
shell.jsp
webadmin.jsp
python3 scan.py --input targets.csv
| Flag | Description |
|---|---|
--iocfile | Ruta a la lista IOC personalizada () |
python3 scan.py --input targets.csv --iocfile ioc_list.txt --output results.csv --verbose
El script imprime un bloque de resultado para cada host:
__________________________________
✅ Target 1 : 192.168.1.10:50000
Connection: Online
Status: Not Vulnerable
IOC: None detected
__________________________________
| Icon | Meaning |
|---|---|
| ✅ | Seguro (No vulnerable, sin IOCs) |
| ❗ | Vulnerable, pero sin IOCs encontrados |
| 💥 | Vulnerable + IOC(s) detectados |
| ❌ | Host no accesible / conexión fallida |
Para probar localmente, ejecute un servidor HTTP de Python simulando un sistema SAP vulnerable:
mkdir -p test/developmentserver
mkdir -p test/irj
echo "" > test/developmentserver/metadatauploader
echo "<%-- fake webshell --%>" > test/irj/cache.jsp
cd test
python3 -m http.server 8000
Agregue a targets.csv:
0.0.0.0;8000;false
Esta herramienta se proporciona solo para pruebas de seguridad e investigación autorizadas. No la utilice contra sistemas que no posea o para los que no tenga permiso explícito para escanear.
Para sugerencias o mejoras, abra un issue o envíe un PR.
Este proyecto está licenciado bajo la Licencia MIT.
Eres libre de usarlo, modificarlo y distribuirlo — comercial o privadamente.
Descargo:
Esta herramienta se proporciona tal cual, sin ninguna garantía.
Los autores no son responsables por ningún daño o problema legal causado por su uso.
Úsela solo en entornos donde tenga autorización explícita para escanear y probar sistemas.
.txt--output o -o | Guardar resultados en CSV |
--verbose o -v | Habilitar salida de depuración detallada |