<script>alert(1);</script> 를 입력할 수 있다면 성공입니다.
숫자를 입력할 때는 그대로 뿌려주는데 문자를 2개 이상 입력하면 no hack이라면서 필터링 됩니다.
무슨 문자던 2개 이상 입력할 수 없다면 시도 자체가 불가능합니다.
하지만 생각해 볼 수 있는 내용은 단순히 문자열에 대해서 ereg, eregi 함수는 특정 시스템에서 우회가 가능합니다.
%00 즉 NULL을 이용해서 문자열의 끝을 알려주는 것입니다.
문자열을 입력할 때 맨 마지막에 NULL 값이 자동으로 입력되어 문자열의 끝을 알려주는 역할을 합니다.
그렇다면 맨 처음에 %00을 입력해 문자열의 끝이라고 알려주게 된다면 ereg, eregi와 같은 함수들을 우회할 수 있습니다.
하지만 그냥 %00<script>alert(1);</script>를 입력하게 되면 잘 적용되지 않습니다.
burp suite를 통해서 중간에 값을 잡아보면 %의 값이 넘어갈 때 %25로 넘어가는 것을 알 수 있습니다.
이 값을 다시 %00으로 조정하면 성공하게 됩니다.
'WarGame > webhacking.kr' 카테고리의 다른 글
[webhacking.kr] prob 25 (0) | 2018.12.13 |
---|---|
[webhacking.kr] prob 24 (0) | 2018.12.13 |
[webhacking.kr] prob 18 (0) | 2018.12.13 |
[webhacking.kr] prob 58 (0) | 2018.12.07 |
[webhacking.kr] prob 51 (0) | 2018.12.07 |