Los assassin 15번 문제 (rubiya)

2019. 10. 23. 20:59Wargame/Load of SQL injection (rubiya)

이문제에서 가장 먼저 보아야 할 부분은 쿼리에서 입력한 pw 의 값이 like 로 비교된다는 것이다.

여기서 like 란 

MYSQL 문법으로  보아야 할 부분은 쿼리에서 입력한 pw 의 값이 like 로 비교된다는 것이다.=

여기서 like 란 

MYSQL 문법으로 문자열 부분검색 으로

일반적으로 DB에서 특정 단어가 포함된 레코드를 찾기 위해서 LIKE 를 주로 사용한다. 

ex) select id from test where id like a%;

라는 쿼리가 있으면 

a로 시작하는 모든 값이 출력된다.

이러한 like 의 성질을 이용해서 값이 있으면 그 글자 뒤에 한글자씩 추가해주면서 값을 대입해보자.

이처럼 다른 값을 넣을때에는 아무값도 나오지 않지만 9%라는 값을 넣으면 id 가 존재하기 때문에 Hello guest 가 출력된다.

아마 admin 과 guest 는 초반에 같은 문자열을 가진것으로 보인다.

그래서 9+=추가할글자 식으로 hello guest 가 나온다면 계속 대입해보자.

위처럼 admin 의 페스워드는 902로 시작하는것을 알 수 있다.