天下漏洞,尽知其名
HIGH

CVE-2026-101905 Axios 原型污染漏洞

影响攻击者可劫持请求流量并窃取凭据

AI 研判

Axios 是浏览器和 Node.js 中常用的基于 Promise 的 HTTP 客户端。在 1.15.2 至 1.20.0 之前的版本中,Node HTTP 适配器未显式设置自身的 createConnection 选项,当同进程存在原型污染漏洞时,会调用被污染到 Object.prototype 上的 createConnection 函数。该函数可被攻击者控制,从而将请求重定向到攻击者指定的端点。

影响范围

Axios

Axios 1.15.2 至 1.20.0 之前的版本(Node.js 环境)。1.20.0 已修复。

漏洞详情

漏洞类型为原型污染导致的请求劫持。成因是 lib/adapters/http.js 在构造请求选项时未提供 own 属性 createConnection,Node 会沿原型链查找到被污染的函数并调用它作为 socket 工厂。攻击者借此控制传输端点,使请求头、请求体(含凭据)发送到攻击者服务器,并返回伪造响应,而 URL 看起来仍然合法。

利用条件与风险

利用前提是同一进程内已存在另一处原型污染漏洞,攻击者能将函数写入 Object.prototype.createConnection。一旦满足该条件,可静默窃取凭据并篡改响应,实战风险较高。

修复建议

升级到 Axios 1.20.0 或更高版本。临时缓解措施包括排查并修复同进程内的原型污染来源、冻结 Object.prototype 或对请求选项进行显式校验,暂无其他公开信息。

原始情报

Axios is a promise-based HTTP client for the browser and Node.js. From 1.15.2 until 1.20.0, the Node HTTP adapter in lib/adapters/http.js supplies request options without an own createConnection value. A separate same-process prototype-pollution flaw places a function on Object.prototype.createConnection. Node resolves and invokes the inherited createConnection socket factory, allowing the attacker-controlled function to select the transport endpoint. The attacker endpoint can receive request headers and bodies, including credentials, and return attacker-controlled responses while the URL appears legitimate. This issue is fixed in version 1.20.0.