Scrapy与Brotli解压缩漏洞导致拒绝服务攻击

本文详细分析了Scrapy框架与Brotli压缩库存在的安全漏洞CVE-2025-6176。该漏洞由于解压缩保护机制失效,攻击者可通过特制的Brotli压缩数据导致内存耗尽,实现拒绝服务攻击。影响Scrapy 2.13.3及以下版本和Brotli 1.1.0及以下版本。

Scrapy与Brotli解压缩漏洞导致拒绝服务攻击

漏洞详情

包管理器: pip

受影响组件:

  • Scrapy (pip) - 受影响版本: <= 2.13.3
  • Brotli (pip) - 受影响版本: <= 1.1.0

已修复版本:

  • Brotli: 1.2.0
  • Scrapy: 暂无修复版本

漏洞描述

Brotli 1.1.0及以下版本存在由于解压缩导致的拒绝服务(DoS)攻击漏洞。该漏洞已在Brotli 1.2.0版本中得到修复。

此漏洞同时影响使用Brotli解压缩功能的Scrapy用户,Scrapy 2.13.2及以下版本的用户面临拒绝服务攻击风险。针对解压缩炸弹的保护机制无法有效缓解brotli变体攻击,远程服务器可通过特制数据使客户端崩溃,所需内存不足80GB。

这种攻击能够成功的原因是brotli对零填充数据能够实现极高的压缩比,导致在解压缩过程中消耗过多内存。

技术细节

CVSS v3基础指标:

  • 攻击向量: 网络
  • 攻击复杂度: 低
  • 所需权限: 无
  • 用户交互: 无
  • 范围: 未改变
  • 机密性影响: 无
  • 完整性影响: 无
  • 可用性影响: 高

CVSS v3基础分数: 7.5(高危)

弱点类型: CWE-400 非受控资源消耗

参考链接

安全建议

建议用户升级到Brotli 1.2.0版本以修复此漏洞,同时关注Scrapy官方关于此漏洞的修复进展。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计