XSS Challenge_Level14

앞 문제와 같게 style 태그에 입력 값이 들어간다.

역시 "는 HTML 인코딩 된다. 또한 url이나 script를 xxx로 치환한다.

인터넷 익스플로러 6과 7은 style="x: expression(alert(1))" 형태의 dynamic properties 를 이용할 수 있다고 한다. 하지만 이 역시 expression를 xxx로 치환하여 방어한다.

필터링하는 단어의 중간에 %00을 추가하면 필터링을 우회할 수 있다.

브라우저를 통해 전송하는 경우 브라우저가 %를 인코딩 하므로, 프록시로 잡아서 고쳤다. XP라서 Paros를 이용했다.

background-image: u%00rl(javasc%00ript:alert(document.domain)) 를 입력하였다.

필터링을 우회하여 잘 작동한다.


tags: writeup, xss, reflected xss, wstg-inpv-01, web hacking, css injection