[webhacking.kr] Challenge_old-18 문제풀이

2021. 11. 14. 18:19워게임/webhacking

 

 

 

이번엔 SQL Injection문제다.

 

preg_match로 DB에 접근할 수 있는 SQL 쿼리문을 필터링하는 것으로 보인다.

select, from, &, |같은 문자를 대소문자 모두 확인해 아래와 같이 해킹하지 말라는 메세지로 돌려준다.

 

 

DB쿼리를 보면 chall18 테이블에서 id가 guest이고 no가 입력값인 경우의 id를 가져와서 결과값으로 반환한다.

 

1을 입력하면 hi guest라는 메시지가 나온다.

 

//admin's no = 2 라는 주석을 참고하여 url 뒤에 no=0%09or%09no=2라고 입력해 앞의 guest와 no를 확인하는 값을 false값으로 만들고 뒤에 or no=2를 입력해서 admin으로 접근 할 수 있다.