CVE-2026-101905: Axios Node HTTP Adapter Prototype Pollution Vulnerability
Summary
CVE-2026-101905: Axios' Node HTTP adapter can act as a read-side prototype-pollution gadget for Node's sensitive createConnection request option. Affects axios versions >= 1.15.2, < 1.20.0. Fixed in 1.20.0. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
Axios is a popular JavaScript library used for making HTTP requests from both the browser and Node.js environments. It simplifies the process of sending asynchronous HTTP requests to REST endpoints and performing CRUD operations. The library is widely adopted due to its promise-based API, ease of use, and ability to handle requests and responses in a streamlined manner. However, a recent vulnerability has been identified in its Node HTTP adapter, which can lead to serious security issues if exploited.
Vulnerability Detail
The vulnerability arises from Axios' Node HTTP adapter acting as a read-side prototype-pollution gadget. It creates a null-prototype options object, but Node's HTTP client can copy or normalize request options into ordinary objects before connection creation. If the Object.prototype.createConnection has been polluted elsewhere in the same process, Node can call the inherited function, allowing an attacker to hijack the request socket and redirect it to a malicious endpoint. This can lead to credential exfiltration, response manipulation, and bypassing application validation checks.
How To Fix
Latest published version: 1.20.0 as of 22 Oct 2026
npm install axios@1.20.0
The newest release already contains this fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, you can run Axios in a process where prototype pollution is not present. Alternatively, you can implement a custom trusted transport or agent layer that sets and enforces its own connection creation behavior. Here is an example of how to set an own safe value for createConnection in the Axios request options:
const options = Object.assign(Object.create(null), {
path,
method,
headers,
agents: { http: httpAgent, https: httpsAgent },
auth,
protocol,
family,
beforeRedirect: dispatchBeforeRedirect,
beforeRedirects: Object.create(null),
http2Options,
createConnection: undefined,
});
Conclusion
The Axios Node HTTP adapter vulnerability (CVE-2026-101905) poses a significant risk due to its potential for prototype pollution, allowing attackers to hijack request sockets. It is crucial to update to the patched version or implement workarounds to safeguard your application from exploitation.
See every vulnerability recorded for axios →
FAQ
The CVSS score of this vulnerability is 7.6, indicating a high severity level.
You can use Vulert, which monitors and alerts in real-time for open-source vulnerabilities. You can check your application using the Vulert playground at Vulert Scanner without needing to sign up.
If exploited, this vulnerability can lead to credential theft, unauthorized access to sensitive data, and manipulation of responses, all while appearing to target legitimate endpoints.
No, this vulnerability specifically affects the Node.js HTTP adapter and does not impact browser adapters.
If immediate updating is not possible, consider implementing the suggested workarounds to mitigate the risk until you can apply the update.
References
Related vulnerabilities
Recent vulnerabilities recorded for axios.