목록2025/07/25 (4)
Tyojong
보호되어 있는 글입니다.
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id'] == 'admin') solve("skeleton"); highlight_file(__FILE__); ?> 문제 목표if($result['id'] == 'admin') solve("skeleton");id가 admin이면 해결된다.$query = "select id from prob_skeleton where id='guest' and pw='{$_GET[pw]}' and 1=0";조회 되는 쿼리 뒷 부분을 보면 and 1=0 이 추가로 붙어있다. 하지만 별다른 필터링이 없기 때문에 그냥 뒷부분을 주석처리하면 된다. 문제 해결?p..
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id'] == 'admin') solve("vampire"); highlight_file(__FILE__); ?> 문제 목표if($result['id'] == 'admin') solve("vampire");id가 admin이면 해결된다.$_GET[id] = strtolower($_GET[id]);$_GET[id] = str_replace("admin","",$_GET[id]);입력받은 id를 모두 소문자로 바꾸고 admin이라는 문자열은 공백으로 바꿔 필터링한다. 문제 해결admin문자열을 공백으로 치환 시 한번의 과정만 진행한다.?id=..
query : {$query}"; $result = @mysqli_fetch_array(mysqli_query($db,$query)); if($result['id'] == 'admin') solve("troll"); highlight_file(__FILE__);?> 문제 목표if($result['id'] == 'admin') solve("troll");id가 admin이면 해결된다.if(preg_match("/admin/", $_GET[id])) exit("HeHe");admin문자열을 필터링하고 있다. 문제 해결sql에서는 대•소문자를 구분하지 않는다.admin문자열을 필터링하고 있는 정규표현식을 보면 admin이라는 소문자로만 이루어진 문자열만 검증하고 있다.이런식으로 id에 대문자를 섞어 작성..