XSS Challenges WP

发布于 2017-03-27 10:12:45

XSS Challenges是一个日本老哥写的xss关卡,总体来说比较有意思,锻炼下xss各种的绕过方法,练习地址:https://xss-quiz.int21h.jp/
①level 1
没有任何过滤,直接构造payload:
<>alert(document.domain)</>
 
 
②level 2
f12审查元素发现是在input标签内,对标签进行闭合即可,构造payload:
"><>alert(document.domain)</>
 
 
③level 3
这一关输出的内容是包裹在<b>标签内,并且经过fuzz,<,>,"等都被转义了,无法闭合,但是发现还有一个是选择国家的选项
 
 
所以用burp抓包查看具体内容,发现是有两个post参数的,思考:参数1有限制,那会不会参数2能行呢?
 
 
改包,将p2改成xss的payload
</b><>alert(document.domain)</>

 
成功利用
 
 
④level 4
这一关也是有选择国家的,继续抓包查看,发现多了个p3参数
 
 
那么此时能否在p3上构造payload呢?尝试一波
 
但是发现,p3的payload被放到input标签内了
 
尝试修改payload进行闭合input标签
"><>alert(document.domain)</>
 
成功利用
 
 
⑤level 5
这里是对输入框内容进行了长度的限制
 
f12修改前端内容绕过限制
"><>alert(document.domain)</>
 
成功利用
 
 
⑥level 6
发现<>被html实体编码了,但是"好像能用
 
尝试构造属性事件进行利用,初次payload:
" =alert(document.domain),但是发现变成了下面这鬼样,输出跑出了value值,并且多了几个"
 
应该是事件在这本身就有一对",然后只需要在alert前面再加一个",将整个补充完整即可,payload:
" ="alert(document.domain)
 
 
⑦level 7
和前一关差不多,构造payload:
" =alert(document.domain)