728x90
728x90
728x90
 

itsecgames.com

 

www.itsecgames.com

[사진 1]

영화를 select하여 티켓 정보를 알려주는 페이지이다.

 

low

[사진 2]

low 레벨이다. Go 버튼을 클릭하면 티켓이 100개가 있다고 한다.

 

[사진 3]

이 때 url을 보면 title 파라미터를 통해 영화 제목이 넘어간다.

 

[사진 4]

title 파라미터에 single quote를 입력하면 위와 같이 티켓 개수가 출력되지 않는다.

 

[사진 5]

하지만, 위와 같이 or 구문을 통해 참을 만들어주고 주석(%23)을 넣으면 티켓 개수가 출력된다. 이를 통해 쿼리문이 참이면 티켓 개수가 출력됨을 추측할 수 있다.

 

[사진 6]

이전 문제들을 통해 웹페이지에서 사용되는 database 이름이 "bWAPP"인 것을 알 수 있었는데, 위와 같이 length 함수로 database 이름의 길이를 확인하면 5임을 알 수 있다.

 

query : title=' or 1 and substr((select table_name from information_schema.tables where table_schema=binary("bWAPP") limit 3, 1), 1, 1)="u"%23

이전 문제들과 마찬가지로 information_schema 스키마를 통해 테이블명과 컬럼명을 알아내고 필드값을 알아내면 된다. 위 쿼리문은 bWAPP 스키마에 존재하는 4번째 테이블명의 첫 번째 글자가 "u"임을 확인하는 쿼리문이다.

medium, high

medium, high 레벨의 경우 이전 문제들과 마찬가지로 특수문자가 필터링되므로 인젝션 공격이 어렵겠다.

728x90
728x90

+ Recent posts