Webhacking.kr 49번 문제풀이

동스토리 ㅣ 2021. 7. 23. 16:06

반응형

안녕하세요.

 

웹 해킹 49번 문제풀이 하겠습니다.

 

문제를 보면, SQL INJECTION 관련 문제인 것을 추측할 수 있습니다.

 

소스코드를 확인해보겠습니다.

 

 

소스코드에서 preg_match 함수를 통해 select, or, and등 SQL INJECTION에 필요한 문자열들을 필터링 해놓은것을 알 수 있습니다.

 

select id from chall49 where lv={$_GET['lv']}

 

우리는 빨간 부분에 필터링해놓은 문자열을 우회하여 id=admin을 만들면 문제를 해결할 수 있습니다.

 

즉, select id from chall49 where lv=0 || id='admin' 을 만들면 된다.

 

or은 필터링 되니 -> ||로 우회하고admin은 -> 16진수로 변환하여 0x61646d696e로 우회하여

 

select id from chall49 where lv=0 || id='0x61646d696e'를 입력하여 문제를 해결할 수 있었습니다.

 

 

감사합니다.

반응형

'Hacking > Webhacking.kr' 카테고리의 다른 글

Webhacking.kr 50번 문제풀이  (0) 2021.07.24
Webhacking.kr 48번 문제풀이  (0) 2021.03.17
Webhacking.kr 47번 문제풀이  (0) 2021.02.23
Webhacking.kr 46번 문제풀이  (0) 2021.02.19
Webhacking.kr 45번 문제풀이  (0) 2021.02.17