오른쪽 아래에 소스보기가 보인다. 소스를 보자.
쿼리문 결과의 id항목이 admin이면 클리어이다.
pw를 보니 md5 hash화 시켜서 쿼리문에 전달한다.
그런데 php의 md5 함수에서 두 번째 인자가 raw_output 옵션인데, true로 주는 경우 hex값이 아니라 binary 값으로 전달하게 된다.
이 경우, 문자가 직접 출력된다. 만약 그 과정에서 '='이라는 문자열이 직접 출력되는 경우 SQL Injection이 가능하게 된다.
자세한 설명은 아래 블로그에서 자세히 설명해두었다.
@참고문헌 : http://hyunmini.tistory.com/43
false injection으로 처리되는 값을 가져다가 password에 넣었다.
그대로 클리어 되었다.
'Wargame > webhacking.kr' 카테고리의 다른 글
webhacking.kr 6번 (0) | 2018.03.06 |
---|---|
webhacking.kr 4번 (0) | 2018.03.01 |
webhacking.kr 3번 (0) | 2018.03.01 |
webhacking.kr 1번 (0) | 2018.02.27 |