소스코드 분석
if(preg_match('/prob|_|\.|\(\)/i', $_GET[no])) exit("No Hack ~_~");
if(preg_match('/\'|\"|\`/i', $_GET[no])) exit("No Quotes ~_~");
no에 쿼터를 사용못하게 해놨다. 문자를 사용못하게 해놨으니
no의 값을 조작해서 문제를 풀어야겠다.
no에 1을 넣으니 Hello guest라는 문구가 뜬다.
no에 2를 넣으니 문구가 뜨지 않는다.
그럼 뒤에 or 조건을 줘서 id = 'guest' and no=0 (거짓) or no = ? 이렇게
admin의 no를 찾아서 대입을 해본다.
?no=0%20or%20no%20=2
0 or no = 2
'WarGame > Web' 카테고리의 다른 글
[Lord of SQL injection] darkelf (0) | 2017.05.25 |
---|---|
[Lord of SQL injection] wolfman (0) | 2017.05.24 |
[Lord of SQL injection] orc (0) | 2017.05.24 |
[Lord of SQL injection] cobolt (0) | 2017.05.23 |
[Lord of SQL injection] gremlin (0) | 2017.05.23 |