1. beplay体育能用吗网络安全学院
  2. beplay体育能用吗网络缓存中毒

beplay体育能用吗网络缓存中毒

在本节中,我们将讨论Web缓存中毒是什么以及哪些行为可以导致Web缓存中毒漏洞beplay体育能用吗。我们还将查看一些利用这些漏洞的方式,并建议您可以减少对其的曝光方式。

什么是web缓存beplay体育能用吗中毒?

beplay体育能用吗Web缓存中毒是一种高级技术,攻击者利用Web服务器和缓存的行为,将有害的HTTP响应提供给其他用户。

从根本上说,网络缓存中毒包括两beplay体育能用吗个阶段。首先,攻击者必须找出如何从后端服务器引出响应,该响应无意中包含某种危险的有效负载。一旦成功,他们需要确保他们的响应被缓存,并随后提供给目标受害者。

中毒网络缓存可能是分配beplay体育能用吗众多不同攻击的破坏性手段,利用漏洞XS.,JavaScript注入,打开重定向,等等。

beplay体育能用吗网络缓存中毒研究

这项技术首先受到2018年研究论文的“实用网络缓存中毒”,并在2020年进一步开发了第二个研究论文,“网络缓存纠缠:中毒的新途径”进一步发展。beplay体育能用吗如果您对我们如何在野外发现和利用这些漏洞的详细描述,我们的研究页面上提供了完整的写入。

网络缓存如何工作?beplay体育能用吗

要了解如何出现Web缓存中毒毒缓存漏beplay体育能用吗洞,重要的是对网络缓存如何工作的基本了解。

如果服务器不得不单独向每个单个HTTP请求发送新响应,这可能会过载服务器,从而导致延迟问题和用户体验不佳,尤其是在繁忙时段。缓存主要是一种降低这些问题的手段。

缓存在服务器和用户之间坐在,在那里它将其保存(缓存)对特定请求的响应,通常用于固定的时间。如果另一个用户发送等效请求,则缓存简单地将缓存响应的副本直接用于用户,而不从后端交互。这极大地通过减少它必须处理的重复请求的数量来极大地缓解服务器上的负载。

正常缓存行为

缓存键

当缓存接收到HTTP请求时,首先必须确定是否存在它可以直接服务的缓存响应,或者它是否必须转发后端服务器处理请求。缓存通过比较请求的组件的预定义子集,以统称为“缓存键”来识别等效请求。通常,这将包含请求行和主持人标题。据说未包含在缓存键中的请求的组件是“不合核”。

如果传入请求的缓存密钥与先前请求的键匹配,则缓存将它们考虑到等效。因此,它将提供用于原始请求生成的缓存响应的副本。这适用于所有后续请求与匹配缓存键,直到缓存的响应到期。

至关重要,通过缓存完全忽略该请求的其他组件。我们将在稍后更详细地探讨这种行为的影响。

网络缓存中毒攻击的影响是什么?beplay体育能用吗

Web缓存中毒的影响严重依赖beplay体育能用吗于两个关键因素:

  • 攻击者到底可以成功地缓存什么
    由于中毒缓存更具分布方式,而不是独立攻击,Web缓存中毒的影响与注入的有效载荷有关的有害地连接。beplay体育能用吗与大多数类型的攻击一样,Web缓存中毒也可以与其他攻击结合使beplay体育能用吗用以进一步升级潜在的影响。
  • 受影响页面上的流量量
    中毒反应只会向缓存中毒时访问受影响页面的用户。结果,根据页面是流行的,影响是否可以从不存在的范围。例如,如果攻击者在主要网站的主页上毒害了掌握缓存的响应,则攻击可能会影响成千上万的用户而没有攻击者的任何后续交互。beplay体育能用吗

请注意,缓存条目的持续时间不一定会影响Web缓存中毒的影响。beplay体育能用吗攻击通常可以以这样的方式脚本,即它无限期地重新窃取缓存。

构建网络缓存中毒攻击beplay体育能用吗

一般来说,构建基本的Web缓存中毒攻击涉及以下步骤:beplay体育能用吗

  1. 识别和评估不合格的输入
  2. 从后端服务器引出有害的响应
  3. 获得响应缓存

识别和评估不合格的输入

任何Webeplay体育能用吗b缓存中毒攻击都依赖于操作未核化输入,例如标题。beplay体育能用吗在决定是否为用户提供缓存的响应时,Web高速缓存忽略不均衡的输入。此行为意味着您可以使用它们注入您的有效载荷并引出“中毒”响应,如果缓存,则将为请求具有匹配的缓存键的所有用户提供服务。因此,构建Web高速缓存中毒攻击时的第一步是识别服务器支持的不合格输入。beplay体育能用吗

您可以通过将随机输入添加到请求和观察它们是否对响应产生影响来识别不良输入。这可以是显而易见的,例如直接反射响应的输入,或者触发完全不同的响应。但是,有时效果更加微妙,需要一些侦探工作来弄清楚。您可以使用Burp Bascher等工具来比较使用和没有注入的输入的响应,但这仍然涉及大量的手动努力。

Param Miner.

幸运的是,您可以通过添加Param Miner.从BAPP商店扩展到Burp。要使用Param Miner,您只需右键单击要调查的请求,然后单击“猜测标题”。Param Miner然后在后台运行,发送包含不同输入的请求,从其广泛的标题列表中。如果包含其注入的输入之一的请求对响应有影响,则参数矿工将其在Burp中记录它,如果您使用的是“问题”窗格中打嗝套件专业,或者在扩展的“输出”选项卡中(“扩展名”>“扩展”>“Param Miner”>“输出”)如果您使用Burp套件社区版

例如,在下面的截图中,Param Miner发现了一个未key的头部X-Forwarded-Host在网站的主页上:beplay体育能用吗

Param Miner.

警告:在测试在实时网站上的未核化输入时,存在无意中导致缓存的风险,以便为真实用户提供生成的beplay体育能用吗响应。因此,重要的是要确保您的请求都有一个唯一的缓存键,以便它们只会为您服务。为此,每次提出请求时都可以手动将缓存Buster(例如唯一参数)添加到请求行。或者,如果您使用的参数矿工,则有选项可自动为每个请求添加缓存Buster。

从后端服务器引出有害的响应

一旦确定了一个不合核的输入,下一步就是评估网站如何处理它。beplay体育能用吗理解这对于成功引发有害的反应至关重要。如果在从服务器的响应中反映了输入而不被正确消毒,或用于动态生成其他数据,那么这是Web缓存中毒的潜在入口点。beplay体育能用吗

获得响应缓存

操纵投入以引出有害的反应是一半的战斗,但除非你能够导致缓存的响应,否则它不会实现太多的一半,这有时可能会很棘手。

是否缓存响应取决于各种因素,如文件扩展名、内容类型、路由、状态代码和响应头。您可能需要花一些时间来处理不同页面上的请求,并研究缓存的行为。一旦确定了如何获取包含恶意输入的缓存响应,就可以将攻击传递给潜在的受害者了。

beplay体育能用吗web缓存中毒

利用Web缓存中毒beplay体育能用吗漏洞

这个基本过程可以用来发现和利用各种不同的web缓存中毒漏洞。beplay体育能用吗

在某些情况下,web缓存中毒漏beplay体育能用吗洞是由于缓存设计中的一般缺陷而产生的。其他时候,特定网站实现缓存的方式可能会引入意想不到的怪癖,从而被利用。beplay体育能用吗

在以下部分中,我们将概述这两个方案中的一些最常见的例子。我们还提供了许多交互式实验室,以便您可以在操作和练习中看到一些漏洞,从而利用它们。

如何防止Web缓存中毒漏洞beplay体育能用吗

防止网络缓存中毒的最有效方法显然是完全禁用缓存。beplay体育能用吗虽然对许多网站来说,这可能不是beplay体育能用吗一个现实的选择,但在其他情况下,这可能是可行的。例如,如果您只使用缓存,因为在采用CDN时默认启用了缓存,那么可能有必要评估默认缓存选项是否真的反映了您的需求。

即使您确实需要使用缓存,将其限制为纯静态响应也是有效的,前提是您要对“静态”类保持足够的警惕。例如,确保攻击者不能欺骗后端服务器获取他们的静态资源的恶意版本,而不是真正的版本。

这也与关于Web安全性的更广泛的点相关。beplay体育能用吗大多数网站beplay体育能用吗现在将各种第三方技术融入其开发过程和日常运营中。无论您将第三方技术纳入您的环境,无论您自己的内部安全姿势如何,您都可以依赖于其开发商,也与您一样安全。在您只能安全成为您最弱的点的基础上,确保在整合之前完全了解任何第三方技术的安全影响至关重要。

特别是在web缓存中毒的情况下,这不仅意味着决定是否在默认情况beplay体育能用吗下打开缓存,还需要查看CDN支持哪些报头。由于攻击者能够操纵一系列模糊的beplay体育能用吗请求头,其中许多对网站的功能来说是完全不必要的,所以上面讨论的一些web缓存中毒漏洞就暴露了出来。同样,您可能会在没有意识到的情况下受到这些类型的攻击,这纯粹是因为您实现了某些默认支持这些无键输入的技术。如果站点不需要头文件,那么应该禁用它。

在实施缓存时,您还应采取以下预防措施:

  • 如果出于性能原因考虑从缓存键中排除某些内容,则重写请求。
  • 不要接受脂肪得到要求。请注意,默认情况下,某些第三方技术可能允许这一点。
  • 修补客户端漏洞,即使它们看起来不可利用。由于缓存的行为不可预测,这些漏洞中的一些实际上可能会被利用。有人发现一个使这个漏洞被利用的怪癖,不管是基于缓存的还是其他的,可能只是时间问题。

使用Burbeplay体育能用吗p套件查找Web缓存中毒漏洞

通过Portswigge的Web安全学院工作的好处beplay官网可以赌beplay体育能用吗

从Web安全学院开始,在那里你可以练习利用beplay体育能用吗现实目标的漏洞。和它的自由!

已经有了一个帐户?这里登录