Web缓存投毒对资源导入的不安全处理攻击实践

使用Web缓存投毒来攻击对资源导入的不安全处理

一些网站使用unkeyed标头动态生成用于导入资源的URL,例如外部托管的JavaScript文件。在这种情况下,如果攻击者将适当的标头的值更改为他们控制的域,则他们可能会操纵生成的URL指向自己的恶意JavaScript文件。

如果包含此恶意URL的响应被缓存,则攻击者的JavaScript文件将被导入并在其请求具有匹配的缓存键的任何用户的浏览器会话中执行。

攻击步骤

先对浏览器设置bp的代理,然后打开存在漏洞的网站,下面这个就是网站的首页:
在这里插入图片描述

这时可以在bp的HTTP history中看到我们访问的请求:

在这里插入图片描述

找到那个首页的请求,就是上图中URL那一栏只有一个 \ 的那一个请求。然后将请求发送到bp的Repeater模块中。

在这里插入图片描述

然后到漏洞利用需要的网站上将我们的攻击代码存储起来,这个漏洞是当前网站加载其他网站的不安全js资源文件导致的。
在这里插入图片描述

可以看到,攻击payload是 alert(document.cookie) ,然后我们就可以将我们资源网站的网址提供给具有漏洞的网站了,我们在bp的repeater中修改我们的数据包如下:
在这里插入图片描述

可以看到我们第一次访问的时候,是服务器进行提供的服务,然后我们再次发送这个数据包,后可以看到 X-Cache 字段的变化,从 miss 变成了 hithit 表示第二次返回的数据包是从缓存中发送的。

在这里插入图片描述

然后我们现在访问有漏洞的网站,就可以看到我们解决了这个实验:

在这里插入图片描述

这个漏洞用我们刚才的payload会看到用户的cookie会被弹出,如果换用更具危害性的payload,将会造成更严重的攻击。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值