본문 바로가기
Hacking/WebHacking.kr

Webhacking.kr : old-46 (300 pt)

by newbie22 2021. 2. 12.

 

 

문제에 접속하면 다음과 같은 화면이 나타납니다.

< 문제 모습 >

-> SQL INJECTION 문제입니다.

 

바로 source를 확인하였습니다.

< source >

-> lv를 다양하게 필터링하는 것을 확인할 수 있습니다. 

-> 코드를 보면 쿼리의 결과 id가 admin이면 문제를 해결할 수 있습니다. 

-> select가 필터링되어 테이블 자체에 id가 admin인 데이터가 존재하는 것을 알 수 있습니다.

 

따라서 쿼리를 lv = -1 or id = 'admin' 식으로 쿼리를 완성하면 문제를 해결할 수 있습니다.

'(싱글 쿼터), "(더블 쿼터), 0x, 공백을 필터링합니다. 

 

()를 필터링하지 않으므로 char함수를 사용하여 admin 문자열을 만들 수 있습니다.

ex) char(97, 100) = 'ad'

 

payload : ?lv=(-1)or(id=char(97,100,109,105,110))

 

 

 

 

끝~~

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

Webhacking.kr : old-03 (350pt)  (0) 2021.02.27
Webhacking.kr : old-49 (300 pt)  (0) 2021.02.12
Webhacking.kr : old-11 (300 pt)  (0) 2021.02.11
Webhacking.kr : old-07 (300 pt)  (0) 2021.02.11
Webhacking.kr : old-05 (300 pt)  (0) 2021.02.10