본문 바로가기

Wargame(hacking)/LOS

LORD OF SQLINJECTION : vampire

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 을 요청해 해당 조건을 우회했다. 

 

그림 1