
CVE-2021-42392 H2 DatabaseのTCP経由のRCEをテストするための制御されたラボ環境。脆弱なH2サーバ、Pythonエクスプロイトスクリプト、および倫理的なペネトレーションテスティングと教育のためのDockerセットアップが含まれています。
このリポジトリは、CREATE ALIAS 機能を使用して H2 Database のリモートコード実行脆弱性 (CVE-2021-42392) をテストするための、最小限かつ制御された環境を提供します。多くのデモとは異なり、このエクスプロイトは H2 Web コンソールに依存せず、H2 TCP サービス(通常ポート 9092)を直接ターゲットにします。
🛑 教育およびテスト目的のみに使用してください。自分が所有していない、または明示的な許可を得ていないシステムで使用しないでください。
CVE-2021-42392 は、H2 Database バージョン 2.0.206 未満の深刻な脆弱性であり、データベースが TCP または Web コンソール経由で公開されている場合、CREATE ALIAS を介したリモートコード実行を可能にします。
このプロジェクトには以下が含まれます:
jaydebeapi と JPype を使用した Python エクスプロイトスクリプトDocker を使用する場合:
Docker 外部でエクスプロイトを実行する場合:
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"
引数:
--url:脆弱な H2 インスタンスの JDBC URL(例:jdbc:h2:tcp://192.168.1.100\:9092/~/test)--cmd:脆弱なサーバー上で実行するコマンド--jar:H2 ドライバ JAR へのパス(オプション、デフォルト:/jars/h2.jar)ポート 9092 が開放されていることjavac コンパイラがインストールされていることこのコードは、教育目的および隔離された環境での倫理的な侵入テストのために現状のまま提供されます。許可のないシステムで使用しないでください。著者は悪用について一切の責任を負いません。