ROOTME] SQL Injection - String

woounnan·2020년 3월 8일
0

wargame

목록 보기
16/59
post-thumbnail

문제

home, search, login 페이지가 존재한다.
home은 newsnews_id 파라미터를 전달한다.
search는 search, 즉 검색할 문자열을 파라미터로 전달한다.


풀이

점검

home에서 sqlinjection을 시도해보았지만 취약점은 발생하지 않았다.

'
search에서 위의 쿼리를 입력하였을 때, 그대로 실행되어 sqlite3 에러가 발생하였다.
따로 필터링 되는 문자는 없었지만 sqlite3에서 sql injection으로 스키마 정보를 획득하는 방법을 알아야 한다.

참고 - https://velog.io/@woounnan/SQLITE-SQL-Injection

exploit

스키마 생성시 전달된 쿼리문을 통해 테이블명, 컬럼명을 한 번에 확인할 수 있다.
' union select 1, sql from sqlite_master --

확인된 정보로 password를 확인한다
' union select 1, password from users --

해당 패스워드는 챌린지의 플래그값이다.

0개의 댓글