훈훈훈

Lord of SQL injection(LoS) - 5. wolfman 본문

정보보안/웹 해킹 문제

Lord of SQL injection(LoS) - 5. wolfman

훈훈훈 2018. 10. 15. 01:44



먼저 코드를 보고 정보를 뽑아보자.


1.  if(preg_math('/ /i', $GET[pw])) 

   => 공백 필터링

2.  if($result['id'] == 'admin')  

   => "id = admin" 이 되어야 한다.


이제 문제를 어떻게 해결할지 생각해보자.


쿼리를 보면 where id = 'guest' 인 것을 확인 할 수 있다. 따라서 이 부분을 False 시키고 id = 'admin' 을 삽입시켜야 한다.


그다음 공백 필터링에 대해 고민해 봐야한다. 공백 필터링을 하기 위해서는 어떻게 해야할까?? 

여기에 공백 필터링을 우회 할 수 있는 기호를 몇 가지 정리해 보았다.

   


 - %09  :  TAB


 - %0a  :  \n


 - %0d  :  \r


 - 주석  :  /**/


 - 괄호  :  ()



필자는 %09(TAB)을 이용하여 문제를 풀었다.




pw='or%09id='admin'%23 을 입력 후 클리어 메세지를 확인할 수 있다. 

Comments