xss-labs 靶场前七关详细攻略(持续更新)

第一关

我们可以发现url中tset值传入了name里,对网页进行抓包,我们可以清楚地看到网页使用get请求

我们直接在test位置输入payload:

<script>alert()</script>

完成本关

第二关

首先我们直接在输入框中输入payload没有成功

查看源码,可以发现输入进去的payload在input下的value中保存,需要"闭合

构造新的payload:

"><script>alert()</script>

完成本关

第三关

我们直接在输入框中输入payload没有成功

查看源码我们会发现与上一题源码相同,同样的输入">,页面仍显示不成功,此时我们可以猜想是不是"<>"符号被实体化

我们可以利用onclick事件绕过,输入框输入

'onclick='alert(1)

再点击输入框

完成本关

第四关

输入payload点击搜索后查看源代码

通过输入框我们可以发现原本输入进去的payload此时变成了scriptalert()/script,于是我们可以猜想"<>"符号是不是被实体化

利用onclick事件绕过,输入框输入

"onclick="alert(1)

,再点击输入框

完成本关 

第五关

输入payload点击搜索后查看源代码

我们可以发现输入框中的<script>变成了<scr_ipt>

尝试输入"οnclick="alert(1),我们可以发现其中的on也被过滤了,于是本题我们就需要使用其他的payload来进行操作,其中javaScript:alert(1)就使用了java伪协议

构造新的payload:

"><a href='javascript:alert(1);'>

同理: 

"><iframe src="javascript:alert(1)"></iframe> 
"><a href="javascript:alert(1)">

也可完成绕过 

输入新的payload后点击输入框后的蓝色字体,即可进行跳转

完成本关

第六关

输入payload点击搜索后查看源代码

我们可以发现输入框中的<script>变成了<scr_ipt>

输入"οnclick="alert(1),可以发现同上题一样,其中的on也被过滤了

尝试输入"><a href='javascript:alert(1);'> ,我们可以发现此时href也发生过滤

尝试大小写混合绕过,将href换成大写字母,输入新的payload:

"><a HREF='javascript:alert(1);'>

完成本关

第七关

输入关键字

 "OnFocus <sCriPt> <a hReF=javascript:alert()>

查看网页源代码

我们可以发现输入的值变成了

故采用双拼写绕过

双拼写绕过是指攻击者通过在输入中重复写入敏感关键字(如HTML标签、JavaScript关键字、文件扩展名等),以绕过那些仅对敏感关键字进行单次替换或删除的过滤机制。当服务器或应用程序的过滤系统删除或替换掉一个关键字实例时,由于另一个实例仍然存在,因此攻击者能够构造出有效的攻击载荷。

构造新的payload:

"><scscriptript>alert()</scscriptript>

完成本关

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值