Challenge/webhacking.kr
Webhacking 59번 문제 풀이
R4v!dus
2020. 2. 22. 13:29
소스 코드를 통해 result['lv'] == admin 이면 문제가 풀린다는 것과 lid, lphone은 login을 id, phone은 join과 연관 있다는 것을 짐작 할 수 있다.
id는 admin이란 글자가 필터링 되어 있으며 phone은 20자리가 넘으면 안된다고 되어 있다.
ladmin이 되게 생성 해주고 그 계정으로 로그인 하면 풀릴 문제다.
echo "id : {$result['id']}<br>lv : {$result['lv']}<br><br>";
음 id, lv이 표시되나보다. 이걸로 확인 하면서 구문을 수정해 나가면 될듯 하다.
reverse 함수를 이용하여 문제를 풀도록 했다.
주석을 사용하여 뒷 구문을 다 씹도록 하였다.(phone에 숫자는 뭐가 들어가든 상관 없다.)
insert into chall59 values('{$_POST['id']}',{$_POST['phone']},'guest')
이를 보면 id, phone, guest 순으로 값이 정렬된다.
insert into chall59 values(nimda,1,admin);-- ,'guest')
구문에 따라 값을 넣어보면 이런식으로 들어간다.
insert into chall59 values(nimda,1,admin);--
주석문으로 뒤를 다씹게 되면 온전한 하나의 쿼리문이 된다.
클