
Kontrollierte Laborumgebung zum Testen von CVE-2021-42392 H2 Database RCE via TCP. Enthält einen verwundbaren H2-Server, Python-Exploit-Skript und Docker-Setup für ethische Penetrationstests und Schulungen.
Dieses Repository bietet eine minimale und kontrollierte Umgebung zum Testen der H2-Datenbank-Remote-Code-Execution-Sicherheitslücke (CVE-2021-42392) mithilfe der CREATE ALIAS-Funktion. Anders als viele Demonstrationen zielt dieser Exploit direkt auf den H2-TCP-Dienst ab (typischerweise auf Port 9092), ohne auf die H2-Webkonsole angewiesen zu sein.
🛑 Nur zu Bildungs- und Testzwecken. Nicht auf Systemen verwenden, die dir nicht gehören oder für die du keine ausdrückliche Erlaubnis zum Testen hast.
CVE-2021-42392 ist eine kritische Sicherheitslücke in H2-Datenbankversionen vor 2.0.206, die die Ausführung von Remote-Code über CREATE ALIAS ermöglicht, wenn die Datenbank über TCP oder die Webkonsole offengelegt ist.
Dieses Projekt umfasst:
2.0.202jaydebeapi und JPypeMit Docker:
Wenn der Exploit außerhalb von Docker ausgeführt wird:
git clone https://github.com/Be-Innova/CVE-2021-42392-exploit-lab
cd h2-cve-2021-42392-poc
docker compose build
docker compose up -d
docker compose exec client bash
python3 h2_exploit.py --url jdbc:h2:tcp://h2-vulnerable\:9092/~/test --cmd "touch /tmp/pwned" --jar /jars/h2.jar
python3 h2_exploit.py --url <jdbc-url> --cmd "<command>" --jar "path-to-jar"
Argumente:
--url: JDBC-URL der verwundbaren H2-Instanz (z. B. jdbc:h2:tcp://192.168.1.100\:9092/~/test)--cmd: Befehl, der auf dem verwundbaren Server ausgeführt werden soll--jar: Optionaler Pfad zur H2-Treiber-JAR (Standard: /jars/h2.jar)Port 9092 der verwundbaren H2-Datenbank offenjavac-Compiler auf dem Server installiert, der die verwundbare Datenbank ausführtDieser Code wird wie besehen für Bildungs- und ethische Penetrationstests in isolierten Umgebungen bereitgestellt. Verwenden Sie ihn nicht auf nicht autorisierten Systemen. Der Autor übernimmt keine Verantwortung für Missbrauch.