Write-Up
해당 문제의 필터링 및 적용되는 조건은 아래와 같다.
if(preg_match('/\'/i', $_GET[id])) exit("No Hack ~_~");
$_GET[id] = strtolower($_GET[id]);
$_GET[id] = str_replace("admin","",$_GET[id]);
' 가 필터링 되며, strtolower()를 통해 대문자를 소문자로 변경한다. 그리고 str_replace()를 통해 id 인자 값에 admin이 포함될 시, ""(공백)으로 치환되어진다.
그래서 아래 그림 1과 같이 id=adadminmin 을 요청해 해당 조건을 우회했다.