๐ ์๋ ๋ฌธ์ ํ๋ฉด์ด๋ค. ๋ญ๊ฐ sqli์ ๋์๊ฐ๋๋๋ฐ, ์ฝ๋๋ฅผ ๋ณด์.
์ฝ๋๋ฅผ ๋ณด๋ sqli๊ฐ ํ์คํด์ก๋ค. ๋ฌธ์ ๋ ์ฟผ๋ฆฌ๋ฌธ์ด ์ฐธ์ผ ๊ฒฝ์ฐ ํด๊ฒฐ์ด ๋๋ค. ํํฐ๋ง ๋ถ๋ถ์ ๋ณด์.
ํํฐ๋ง ๋ถ๋ถ์ ๋ณด๋ฉด addslashes๋ก ์ธํด ์ฑ๊ธ์ฟผํฐ ํ์ถ์ด ๋ถ๊ฐ๋ฅํ๋ฉฐ, pw์ md5 ํด์ํจ์๊ฐ ๊ฑธ๋ ค ์์ด์ pw์์๋ ์ฑ๊ธ์ฟผํฐ ํ์ถ์ด ๋ถ๊ฐ๋ฅํ๋ค.. ์๋ฌด๋ฆฌ ์๊ฐํด๋ด๋ ๋ต์ด ์๋์์ ์ด์ง ํํธ๋ฅผ ๋ณด๋ md5 ํจ์์ ์ทจ์ฝ์ ์ด ์กด์ฌํ๋ค.
md5 ํจ์์ ๋ ๋ฒ์งธ ์ธ์์ true or false๊ฐ์ ์ค ์ ์๋ค. ๊ธฐ๋ณธ๊ฐ์ false์ด๋ค. ๋จผ์ false์ผ ๊ฒฝ์ฐ์๋ 32๋ฐ์ดํธ์ 16์ง์ ๋ฌธ์์ด๋ก ํด์ํ๋์ด ๋ฆฌํด๋์ง๋ง, true์ผ ๊ฒฝ์ฐ์๋ 16๋ฐ์ดํธ์ 2์ง์ ๋ฐ์ด๋๋ฆฌ ๊ฐ์ด ๋ฆฌํด๋๋ค. ์ด ๋ง์ 2์ง์ ๋ฐ์ด๋๋ฆฌ๊ฐ or์ด๋ ์ฑ๊ธ์ฟผํฐ๋ฅผ ๋ํ๋ผ ๊ฒฝ์ฐ ์ฟผ๋ฆฌ๋ฌธ์ ์ํฅ์ ๋ผ์น ์ ์๋ค.
python์ผ๋ก md5 ํจ์๋ฅผ ์คํํด๋ดค๋ค.
์คํ๊ฒฐ๊ณผ
์์ ๊ฐ์ด 2์ง์๋ก ๋์ค๋ ๊ฑธ ๋ณผ ์ ์๋ค.
์ฐ๋ฆฌ๋ pw๋ถ๋ถ์์ ์ฑ๊ธ์ฟผํฐ ํ์ถ์ด ํ์ํ๋ค ๋ฐ๋ผ์ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ์์ด์ด ํ์ํ๋ค.
' or '์ ๋ฃ๊ฒ ๋๋ฉด ์ฟผ๋ฆฌ๋ฌธ์
select id from chall51 where id='{$input_id}' and pw='' or ''" -> false or true ''์ ์ฐธ์ด ๋จ
๊ตฌ๊ธ๋ง์ ํตํด md5ํด์ํ ํ 16์ง์ ๋ฐ์ด๋๋ฆฌ ๊ฐ์ผ๋ก ๋ฐ๊พผ๊ฐ์ด ' or '์ด ๋๋ ๊ฐ์ ๊ฐ์ ธ์๋ค.
pw์ ์ ๋ ฅ -> 129581926211651571912466741651878684928
'Web Hacking > Webhacking.kr' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Webhacking.kr] old-19 write up (4) | 2024.03.26 |
---|---|
[Webhacking.kr] old-44 write up (0) | 2024.03.26 |
[Webhacking.kr] old-45 write up (0) | 2024.03.20 |
[Webhacking.kr] old-43 write up (0) | 2024.03.17 |
[Webhacking.kr] old-49 write up (0) | 2024.03.17 |