[Lord of SQL Injection] goblin 3번 풀이

[ 문제접근 ]
1. 쿼리 : id와 no파라미터가 존재하고, 이를 통해 DB를 조회한다
2. $_GET[no] : GET방식을 통해서 no를 입력을 받는다
3. 5,6번 줄에서 $_GET[no] 을 통해 입력받은 데이터에 ' , " 를 검사하고 필터링함

4. if($result['id'] == 'admin') : 질의 결과 id가 admin일 경우 solve("goblin")을 시켜줌
=> 방법 1 : id에 admin을 문자열 인코딩을 통해 입력
=> 방법 2 : id에 admin이라는 문자열을 내장함수를 사용해 입력
[ 문제풀이 ]
더보기


지금까지 문자열을 넣을때 사용했던 방식인 '문자열'을 사용해서 문자열을 넘겨주려 했으나,
' " 을 필터링하고 있다. 따라서 우리는 기존방식이 아닌 다른 방식으로 문자열을 넘겨줘야한다.
<정답1> : ?no=0 or id=0x61646d696e
정답1은 문자열을 hex 인코딩을 하여 넣어주었다. 이 이외에도 다양한 방법으로 admin을 인코딩하여 넘겨주면 풀 수 있다.

<정답2> : ?no=0 or id=char(97,100,109,105,110)
정답2는 문자열을 char 함수를 사용해 admin을 각각의 아스키코드에 대응되는 정수로 넣어주면
char(97,100,109,105,110) 는 admin 과 똑같은 결과를 가지게 된다.

"GOBLIN Clear!" 가 나타난다! 정답!
이제 다음 스테이지로 넘어가도록 하자
'WarGame > Lord of SQL Injection' 카테고리의 다른 글
| [Lord of SQL Injection] darkelf 6번 풀이 (0) | 2021.10.12 |
|---|---|
| [Lord of SQL Injection] wolfman 5번 풀이 (0) | 2021.10.12 |
| [Lord of SQL Injection] orc 4번 풀이 (0) | 2021.10.10 |
| [Lord of SQL Injection] cobolt 2번 풀이 (0) | 2021.10.10 |
| [Lord of SQL Injection] gremlin 1번 풀이 (0) | 2021.10.10 |
댓글
이 글 공유하기
다른 글
-
[Lord of SQL Injection] wolfman 5번 풀이
[Lord of SQL Injection] wolfman 5번 풀이
2021.10.12 -
[Lord of SQL Injection] orc 4번 풀이
[Lord of SQL Injection] orc 4번 풀이
2021.10.10 -
[Lord of SQL Injection] cobolt 2번 풀이
[Lord of SQL Injection] cobolt 2번 풀이
2021.10.10 -
[Lord of SQL Injection] gremlin 1번 풀이
[Lord of SQL Injection] gremlin 1번 풀이
2021.10.10