[wargame 9๋ฒ ๋ฌธ์ ํ์ด]
๋ญ๊ฐ ์ด๋ฆ๋ถํฐ DB๋ฌธ์ ๊ฒ ๋ค .. ๋ผ๋ ์์ด ๊ฝํ๋ค...โ
์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ข
๋ฅ๋ ๋ฌด์์
๋๊น? ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ ์๊ด ๊ด๊ณ๋ฅผ ์ฐพ์์ผํฉ๋๋ค.
์... ์๋ฌด๋๋, ์ฌ์ฉ์ ์ด๋ฆ๊ณผ DB์ฌ์ด์ ์ด๋ค ๋ฌธ์ ๊ฐ ์๋ ๊ฒ ๊ฐ๋ค.
์๊ฐ๋ณด๋ค ๊ฐ๋จํ ํ์ด์ง๊ฐ ์กด์ฌํ๋ค.
source code ๋ฅผ ์ดํด๋ณด๋, ์๋์ ๊ฐ๋ค.
์คํฌ๋ฆฝํธ๋ก admin์ด ๋ค์ด์จ๋ค๋ฉด ๊ฒฝ๊ณ ์ฐฝ์ ๋์ฐ๊ณ ์๋ค.
๋ญ๊ฐ ํ์ง๋ง๋ผ๋ฉด ํ๊ณ ์ถ์๊ฒ ์ฌ๋๋ง์
์ญ์ admin์ผ๋ก ๋ก๊ทธ์ธ ํ๋ ค๊ณ ํ๋, ์๋๋ค๊ณ ํ๋ค.
๋ญ๊ฐ SQL injection๊ณผ ๊ด๋ จ์ด ์์ง ์์๊น ..?
ํ๋ ๋ง์์ ์ผ๋จ ์๋ฌด๊ฑธ๋ก ๋ก๊ทธ์ธ ํด๋ดค๋ค.
hello , a ๋ผ๊ณ ํ๋ ๊ธ๊ณผ ํจ๊ป ์๋์ ๊ฒ์ํ ๋ด์ฉ์ด ์ถ๋ ฅ๋๋ค.
์ฆ ๋ก๊ทธ์ธ์ ์ฑ๊ณตํ๋ฉด, ์ด์ ์ฑ๊ณตํ ์ฌ๋๋ค์ด writeํ๋ ๊ฑธ ๋ณผ ์ ์๋ ๊ตฌ์กฐ์ด๋ค.
๋ฌผ๋ก ๋ด๊ฐ ์ด ๊ธ๋ ์ ์ฅ์ด ๋๋ค. ใ
ใ
ใ
์์ํ ์์ด๋๋ก ๋ก๊ทธ์ธ ํ๋ฉด, ๋ค์ด๊ฐ๋ ์ฌ๋์ด ์๋ค..(์ ์ฅ๋ ๊ธ์ด ์์)
์ด ๊ฒ์ํ์์ ๋ญ๊ฐ ๊ณต๊ฒฉ์ ์๋ํ๋ฉด ๋๋? ํ๋ ๋ง์์
์ด๊ฒ์ ๊ฒ ์
๋ ฅํด๋ณด์์ง๋ง ์ด ๊ณณ๊ณผ๋ ๊ด๋ จ์ด ์๋ ๊ฒ ๊ฐ๋ค.
๋ฌธ์ ์์ ์๋ ค์คฌ๋ ํํธ๋ DB์ ์ฌ์ฉ์ ์ด๋ฆ์ ์๊ด๊ด๊ณ๋ฅผ ๊ฐ๋ฅด์ผฐ์ผ๋,,,, ๋ค์ ๋์๊ฐ์
์ด๋ฐ์ ๋ฐ ํน์๋ฌธ์๋ฅผ ์๋ํด๋ณด๋ค๊ฐ,
์ฌ๋์ฌ "/" ์์ ์๋ฌ๊ฐ ๋จ๋ ๊ฒ์ ํ์ธ ํ์๋ค.
์๋ฌ์ ๋ด์ฉ์
Fatal error : Uncaught exception 'Exception' with message 'Unable to open database: unable to open database file' in /var/www/html/db_is_really_good/sqlite3.php:7 Stack trace: #0 /var/www/html/db_is_really_good/sqlite3.php(7): SQLite3->open('./db/wkrm_/.db') #1 /var/www/html/db_is_really_good/memo.php(14): MyDB->__construct('./db/wkrm_/.db') #2 {main} thrown in /var/www/html/db_is_really_good/sqlite3.php on line 7
์ด๊ฒ ๋ฌด์จ ์๋ฌ์ผ๊น ์ดํด๋ณด๋ค๊ฐ php + sqlite Fatal error๋ฅผ ๊ฒ์ํด๋ณด๋, data bases ๋ด๋ถ ๋ฌธ์ ์ค ์ ์์ ์ผ๋ก ์ ์ฅ์ด ๋์ง ์์๋ค๋ ๊ฒ์ ์๋ฏธํ๋ ๊ฒ ๊ฐ์๋ค.
์๋ฌ ๋ด์ฉ์ ์ ์ดํด๋ณด๋ฉด ๋ค์ ๋ถ๋ถ์ database๋ด์ฉ์ด ์ ์ฅ๋์ด์ผ ํ ๊ฒ์ด ์๋ฌ๊ฐ ๋์ ์๋ ๊ฒ ๊ฐ๋ค.. (?)
(sqlite๋ ์จ๋ณธ์ ์ด ์์ด ๋ฌธ๋ฒ์ ๋ชจ๋ฅด๋, ํน์ ์๋ชป ๋ ํด์๋ถ๋ถ์ด ์๋ค๋ฉด ๋๊ธ๋จ๊ฒจ์ฃผ์ธ์.)
๋งํฌ์ ๋ค์ด๊ฐ๋ณด๋, ์๋ฌ๊ฐ ๋ฌ๋ค.
์ ์ดํด๋ณด๋ db/wkrm_ { }.db
์ฆ {} ๋ถ๋ถ์ ๊ฐ ์ฌ์ฉ์ user ์ ๊ด๋ จ๋ ๋ด์ฉ์ด database์ ์ ์ฅ๋๋ ๊ฒ ๊ฐ๋ค.
admin์ ๋ง๋ ๊ฒ์ผ๋ก ๋ณด์, ์ฃผ์ ์๋ฃ๋ admin์๊ฒ ์์ ๊ฒ์ด๋ผ ์์ํ๊ณ ์ ๊ทผํด๋ณด์๋ค.
๊ฒฝ๋ก๋
์ด๊ฒ์ธ๋ฐ, ์ฌ๊ธฐ์ ./ ๋ ํ์ ๋๋ ํ ๋ฆฌ๋ฅผ ์๋ฏธํ๋ฏ๋ก
memo.php๋ฅผ ์ง์์ฃผ๊ณ ๋ฐ๋ก ์๋ ๋๋ ํฐ๋ฆฌ์ธ db_is_really_good/db/wkrm_ { user name}.db ๋ผ๊ณ ๋ช
์นญํด์ฃผ๋ฉด ๋๋ค.
์ฆ ์๋์ url ๊ณผ ๊ฐ๋ค.
wargame.kr:8080/db_is_really_good/db/wkrm_admin.db
url ์ ์ ์ db ํ์ผ์ด ํ๋ ๋ค์ด๋ก๋ ๋๋ค.
๋ญ๋ก ์ด๋ ์๊ด์ด ์์ด๋ณด์ฌ์, ๊ทธ๋ฅ note ++๋ก ์ด์ด๋ดค๋ค.
์๋ ํ๋๊ทธ๊ฐ ์๋ค๊ณ ํ๋ค.(url์ ์๋ ค์ฃผ๊ณ ์์)
์๋ ค์ค url๋ก ์ ์ํด์ ํ์ธํด๋ณด๋, FLAG ๊ฐ์ด ์ถ๋ ฅ๋๋ค.
์์ฒ๋ผ note ++์๋ํฐ๋ฅผ ์ฌ์ฉํด๋ ๋๊ณ , 16์ง์ Hex ๊ฐ์ ํ์ธ ํ ์ ์๋ hex editor๋ฑ..
๋์ผํ ์ ๋ณด๊ฐ ์ถ๋ ฅ๋๋ค.
์ป์ flag๊ฐ์ ์
๋ ฅํด์ฃผ๋ฉด ๋ฌธ์
clear~