war game/webhacking.kr
webhacking.kr 39 100pt
shnec
2017. 1. 5. 22:53
처음에 박스에 아무값이나 넣어보면 다음과 같이 warning이 뜬다.
index.phps를 봐보자
index.phps를 보면 다음과 같다
warning이 뜨는 이유는 sql query문에 있다
select 'good' from zmail_member where id='$_POST[id]
여기서 id에 '가 하나 없다
그렇다면 id에 '하나를 붙여주면 되지만
$_POST[id]=str_replace("\\","",$_POST[id]);
$_POST[id]=str_replace("'","''",$_POST[id]);
에서 "\\"가 ""로 "'"가 "''"로 replace되어버린다
하지만 그다음 문을 보면
$_POST[id]=substr($_POST[id],0,15);
로 0~15자로 글자수가 제한 되어있다
즉 '가 ''로 replace되어도 글자수의 바운더리로 무시할 수가 있다
admin '
를 보내면 ' 가 ''로 바뀌어도 id에는 admin '
가 들어가게 된다
그러면 clear