본문 바로가기

보안/Wargame

[Load of SQL Injection] 11번 golem

728x90

Q11. golem

 

문제

 

 

해결과정

 

id가 admin인 pw를 구하는 문제 인 것 같다.

소스코드를 살펴보면 or , and, substr이 필터링 되어 있는 것을 확인 할 수 있다.

저번에 사용했던 비밀번호 자릿수를 구하는 코드를 이용해보면 비밀번호를 구할 수 있다

하지만 or, and, substr의 필터링이 있기 때문에 

?pw=0'||id like 'admin' %26%26length(pw) like (any number) %23

으로 변환하여 패스워드 길이를 구한다.

1. pw length 구하기

 

pw 길이를 구할 수 있다

2. password 구하기

substr의 필터링이 걸려있으므로 mid 함수를 사용한다

  • substr(str, m ,n ): 문자열 str 중에서 특정위치 m으로부터 특정 길이 n 만큼의 문자를 출력하는 함수 
  • mid: preg_match에 의해 substr이 필터링 당하는 경우 동일한 기능으로 substr을 대체하는 함수

 

 

코드를 통해 구한 비밀번호를 입력한다