xss-labs/level11

这篇博客深入探讨了一次XSS攻击的实例,详细描述了如何利用htmlspecialchars转义的漏洞进行代码注入,并通过Burp Suite抓包工具构造恶意请求,成功触发弹窗。文章还分析了后台服务器的代码处理方式,揭示了参数处理的弱点,指出特定表单字段无法回显的问题,强调了安全防护的重要性。
摘要由CSDN通过智能技术生成

首先输入

<script>alert('xss')</script>

丝毫不差 没有出现回弹现象 根本就不出人意料好吧

接着来看一下源代码好吧

能够看得出来第一个输出点由于htmlspecialchars转义操作 所以上述代码根本行不通

这一关比上一关又多了一个隐藏表单 一共是有四个隐藏表单 从第四个隐藏表单的name 我们大概就可以推敲出他后台可能是将抓包工具中的referer参数直接插入到了value值处 我们可以利用这一个点来构造恶意代码 

在这之前 我们可以测试一下如果不抓包 能不能直接看得出来哪一个表单能够直接回显输入的

<script>alert('xss')</script>&t_link=" type="text&t_history=" type="text&t_sort=" type="text&t_ref=" type="text

结果页面一个表单都没有回显出来太可恶了说明我们只能通过抓包工具burpsuite来进行网页的抓取

然后构造一个referer参数 因为发送到repeater的参数列表中没有referer参数 所以得自行构造

bp界面如下所示 

然后将包给forward 记得proxy处要更新referer参数

放包点击表单后成功弹窗 嗨嗨!!

接着查看后台服务器代码

将提交的参数列表中的keyword参数赋值给str变量 然后将str变量通过htmlspecialchars()函数转义后直接插入到第一个输出点 将提交的参数列表中的referer参数赋值给str11 然后经历一系列的替换操作之后直接插入到name为t_ref的value属性值处 然后我们看到name为t_sort的表单中的value属性值处使用了htmlspecialchars()函数转义 所以无法将前面的value的双引号进行闭合操作 所以就算构造一个type="text"属性值也无法显示这个表单

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

axihaihai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值