해당 문제의 소스를 보면 <!-- index.phps -->와 같은 주석 부분이 있다.
php소스코드를 확인해보면 str_replace()로 id 문자열에 \\나 ' 에 해당되는 문자를 각각 공백과 ''로 치환한다.
그리고 select 'good' from zmail_member where id='$_POST[id]" 쿼리문을 자세히 보면 맨 뒤에 싱글 쿼터가 하나 빠진것을 볼 수 있다.
POST[id]를 맨 앞 첫부터 15만큼 때오는데 q[0]=='good'을 충족해야한다.
입력창에 15글자인 good + 공백*10 + '(싱글쿼터) 를 넣으면 id가 str_replace("'", "''", $_POST[id])로 인해 16자리가 되지만 substr함수에 의해 맨뒤 싱글쿼터가 하나 잘려나가고 나머지 하나만 남아서 q[0] == 'good'이 True가 되면서 39번 문제 solve.
'Web Hacking > Webhacking.kr' 카테고리의 다른 글
Webhacking.kr 47번 (0) | 2018.04.11 |
---|---|
Webhacking.kr 25번 (0) | 2018.04.11 |
Webhacking.kr 18번 (0) | 2018.04.11 |
Webhacking.kr 01번 (0) | 2018.04.10 |
Webhacking.kr 06번 (0) | 2018.04.10 |