[Bee-box] SQL ์ธ์ ์ - POST/Select
- -
์ด๋ฒ ํฌ์คํ ์ SQL์ธ์ ์ POST/Select ์ ๋๋ค.
GET/select ๋ฐฉ๋ฒ๊ณผ ์ ์ฌํ์ง๋ง, ๋ฐฉ์์ ์ฐจ์ด๋ ์ฐธ๊ณ ํด์ฃผ์ธ์.
์ค์ตํ๋ ๋ชจ๋ ๊ณต๊ฒฉ์ ์ค์ ๋ก ์ฌ์ฉํ์๋ฉด ์๋ฉ๋๋ค.
ํ์ฉ๋ฐ์ง ์์ ์๋น์ค ๋์์ ํดํน์ ์๋ํ๋ ํ๋์ ๊ธ์งํ๋ฉฐ,
๋ชจ๋ ๋ฒ์ ์ฑ ์์ ์ฌ์ฉ์์๊ฒ ์๋ ๊ฒ์ ๋ช ์ฌํด์ฃผ์ธ์.
๋์ด๋ ํ
SQL ์ธ์ ์ - POST/Select ๋ฐฉ๋ฒ์ผ๋ก ์ ์ํ๊ธฐ
๋ฐฉ์์ SQL(GET/Select)๋ฐฉ์๊ณผ ๋งค์ฐ ์ ์ฌ ํ์ง๋ง, ์ ์ก๋ฐฉ์์ ์ฐจ์ด๊ฐ ์์ต๋๋น.
'sqli_13.php' ํ์ด์ง๋ ๋๋กญ๋ค์ด ๋ฉ๋ด๋ฅผ ์ฌ์ฉํ์ฌ ์ ํํ ์ํ์ ์ ๋ณด๋ฅผ ํ๋ก ๋ณด์ฌ์ฃผ๋ค์.
ํ์ง๋ง! sqli_2.php์ ๋ค๋ฅด๊ฒ 'POST ๋ฉ์๋'๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญํ๊ธฐ ๋๋ฌธ์ URL์์ ๋ณ์๊ฐ ๋ํ๋์ง ์์ต๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํ๋ฝ์ ๋๊ตฌ์ธ 'burp suite'๋ฅผ ์ฌ์ฉํด์ SQL์ธ์ ์ ์ ์๋ํด๋ณผ๊ป์.
์์ฐธ ์ฐธ๊ณ ๋ก ํ๋ก์ ์ค์ ํด์ฃผ์ ์ผ ํด์. โผโผโผ
๊ธฐ๋ณธ์ ์ผ๋ก requests๋ ์ค์ ์ด ์ฒดํฌ ๋์ด์์ง๋ง, responses๋ ์๋์ด์!!
์ฒดํฌ ํ์!
Proxy > Options > Intercept Server Responses
๋ฒํ์ค์ํธ๋ก ํ์ธํด๋ดค๋๋! ๋๋กญ๋ค์ด ๋ฉ๋ด์ ๋ณ์๋ช ์ 'movie' ์ ๋๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก, ์ซ์ํ ๊ฐ๋ง ์ ๋ ฅ ๋ฐ์ต๋๋ค.
movie ๋ณ์์ ๋ฌธ์ ๊ฐ์ ์ ๋ ฅํ๋ฉด
์ค๋ฅ๋ฉ์์ง๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
์์ ๋ฐ์ดํ๋ฅผ ์ ๋ ฅํ๋ฉด, ์๋ฌด๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํญ์ ์ฐธ์ผ๋ก ๋ง๋๋ ์ฟผ๋ฆฌ๋ฅผ ์ ๋ ฅํ์ฌ๋ SQL๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
๋ํ ์ฃผ์๋ฌธ์๋ฅผ ์ฌ์ฉํ์ฌ๋ ์ค๋ฅ ๋ฉ์์ง๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
>> 0' or 1=1#
SQL์ธ์ ์ ๊ณต๊ฒฉ์ ์๋ ํ๊ธฐ ์ํด, ๊ธฐ์กด ์ฟผ๋ฆฌ์ ๊ฒฐํฉํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ UNION SELECT ๊ตฌ๋ฌธ์ ์ฌ์ฉํด์ผ ํ๋ฉฐ,
๊ธฐ์กด์ฟผ๋ฆฌ์์ ์ฌ์ฉํ๋ ์ปฌ๋ผ ์์ ๋ง์ถฐ์ฃผ์ด์ผ ํฉ๋๋ค.
๋ฒํ ์ค์ํธ๋ก movie๋ณ์์ ์กฐ์ํ SQL ๊ตฌ๋ฌธ์ ์ ๋ ฅํ ๋
์ค์ ์ฌ์ฉํ๋ ๋ณ์๋ฅผ ๋ฃ์ผ๋ฉด ํ์๋ ๊ทธ ๊ฐ์ ํด๋นํ๋ ๋ฐ์ดํฐ๊ฐ ๋์ค๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ์ง ์๋ ์ซ์ ๊ฐ์ ๋ฃ์ด์ผํด์!
* movie ๋ณ์์ 0์ ์ ๋ ฅ์ > 1์ํด๋นํ๋ ๊ฐ์ด ์ถ๋ ฅ๋จ
* ๋ชฉ๋ก์ ์ ์ฅ๋ ์ซ์ ์ด์์ ์ ๋ ฅํ๋ฉด ์๋์ ๊ฐ์ด 'No movies were found!'๊ฐ ์ถ๋ ฅ
๋ค์์, ์กฐ์ํ SQL๊ตฌ๋ฌธ์ ๋ฃ์ด DB์ ๋ณด๋ฅผ ์ถ๋ ฅํด๋ณด๊ฒ ์ต๋๋ค!
๋ฒํ์ค์ํธ๋ฅผ ํตํด ๊ฐ์ ๋๊ฒจ์ฃผ๋ฉด!
์ ๋ณด๊ฐ ์ถ๋ ฅ๋ฉ๋๋ค.
๋๋ถ๋ถ์ ์ฟผ๋ฆฌ๋ GET/Select๋ฐฉ์๊ณผ ์ ์ฌํ๊ธฐ ๋๋ฌธ์ ์๋ตํ๊ฒ ์ต๋๋ค. ์๋ GET๋ฐฉ์ ์ฐธ๊ณ ํด์ฃผ์ธ์!
https://lucete1230-cyberpolice.tistory.com/84?category=851757
์์ฒ๋ผ ์ฟผ๋ฆฌ๋ฅผ ์ง์ ํ์ฌ SQL์ธ์ ์ ํ๋ฉด, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ ์คํค๋ง, ํ ์ด๋ธ๋ช , ์นผ๋ผ๋ช ์ด ์ถ๋ ฅ ๋ฉ๋๋ค!
ํด๊ฒฐ๋ฐฉ์ ๋ํ GET๋ฐฉ์๊ณผ ์ ์ฌํ๊ธฐ ๋๋ฌธ์ ์๋ตํ ๊ป์!
sqlmap์ฌ์ฉํ๊ธฐ
์๋์ผ๋ก ํ์ธํ ์ ์๋ ์ ๋ณด๊ฐ ์ ๊ธฐ ๋๋ฌธ์ 'SQL ์ธ์ ์ ์๋ํ ๋๊ตฌ'์ธ sqlmap์ ์ฌ์ฉํ์ฌ
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ ๋ช ์ ์์๋ณธ๋ค.
(์๋ ์ฃผ์์ฐธ๊ณ ํ์๋ฉด ๋์ ๋ ๊ฒ ๊ฐ์์ ์ฌ๋ ค๋ด ๋๋ค)
https://webhack.dynu.net/?idx=20161107.003&print=friendly
๋จผ์ ์นผ๋ฆฌ ๋ฆฌ๋ ์ค์์ ํฐ๋ฏธ๋์ ์ ์ ํ๋ค.
์ ์ ํ apt-get install sqlmap์ผ๋ก ๋ค์ด ๋ฐ์์ค๋ค.(์๋ค๋ฉด ๋ฐ๋ก sqlmap์คํ)
** ์ฃผ์ ์ฌํญ **
1. -u ์ต์ ์ ์๋ํ ๊ณต๊ฒฉ์ ์๋ํ ํ์ด์ง ์ฃผ์ ์ ๋ ฅ
2. POST ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฏ๋ก --data ์ต์ ์ ์ด์ฉํ์ฌ ์ธ์ ์ ์๋ํ ๋ณ์๋ฅผ ๋ช ์
3. bWAPP๋ ๋ก๊ทธ์ธ ํ ์ฌ์ฉ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ --cookie ์ต์ ์ผ๋ก ์ฟ ํค ๊ฐ์ ์ ๋ ฅํด์ผ ํจ.
(์ฟ ํค ๊ฐ์ ๋ฒํ์ค์ํธ๋ก ์ ์ ์์)
๋ฐ์ดํฐ ๋ฒ ์ด์ค๋ฅผ ์์๋ผ ๋ ์ทจ์ฝํ ํ๋ผ๋ฏธํฐ๊ฐ movie ๋ฟ์ด๋ฏ๋ก -p ์ต์ ์์ SQL ์ธ์ ์ ์ ์๋ํ ๋ณ์๋ฅผ
movie๋ก ์ง์ ํ๋ค. ๋ํ ํ ์ด๋ธ๋ช ์ ์์๋ณด๊ธฐ ์ํด --DBs์ต์ ๋์ --tables ์ต์ ์ ๋ฃ์ด ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ค.
sqlmap ์ฌ์ฉ ๊ฒฐ๊ณผ, ๋ชจ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ด๋ธ ๋ช ์ ์ถ๋ ฅํ์ง๋ง,
์ฐ๋ฆฌ๊ฐ ๋ด์ผํ๋ ๊ฒ์ bWAPP์ด๋ฏ๋ก ์ด ํ ์ด๋ธ ๋ช ๋ง ํ์ธํ๋ค.
์ด์ค ์ ์ฌํ ๋ด์ผํ๋ ๊ฑด users, movies ๋ผ๊ณ ์ถ์ธกํ ์ ์๋ค.
์ ๋ช ๋ น์ด์์ tables๋ฅผ columns๋ก ๋ฐ๊พธ์ด ์ฃผ๋ฉด ํ ์ด๋ธ์ ์ปฌ๋ผ์ ํ์ธํ ์ ์๋ค.
๋ช ๋ น์ด๋ฅผ ์ ๋ ฅ ํ๋ฉด users ํ ์ด๋ธ์ ์ปฌ๋ผ์ ํ์ธ ํด๋ณผ ์ ์๋ค.
์ด์ค ์ฌ์ฉ์์ ๊ณ์ ์ ๋ณด๊ฐ ์์ ๊ฒ ๊ฐ์ ์ปฌ๋ผ์ ์ถ์ธกํ์ฌ, ์ ๋ณด๋ฅผ ์กฐํฉํ ํ ์๋์ผ๋ก UNION SELECT๊ตฌ๋ฌธ์ ์ ๋ ฅํ๋ค.
ํ ์ด๋ธ๋ฅด์ users๋ก ์ง์ ํ SQL์ธ์ ์ ์ ์๋ ํ ์ ์๋ค.
์ฟผ๋ฆฌ ๋ฌธ > 0 union select null,id,password,login,email,null,null from users
๋ฒํ์ค์ํธ๋ก ์กฐ์ํ ์ฟผ๋ฆฌ๋ฅผ Forwardํ๋ฉด, ํ์ด์ง์ ์ฌ์ฉ์ ๊ณ์ ์ ๋ณด๊ฐ ๋ ธ์ถ ๋๋ค.
SQL์ธ์ ์ ์ฑ๊ณต
'Game > Bee-box' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Bee-box] SQL ์ธ์ ์ - Login Form/Hero (0) | 2020.08.11 |
---|---|
[Bee-box] SQL ์ธ์ ์ - AJAX/JSON/jQuery (0) | 2020.08.09 |
[Bee-box] SQL ์ธ์ ์ - GET/Select (0) | 2020.07.24 |
[Bee-box] SQL ์ธ์ ์ - POST/Search (0) | 2020.07.24 |
์์คํ ๊ณต๊ฐ ๊ฐ์ฌํฉ๋๋ค