1.level1:
通过观察发现可以在url处插入js语句就可以了
2.level2:
输入<script>alert()</script>发现没有反应去查看js源码发现我们的语句被value包裹了
既然如此那我们就想办法先去闭合value
3.level3
使用平常的js语言发现无法注入有可能是对我们输入的内容进行了过滤然后我拿onfocus事件去试了一下发现可以
4.level4:
跟上一个差不多就是闭合方式不一样
5.level5:
发现它在我的输入中o和n之间加了一个下划线进行过滤
然后使用把value进行闭合然后写一个标签a进行绕过
test"/><a href="javascript:alert(1)" />
6.level6:
我使用前一个的攻击语句发现href被过滤了
然后我通过大小写进行了绕过
7.level7:
使用上一个的语句发现它直接把我href删掉了
我突然想到可以用双写绕过不过好像还是没有反应
所以我又换了一种语句不过是使用双写
8.level8:
我发现需要将js语句编码成HTML实体
<a src="javascript:alert(1)" />
javascript:alert(1)
9.level9:
使用和上一关一样的方法但他提示我输入的链接不合法
那么用编码弹窗+合法链接触发弹窗。
javascript:alert(1)//http://www.baidu.com
10.level10:
根据查看源码原来还有其他隐藏的传参方法这里是get传参t_sort,并过滤掉了<>号,不能闭合插入标签,但是我们还能用onfocus事件,因为这里输入框被隐藏了,需要添加type="text",构造payload
?t_sort=" onfocus=javascript:alert() type="text