<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

+ Recent posts