要想看前面的五关请看xss-labs-master 第一关到第五关通关
Level 6
进入题目废话不多说,上来就是一个test测试一下会不会变化
可以看到提示信息有输入的内容,昨天我想了一个可以看到JS变化的代码,话不多说直接上(<script Onon>
)
通过查看网页源代码,可以知道script、on等关键字会在中间加一个下画线,但是大写的关键字就不会,所以此题应该就是可以使用大小绕过
绕过语句为"><scRipt>alert(/XSS/)</script>
,回车之后就弹框了,接着来下一关
Level 7
来到第七关,话不多说,直接上测试代码
右键查看网页源代码可以看到script、on等关键字都被过滤了,只剩下一个空格与大小于号
根据关键字被替换成空,想到使用双写进行绕过,话不多说直接来
绕过语句为"><scrscriptipt>alert(/XSS/)</scrscriptipt>
,回车之后就显示了弹框,接着进入下一关
Level 8
进入第八关发现还是熟悉的输入框,但是在输入框下与一个超链接,把测试代码丢进去,移动到超链接可以看到左下角的链接地址
通过查看网页源代码发现大小写关键字都被过滤了
尝试使用其他编码进行测试,看看能不能绕过
尝试了几种,最后使用字符实体成功了,绕过代码为javascript:alert(/xss/)
,弹框之后点击确定接着下一关
Level 9
进入第九关直接输入测试代码
查看网页源代码可以看到提示说输入的链接不合法,尝试输入www.baidu.com
最后发现还是链接不合法,难道百度不是个合法网站(玩笑话),访问百度首页把百度URL复制下来放进去尝试一下
发现在URL中必须有http://关键字才是一个合法链接,https://也不是一个合法的,看来是检测有没有关键字,那么就构造一个带有http://的绕过语句
使用了字符实体编码以及注释来构造语句,绕过语句为javascript:alert(/xss/)/*http://*/
,出现弹框进入下一关
Level 10
进入第十关,发现终于没有熟悉的输入框了,但是在URL中还是有keyword参数,修改值为test发现在页面中也有变化,发现页面没有什么可以利用的,查看页面源代码
发现表单中藏有三个隐藏域,一个个进行传值请求尝试
当传值给t_link和t_history时源代码的表单中并没有出现任何的代码,当传值给t_sort时,t_sort的value就有了值,但是大小于号都被过滤成空了,所以需要换一种思路来进行绕过绕过语句为" type="text" onclick="javascript:alert(/XSS/)
,先把属性改为text,然后加一个点击事件,点击输入框之后就可以进行弹框了,确定之后就可以进入下一关了,下一关请听下回讲解。
自己选择的路,爬也要爬完