입력받은 pw를 md5 함수를 이용하여 $input_pw 변수에 저장 (md5 함수 2번째 인자는 'true')
* php에서 md5 함수를 사용할 때, 두번째 인자를 'true'로 설정하면 md5 해쉬 결과를 바이너리 형태로 반환함
이 때 반환된 바이너리는 magic_quotes_gpc 옵션에 영향을 받지 않음
따라서 조건을 참으로 만들어주는 바이너리를 얻으면 문제 클리어
* 그러나 'or 1=1 # 과 같은 인젝션 쿼리가 반환되는 바이너리는 찾기 힘듬
따라서 mysql 문자열 처리 방식을 이용하여 간단한 쿼리를 사용
* 두 개의 다른 문자 비교시 거짓 반환
'a' = 'b' => 거짓, 0 반환
* 세 개의 다른 문자 비교시 참 반환
'a' = 'b' = 'c' => 참, 1 반환
'a' = 'b' (거짓, 0)
0 = 'c' (거짓, 0)
0 = 0 (참 ,1)
비밀번호를 "183941"로 입력
'Webhacking.kr' 카테고리의 다른 글
Webhacking.kr 53번 (0) | 2015.08.16 |
---|---|
Webhacking.kr 52번 (0) | 2015.08.16 |
Webhacking.kr 50번 (0) | 2015.08.16 |
Webhacking.kr 49번 (0) | 2015.08.16 |
Webhacking.kr 48번 (0) | 2015.08.16 |