Axios fetch适配器高危漏洞:配置的请求/响应大小限制形同虚设,可致服务器资源耗尽
Axios库被发现高危漏洞CVE-2026-44488,其fetch适配器未强制实施配置的请求/响应大小限制,攻击者可发送超大数据导致服务器资源耗尽。了解漏洞详情、影响范围、攻击链及缓解措施,保护您的Node.js应用免受DoS攻击。
🔓 High 漏洞利用
安全研究员发现流行HTTP客户端库Axios(版本1.7.0至1.15.x)存在高危漏洞(CVE-2026-44488)。当使用fetch适配器时,即使配置了maxBodyLength和maxContentLength限制,这些限制也未被强制实施,攻击者可发送超大数据或恶意data: URL,导致服务器端内存和CPU资源耗尽。
来源:OSV | 2026-06-04 | 原文链接
🔍 关键发现
- Axios的fetch适配器在请求发送和响应处理时,未读取或检查maxBodyLength和maxContentLength配置,导致限制无效。
- 攻击者可通过发送超大请求体(如2MB)或构造超长data: URL响应,绕过配置的边界限制,造成服务端资源耗尽。
- Node.js默认的http适配器不受影响,漏洞仅影响明确选择fetch适配器或环境自动回退到fetch适配器的场景。
⚔️ 攻击链分析
1. 攻击者确定目标应用使用Axios且配置了fetch适配器及有限的大小限制。 2. 攻击者向目标应用发送一个包含超大请求体的POST请求(如2MB),或诱导应用请求一个超大的data: URL响应。 3. Axios的fetch适配器绕过maxBodyLength/maxContentLength检查,直接发送或接收数据。 4. 服务器因处理超大数据量导致内存或CPU资源耗尽,造成拒绝服务。
🚩 失陷指标 (IOC)
HTTP请求的Content-Length超过应用配置的maxBodyLength响应体的实际大小超过应用配置的maxContentLength
🛡️ 缓解建议
- ✅ 升级Axios至修复版本(包含commit e5540dc的版本),或等待官方发布包含该修复的稳定版本。
- ✅ 在服务器端使用Node.js的http适配器(adapter: 'http')替代fetch适配器,因为它已正确实施大小限制。
- ✅ 在将攻击者控制的请求体传递给Axios之前,在应用层进行大小验证和截断;严格限制或拒绝攻击者控制的data: URL。
涉及漏洞:["CVE-2026-44488"]
⚠️ 本文仅供安全研究与学习,IOC 信息请勿用于非法目的。
🤖 常见问题解答(FAQ)
❓ 该漏洞影响哪些Axios版本?
影响Axios 1.7.0至1.15.x版本,其中fetch适配器功能被引入。
❓ 如何确认我的应用是否受影响?
检查代码中是否配置了adapter: 'fetch'或依赖环境自动回退到fetch适配器,并且设置了maxBodyLength或maxContentLength。
❓ 修复版本中具体做了哪些改进?
修复在fetch适配器中添加了对maxBodyLength和maxContentLength的读取,并在请求前、响应接收时进行大小检查,包括data: URL解码大小和流式响应处理。