RangeAmp-一系列操作Range HTTP标头的CDN攻击

一队研究人员 来自北京大学,清华大学和德克萨斯大学达拉斯分校 发布有关的信息 您所做的工作是为了能够识别 一种新型的DoS攻击,他们将其命名为“ RangeAmp” 以及基于使用Range HTTP标头组织通过内容分发网络(CDN)进行的流量放大的方法。

方法的本质 事情是, 由于在许多CDN上处理Range标头的怪癖,攻击者 可以从大文件中请求一个字节 通过CDN,但是 CDN将从目标服务器下载整个文件或更大的数据块 用于缓存。

根据CDN,这种攻击过程中的流量放大程度是724到43330倍,可用于使传入的CDN流量超载或减少到受害者站点的最终通信信道的带宽。

Range标头允许客户端确定文件中位置的范围 应该加载而不是返回整个文件。

例如,客户端可以指定“ Range:bytes = 0-1023”,而服务器将仅传输前1024个字节的数据。 下载大文件时,此功能的需求很高:用户可以暂停下载,然后从中断位置继续下载。 当指定“ bytes = 0-0”时,标准规定给出文件中的第一个字节“ bytes = -1”-最后一个“ bytes = 1-”-从1个字节到文件末尾。 您可以在一个标头中传递多个范围,例如“ Range:bytes = 0-1023.8192-10240”。

另外, 提出了第二种攻击选择 (称为RangeAmp重叠字节范围(OBR)攻击,旨在增加网络负载 当流量通过另一个CDN(用作代理)转发时(例如,当Cloudflare充当前端(FCDN)而Akamai充当后端(BCDN)时)。 该方法类似于第一次攻击,但位于CDN中,可让您在通过其他CDN访问时增加流量,从而增加基础结构的负载并降低服务质量。

攻击者的想法是向CDN范围请求发送多个范围,例如“ bytes = 0-,0-,0-...”,“ bytes = 1-,0-,0-...”或“ bytes =-1024,0-,0 -...«。

请求包含大量的“ 0-”范围, 这意味着文件从头开始返回到结尾。 当第一个CDN引用第二个CDN时,由于错误的范围分析,如果在最初提交的攻击请求中存在范围重复和交集的情况,则会将完整的文件返回到每个“ 0-”带(范围未聚合,但顺序排列)。 这种攻击的流量放大程度是53到7432倍。

该研究检查了13个CDN的行为:Akamai,阿里云,Azure,CDN77,CDNsun,Cloudflare,CloudFront,Fastly,G-Core Labs,华为云,KeyCDN,StackPath和腾讯云。

“不幸的是,尽管我们多次向他们发送电子邮件并尝试与他们的客户服务联系,但StackPath并未提供任何反馈,”研究团队说。

“总体而言,我们已尽最大努力以负责任的方式报告漏洞并提供缓解措施。 在本文档发布之前,相关的CDN提供商已经有将近七个月的时间来实施缓解技术。”

审查的所有CDN都允许对目标服务器的第一类攻击。 CDN攻击的第二个版本原来暴露给6个服务,其中四个可以充当攻击的接口(CDN77,CDNsun,Cloudflare和StackPath),另外三个充当后端的角色(Akamai,Azure)和StackPath)。

在Akamai和StackPath中获得了最高的收益,这使您可以在Rank标题中指示超过10个等级。

CDN所有者已收到有关 漏洞 大约7个月前 在公开披露信息时,12个CDN中有13个解决了所发现的问题,或表示愿意解决这些问题。

数据来源: https://www.liubaojun.org


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。