Los gremlin 1번 문제 (rubiya)

2019. 10. 6. 21:23Wargame/Load of SQL injection (rubiya)

LoS는 따로 플래그를 입력하는 방식이 아니라 코드 안의 solve() 함수가 동작하도록 하면 문제가 풀린다.

그리고 친절하게 내가 입력 한 값이 어떻게 쿼리에 들어가는지도 보여준다.

첫 번째 문제는 gremlin이다.

앞서 말한것 처럼 solve() 함수를 동작시키기 위해선 if($result['id']) 라는 조건문을 통과해야 한다.

즉 id 의 존재 여부에 따라서 if 문의 조건을 통과 할 수 있는지 없는지를 말한다.

하지만 id가 없으면 0이 반환되기 때문에 아이디가 어떻든 존재하기만 하면 이 문제는 풀린다.

 

select id from prob_gremlin where id='{$_GET[id]}' and pw='{$_GET[pw]}'

위의 쿼리처럼 GET방식으로 아이디와 비밀번호를 입력받아서 퀴리문을 보낸다.

id 의 값이 뭐든 상관 없기 때문에 참이라는 결과값만 만들어 주면 될 것 같다.

그래서 쿼리문을 완성하기 위해서 아래의 파라미터 값을 입력했다.

?id= 1' or 1=1#

-> # 는 데이터베이스 mysql 의 한줄 주석

'Wargame > Load of SQL injection (rubiya)' 카테고리의 다른 글

Los darkelf 6번 문제 (rubiya)  (0) 2019.10.10
Los wolfman 5번 문제 (rubiya)  (0) 2019.10.10
Los orc 4번 문제 (rubiya)  (0) 2019.10.09
Los goblin 3번 문제 (rubiya)  (0) 2019.10.09
Los cobolt 2번 문제 (rubiya)  (0) 2019.10.09