소스코드 분석
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 |