Axios中的可致DoS攻击漏洞CVE-2025-58754
Axios 是一个流行的基于 Promise 的 HTTP 请求库,用于在浏览器和 Node.js 中进行 HTTP 请求,提供统一API接口实现跨平台网络请求。
一、基本情况
Axios提供简易的 API,可以发送各种类型的请求(如 GET、POST、PUT、DELETE等),并处理响应数据,支持浏览器和Node.js环境。
Axios是 isomorphic 的(即同一套代码可运行在浏览器和node.js中),核心特性包括自动转换JSON数据、支持拦截器、防CSRF攻击等。
栋科技漏洞库关注到Axios项目中存在一个可导致DoS攻击漏洞,该漏洞现在已经被追踪为CVE-2025-58754,该漏洞的CVSS评分为7.5。
二、漏洞分析
CVE-2025-58754漏洞是存在于Axios项目基于Promise的流行HTTP客户端(适用于Node.js 和浏览器)中的安全漏洞,建议用户立即升级。
当Axios在Node.js 环境中处理data:协议URL时不会执行HTTP请求,而通过Node http适配器将整个 payload 解码到内存(Buffer/Blob)。
而且返回伪造的200响应,与普通HTTP响应受maxContentLength或maxBodyLength限制不同,Axios对data: URI完全忽略这些大小限制。
具体而言,漏洞源于fromDataURI函数,它将Base64 payload完整解码为Buffer且未进行任何大小检查,即使开发者配置了Axios大小限制。
尽管如此,但这些保护仅对HTTP流生效,对data: URI无效,攻击者可构造任意大小的data: URI,导致Node进程将全部内容加载到内存。
因此,该漏洞最终可能引发内存耗尽(OOM)崩溃,这意味着攻击者可直接通过滥用Axios处理data: URL的方式,导致Node.js 进程崩溃。
三、影响范围
Axios < 1.11.0
四、修复建议
Axios >= 1.12.0
五、参考链接
