반응형
[los - SQL injection] skeleton ( 10단계 )
[ 풀이과정 ]
skeleton에서도 문제가 풀리는 조건은 마찬가지로 if($result['id'] == 'admin')를 만족해줘야한다.
다른 테이블로 이동할수 없도록 막혀져 있고 SQL 쿼리쪽을 확인해보면
$query = "select id from prob_skeleton where id='guest' and pw='{$_GET[pw]}' and 1=0" 로 되있다.
다만 여기서는 무언가 결과를 출력해주는 echo에 대한 내용이 없기 때문에
웹페이지의 출력을 통해서 참/거짓을 파악할수 없는 경우이다...
이럴때는 SQL 내장함수인 sleep()을 이용해서 참/거짓 확인이 가능하다...
( 약간의 다른 부분만 있더라도 잘이용하면 충분히 참/거짓을 판단하는 요소로 만들수 있다 )
참/거짓만 확인이 가능하다면 인젝션이 가능하다는점은 확인할 수 있어
여기서는 입력값에 대한 별다른 검증이 없고 다른 부분은 다 사용이 가능하기 때문에
string SQL injection을 이용해서 admin을 찾아낼수가 있다.
select id from prob_skeleton where id='guest' and pw='' or id='admin' #' and 1=0
10단계 클리어~~~
반응형
'워게임 > LOS' 카테고리의 다른 글
[los - SQL injection] darknight ( 12단계 ) (0) | 2017.09.23 |
---|---|
[los - SQL injection] golem ( 11단계 ) (0) | 2017.09.23 |
[los - SQL injection] vampire ( 9단계 ) (0) | 2017.09.23 |
[los - SQL injection] troll ( 8단계 ) (0) | 2017.09.23 |
[los - SQL injection] orge ( 7단계 ) (0) | 2017.09.23 |
댓글