소스를 보면...
자세히 보면 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)는 ÚT0Do#ßÁ'or'8이다.
id에 admin, pw에 위의 문자열을 입력했다면 전체 쿼리는
select id from challenge_51_admin where id='admin' and pw='ÚT0Do#ßÁ'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 |