반응형
[los - SQL injection] zombie_assasin ( 16단계 )
[ 풀이과정 ]
ereg함수의 취약점을 이용했는데 해당 함수는 NULL(%00) 문자를 만나게 되면
더이상 뒤에 문자를 점검하지 않는 특성이 있다.
해당 id값에 %00(NULL)문자를 먼저 넣어주면 이후는 필터링을 하지 않기 때문에
싱글쿼터의 사용이 가능해진다..
그래서 php는 ereg() 함수 대신에 preg_match() 함수를 사용하고
해당 함수는 아직까지는 취약점이 나오지 않은걸로 알고 있다..
그걸 이용해서 select id from prob_zombie_assassin where id='%00' or 1=1 #' and pw='' 와 같이
쿼리를 작성하게 되면 문제가 풀린다.
여기서는 ereg 함수의 취약점을 알고 있는지가 문제를 풀수 있는 방법이었다.
16단계 클리어~~~
반응형
'워게임 > LOS' 카테고리의 다른 글
[los - SQL injection] nightmare ( 18단계 ) (0) | 2017.09.24 |
---|---|
[los - SQL injection] succubus ( 17단계 ) (0) | 2017.09.24 |
[los - SQL injection] assasin ( 15단계 ) (0) | 2017.09.24 |
[los - SQL injection] giant ( 14단계 ) (0) | 2017.09.24 |
[los - SQL injection] bugbear ( 13단계 ) (0) | 2017.09.24 |
댓글