본문 바로가기

WarGame/Web

[Lord of SQL injection] troll

소스코드 분석

if(preg_match('/\'/i', $_GET[id])) exit("No Hack ~_~");

if(@ereg("admin",$_GET[id])) exit("HeHe");

ereg() 함수는 패턴과 일치하는 문자열이 발견될 경우에 True, 발견되지 않을 경우에는 False를 반환하는데, 

이때 대소문자 구분을 한다. 

ereg(string pattern, string string, array[regs]); 


if($result['id'] == 'admin') solve("troll");

id = 'admin' 를 만족하면 풀린다.

ereg때문에 admin은 적지못하지만 대소문자 구별을 하므로 Admin을 사용

(mysql에서는 컬럼명에 대해서는 기본적으로 대소문자 구별함

데이터 타입에서 Varchar Text에 대해서는 대소문자를 구별하지 않는다.)


?id=Admin
id=Admin



'WarGame > Web' 카테고리의 다른 글

[Lord of SQL injection] skeleton  (0) 2017.05.25
[Lord of SQL injection] vampire  (0) 2017.05.25
[Lord of SQL injection] orge  (0) 2017.05.25
[Lord of SQL injection] darkelf  (0) 2017.05.25
[Lord of SQL injection] wolfman  (0) 2017.05.24