김승현

[Lord Of SQLInjection] troll 8번 문제 write up 본문

Web/Lord Of Sql

[Lord Of SQLInjection] troll 8번 문제 write up

kshind 2023. 3. 14. 15:01

접속해보면 이런 화면이 뜨는데 코드 분석을 해보자.

include "./config.php"; 
login_chk(); 
$db = dbconnect(); 
if(preg_match('/\'/i', $_GET[id])) exit("No Hack ~_~");
if(preg_match("/admin/", $_GET[id])) exit("HeHe");

첫 번째 줄은 ./config.php를 포함한다는 내용입니다.

두 번째 줄은 로그인을 했는지 체크하는 내용입니다.

세 번째 줄은 db를 연결합니다.

네 번째, 다섯 번째 줄의 preg_match는 필터링을 하는 내용입니다.

필터링 내용
no hack
    1. '
HeHe
    1. admin

필터링을 보면 HeHe를 보면 NO hack과 달리 /i가 없는데 /i는 대소문자를 구분하지 않고 필터링한다는 내용입니다.

그냥 ?id=ADMIN만 입력해도 풀릴 것 같으니까 해보자.