728x90
Lord of sql injection - Zombie Assassin 풀이 |
los 17번에 대한 풀이 포스팅입니다.
문제 접근
이전에는 보지못했던 strrev라는 함수가 나왔습니다. strrev 함수를 찾아보니
strrev는 문자열을 거꾸로 반환하는 함수입니다.
또 addslahses는 싱글쿼터나 더블쿼터,NULL(%00)의 앞에 특수문자를 문자열로 만들어주는 \를 넣어서
문자열로 만들어 버리는 함수입니다.
즉 다시 말해서
strrev(addslahses)가 적용이되면, 특수문자가 문자열 처리 된 후에 순서가 뒤집히게 된다는 것입니다.
바로 이전 문제에서 활용했던 특수문자를 통해 싱글쿼터를 무력화하는 방법을 사용해서 해결하고 싶은데,
예를 들어 id 값에 '\'를 입력하면
위의 그림과 같이 \가 하나 더 생겨서 무력화되어버립니다. ( 당연히 입력한 값이 반전되는 것도 신경써야합니다.)
따라서 이때 null문자(%00)를 넣게되면 아래와 같이 됩니다.
select id from prob_zombie_assassin where id='0\' and pw='' |
이렇게 만드는데까지 왔다면 16번 문제인 sucubus와 동일한 문제라는 것을 알 수 있습니다.
따라서 뒤에 pw='or true # ' 으로 만들어야하는데, 입력한 값이 거꾸로 삽입되므로
그것을 생각해서 처음부터 역순으로 넣어줍니다.
?id=%00&&pw=%23 eurt ro ( or true # 을 역순으로 작성) |
결과
728x90
'개인 공부 > WEB' 카테고리의 다른 글
[웹해킹] LOS 19 - (Xavis) (0) | 2021.06.19 |
---|---|
[웹해킹] LOS 18 - (Nightmare) (0) | 2021.06.19 |
[웹해킹] LOS 16 - (Succubus) (0) | 2021.06.19 |
[웹해킹] LOS 15 - (Assassin) (1) | 2021.06.19 |
[웹해킹] LOS 14 - (Giant) (0) | 2021.06.19 |
댓글