研究人员发现 70 个 Web 缓存中毒漏洞,涉及 GitHub/GitLab 等
安全研究员 Iustin Ladunca(Youstin)近期针对许多网站(包括一些高流量的在线服务)进行了调研,结果发现了 70 个具有不同影响的缓存中毒漏洞。
根据介绍,Web 缓存中毒攻击的目标是网络服务器和客户端设备之间的中间存储点,如 point-of-presence servers、代理和负载均衡器。中间商通过存储本地版本的 Web 内容来加快向 Web 客户端的传送速度,从而帮助提高网站的性能。Web 缓存中毒攻击操纵了缓存服务器的行为,以及它们如何响应客户的特定 URL 请求。
Ladunca 自 2020 年 11 月开始研究 Web 缓存中毒;然而仅仅几周后,他就发现了两个新的缓存中毒漏洞:“这让我意识到缓存中毒的攻击面有多大”。他在一篇博客中详细介绍了自己是如何发现和报告网络缓存漏洞的,其中包括有 Apache Traffic Server、GitHub、GitLab、HackerOne 和 Cloudflare 以及其他服务器。
“一种常见的模式是缓存服务器被配置为只缓存静态文件,这意味着攻击只限于静态文件。即便如此,仍然有很大的影响,因为现代网站严重依赖 JS 和 CSS,删除这些文件会真正影响应用程序的可用性。”
多个 Web 缓存漏洞导致拒绝服务(DoS)攻击。缓存服务器使用一些 headers 作为 keys 来存储和检索 URL 请求。通过在 unkeyed headers 中使用无效值,Ladunca 能够强制服务器缓存错误响应,并在之后提供这些响应而不是原始内容,这会使得客户无法访问目标网页。
“就所使用的技术而言,迄今为止最常见的是通过 unkeyed headers 进行 CP-DoS,这可能占总发现的 80%。”
其他 Web 缓存中毒漏洞可能会导致跨站点脚本(XSS)攻击。例如,一个漏洞可以强制缓存服务器将 JavaScript 文件请求转发到攻击者控制的地址。在另一种情况下,Ladunca 还能够将缓存请求从一个主机重定向到另一个容易受到基于 DOM 的 XSS 攻击的主机。
Ladunca 因其发现的 70 个网络缓存漏洞,而获得了总计约 4 万美元的漏洞赏金。同时,他也分享了一些相关经验表示,确保 CDN 免受缓存中毒攻击的一个好方法是禁用错误状态代码的缓存,他认为这种缓解措施应该能阻止很大一部分的 CP-DoS 攻击。还建议使用 PortSwigger 的 Param Miner,这是一个开源工具,可以识别隐藏的、未链接的参数。针对 Web 应用程序运行 Param Miner 可以帮助检测可用于 Web 缓存中毒的 unkeyed headers。
不过 Reddit 上有网友对 Ladunca 的建议进行了反驳称,“禁用错误状态代码的缓存”绝对不是一个可行的解决方案。并指出,如果禁用错误状态代码的缓存,处理错误响应的每个请求都会返回到 origin,从而有效地创建了一个错误率不断增加的 DDoS 攻击;这将使得 origin offline,直到有人干预。
更多讨论详情可查看此处。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
谷歌低调开发“GFR”,用于调试 Vulkan GPU 挂起/崩溃问题
Igalia 的开发人员 Danylo Piliaiev发现谷歌去年悄悄地开源了图形飞行记录器 (Graphics Flight Recorder-GFR)。GFR 作为隐式 Vulkan 层实现,用于追踪和识别 GPU 挂起和崩溃问题,可在 Windows 和 Linux 上运行。 GFR 通过向 Vulkan 命令缓冲区添加标记,检测到错误时 GFR 会自动从这些命令缓冲区生成日志转储——并将转储反馈到脚本,以重新生成源文件。Danylo指出GFR 在解决一些挂起问题方面很有用,他已经用这个软件轻松地解决了 “Alien: Isolation” 和 “Digital Combat Simulator” 这两款游戏的挂起问题,建议其他开发人员也试一试。 据外媒Phoronix 介绍, GFR 的优势在于它作为 Vulkan 层的开销很低,足以让它一直保持激活状态,直到发生 GPU 挂起/崩溃。不过它也存在一些缺点: 对不可恢复的挂起没啥用处,因为没办法返回标记。 如果在 GPU 并行运行draw/dispatch 调用,写标记会导致它们变成顺序执行,或出现精度问题。 依赖于 VK_A...
- 下一篇
KDE 2022 路线图,Wayland 取代 X11,更新 Breeze 图标
KDE 开发者 Nate Graham 近日公布了 KDE 桌面在 2022 年的开发路线图,列出了这个由社区驱动的开源桌面环境今年的主要开发工作。与以往公布的路线图一样,这不是一份正式的承诺,这只是给广大用户对 KDE 团队正在进行或即将开始的开发工作的一个预览,而且官方认为在 2022 年底前完成这些事情是可行的。 对于 2022 年,以下是 KDE 有望在今年实现的主要项目: 合并 "格式和语言" 设置 长期以来,系统设置中的语言和格式页面一直存在一个问题,就是虽然位于两个不同的页面,但它们能够设置的内容却有重叠。目前开发者 Han Young 正在努力将它们合并成一个新的页面,以使其更加明确,让用户更难通过选择不兼容的设置来扰乱系统。这项工作正在进行中,有希望能在 2022 年上半年完成。 大改 Breeze 图标 KDE 设计师 Ken Vermette 正在努力改进和更新 Breeze 的图标。彩色的图标将变得柔和和圆润化一些,并在视觉上进行更新,删除旧的丑陋元素。那些原本就是单色的图标也会得到更新。所有这些图标都有望对你的系统颜色方案进行适配。Places 图标的初步工作...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19