Web Hacking/LoS

[Lord of SQL Injection] goblin

ruming 2021. 4. 10. 20:40

id를 admin으로 만들면 풀릴 것 같은데 id가 guest로 쓰여있다.

 

id=admin 식으로 입력하자 역시 id값은 변하지 않았다.

no에 아무거나 입력하고 뒤에 주석으로 id=admin을 날려보았더니 Hello guest를 띄웠다.

no=1 %23id=admin

 

여러가지로 시도해보다가 "를 입력하면 다음과 같이 뜬다는 것을 알아냈다.

if(preg_match('/\'|\"|\`/i', $_GET[no])) exit("No Quotes ~_~"); 

이 부분을 보니까 쿼터를 필터링한다. url 인코딩으로 입력해보기로 했다.

 

"를 %22로 입력해보아도 No Quotes가 뜬 걸로 보아 url 인코딩은 통하지 않는 것 같다.

필터링을 우회할 수 있는 방법을 알아보다가 엄청난 사이트를 발견했다. 심지어 블로그 이름이 rubiya다

브라우저 XSS 필터 우회의 모든 것

아무튼 다음으로는 HEX encoding을 사용해보기로 했다. admin을 hex코드로 변환한 값을 넣어주었다.

no=2 %23id=0x61646d696e

hex값이 그대로 나오는 것을 보고 혹시 #때문에 그런걸까 싶어서 or로 다시 공격해보았더니 성공했다.

더보기

no를 1에서 2로 바꾼 이유는 no=1이 우연히 값이 맞아서 hello guest를 띄운 것을 알게 되었기 때문이다.

no=2 or id=0x61646d696e

 

'Web Hacking > LoS' 카테고리의 다른 글

[Lord of the SQL] los darkelf  (0) 2021.05.23
[Lord of SQL Injection] wolfman  (0) 2021.05.18
[Lord of SQL Injection] orc  (0) 2021.05.09
[Lord of SQL Injection] cobolt  (0) 2021.04.04
[Lord of SQL Injection] gremlin  (0) 2021.03.28