Dio HTTP库CRLF注入漏洞分析与修复

本文详细分析了Dio包4.0.0版本存在的CRLF注入漏洞(CVE-2021-31402),攻击者可通过控制HTTP方法字符串实施攻击,漏洞已被修复并在5.0.0版本中解决。

CVE-2021-31402:Dio易受HTTP方法字符串CRLF注入攻击

漏洞详情

包名: dio (Pub) 受影响版本: < 5.0.0 修复版本: 5.0.0 严重程度: 高危 (CVSS评分7.5)

漏洞描述

影响

Dio包4.0.0版本(用于Dart)存在CRLF注入漏洞,当攻击者能够控制HTTP方法字符串时,可利用此漏洞进行攻击。此漏洞与CVE-2020-35669不同。

修复补丁

该漏洞已通过cfug/dio@927f79e提交修复,并包含在v5.0.0及以后版本中。

临时解决方案

将修复提交cherry-pick到您自己的fork分支也可以解决此漏洞。

技术信息

CVSS v3基础指标

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

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

弱点分类

CWE-93: CRLF序列的不恰当中和(CRLF注入) 产品使用CRLF(回车换行)作为特殊元素,例如用于分隔行或记录,但没有对输入中的CRLF序列进行中和或错误地进行了中和。

参考链接

致谢

  • licy183 - 报告者
  • AlexV525 - 修复开发者
  • set0x - 报告者
  • thomas-chauchefoin-sonarsource - 分析师
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计