
Ambiente di laboratorio controllato per testare la RCE del database H2 CVE-2021-42392 tramite TCP. Include server H2 vulnerabile, script exploit Python e configurazione Docker per test di penetrazione etici e formazione.
Questo repository fornisce un ambiente minimale e controllato per testare la vulnerabilità di esecuzione remota di codice del database H2 (CVE-2021-42392) utilizzando la funzionalità CREATE ALIAS. A differenza di molte dimostrazioni, questo exploit prende di mira direttamente il servizio TCP di H2 (tipicamente sulla porta 9092), senza fare affidamento sulla console web di H2.
🛑 Solo per scopi educativi e di test. Non utilizzare su sistemi che non possiedi o per i quali non hai esplicita autorizzazione al test.
CVE-2021-42392 è una vulnerabilità critica nelle versioni del database H2 precedenti alla 2.0.206 che consente l'esecuzione remota di codice tramite CREATE ALIAS se il database è esposto tramite TCP o tramite la console web.
Questo progetto include:
2.0.202jaydebeapi e JPypeCon Docker:
Se si esegue l'exploit al di fuori di 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"
Argomenti:
--url: URL JDBC dell'istanza H2 vulnerabile (es. jdbc:h2:tcp://192.168.1.100\:9092/~/test)--cmd: Comando da eseguire sul server vulnerabile--jar: Percorso opzionale del JAR del driver H2 (default: /jars/h2.jar)9092 aperta del database H2 vulnerabilejavac installato sul server che esegue il database vulnerabileQuesto codice è fornito così com'è per scopi educativi e di penetration testing etico in ambienti isolati. Non utilizzarlo su sistemi non autorizzati. L'autore non si assume alcuna responsabilità per un uso improprio.