题库链接:https://xss.haozi.me/
这个游戏是要弹图片才算通关,光弹窗是不行的。
第一关没有任何限制条件,所以直接用img标签过。
payload:
使用img标签,方法是使src错误,而使得onerror执行。我们就可以在onerror后面进行操作了。
这里给出的限制条件是
payload:
官方文档:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea
这里给出的限制条件是input标签,我们可以尝试闭合input标签,即添加"和>。
payload:
">
这里给出的限制条件是replace方法和过滤了()。我们可以通过实体编码括号和反引号来过。
payload:
这里给出的限制条件是过滤了()和反引号`,我们可以使用编码来过 。
payload:
这里给出的限制条件是过滤了右注释符,并且让你在注释符中输入,我们可以通过闭合注释来过。
payload:
--!>
这里给出的限制条件是对auto和on开头只要加上等号就会变为下划线,加上大于号大于号也会变为下划线,也就是说过滤了autoforce和onerror事件。我们可以使用一个换行的技巧前提要加一个type属性值image和src映射路径属性,然后再让等于号和属性分开。
payload:
type="image" src="1" onerror
=alert(1)
这里给出的限制条件是使用正则表达式对<>>标签进行了限制,也就是说只能<或者>,总之不能闭合标签,那么这里我们可以使用
payload:
这里给出的限制条件是对进行了过滤,如果输入就会显示后面的编码内容,并且style标签中只能出现文本或者符号,js代码无法生效,可以模仿0x06中的换行来过。
payload:
这里给出的限制条件是限制了URL,后面按正常套路闭合就行了,在使用img标签来过。
payload:
https://www.segmentfault.com>
这里给出的限制条件是对&、’、“、<、>、\、/进行了过滤,只要输入这些符号就会被转为实体编码,但img标签的src里是认符号的实体编码,和0x09一样直接输入就通过了。
payload:
https://www.segmentfault.com@xss.haozi.me/j.js
这里给出的限制条件是将所有的字母都换成了大写,所以要将alert(1)进行实体编码。
payload:
这里给出的限制条件是增加了script的过滤,我们可以使用实体编码的方法来过。
payload:
这里给出的限制条件是通过正则表达式过滤了<、/、"、'这四种符号,并且指定了我们的input在//注释语句中,首先考虑逃出注释语句,使用–>注释符逃出,不过这里注意我们在使用语句alert(1)时需要换行。
payload:
-->
alert(1)
-->
这里给出的限制条件是使用正则表达式过滤了所有字母,并且将字母小写转为了大写,如果输入