Skip to main content

Axios CVE-2026-101900

| EUVDEUVD-2026-88368 MEDIUM
Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') (CWE-74)
2026-09-28 GitHub_M GHSA-4hqw-qxg8-jxx2
6.9
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Achieve same-process prototype pollution
  2. Delivery
    Inject FormData-like object with inherited getHeaders
  3. Exploit
    axios ResolveConfig reads inherited props
  4. Execution
    Attacker headers merged into fetch request
  5. Impact
    Forge authorization/metadata-service headers on outbound call

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
Exploitation Conditions

Exploitation is NOT possible against axios alone: it requires a pre-existing, separate same-process prototype-pollution vulnerability in the host application that can plant attacker-controlled inherited properties (getHeaders, append, Symbol.toStringTag) on the prototype chain. The polluted value must be an array or a non-plain class instance that appears FormData-like - plain objects are explicitly blocked by axios. The affected code path is FormData header resolution in ResolveConfig feeding the fetch adapter, in versions 1.12.0 through 1.19.x (fixed in 1.20.0). The limiting factor is precisely this chained-flaw dependency (reflected as AT:P), which sharply narrows real-world exploitability despite the network attack vector; there is no user interaction or authentication needed once the prototype-pollution primitive is present.

Impact

This is a moderate-severity integrity flaw that is a defense-in-depth gadget, NOT a standalone remotely-exploitable bug. The vendor CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N with SC:L/SI:H, 6.9) explicitly encodes AT:P (attack requirement present) and this is the decisive signal: the description states exploitation REQUIRES 'a separate same-process prototype-pollution flaw' to supply a FormData-like object whose inherited getHeaders is attacker-controlled. Without that pre-existing prototype-pollution primitive, this issue cannot be triggered - plain objects are explicitly blocked. There is no CISA KEV listing, no EPSS score provided, and no public exploit code identified at time of analysis (the fix ships hardening rather than a weaponized PoC). The impact is primarily integrity of the OUTBOUND request (SI:H - attacker can alter authorization, cache, metadata-service, or app-specific headers), with only low subsequent-system confidentiality (SC:L, e.g. cloud metadata-service header manipulation). Note the 'Information Disclosure' tag conflicts with the actual CVSS impact profile, which is integrity-dominant (VC:N/VI:N but SI:H) - verify the categorization. Despite axios's ubiquitous deployment, the chained-precondition requirement makes real-world standalone risk LOW-to-MEDIUM rather than the raw 6.9 suggesting a widely-usable network attack.

Exploit ScenarioDerived

An application already suffering from a separate same-process prototype-pollution vulnerability has attacker-controlled properties injected into a prototype chain. When axios (1.12.0-1.20.0) resolves FormData headers, ResolveConfig reads the inherited getHeaders/append/Symbol.toStringTag properties, treats an attacker-supplied array or class instance as FormData-like, and merges attacker-controlled headers (e.g. a forged Authorization header or a cloud metadata-service header) into the fetch-adapter request. No public exploit code exists; exploitation is contingent on chaining a second flaw, and the CVSS AT:P attack-requirement reflects this dependency.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.5% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 28, 2026

Axios 1.12.0 through 1.19.x can be tricked into merging attacker-supplied HTTP headers into a fetch adapter request when the surrounding Node.js or browser application is already vulnerable to a separate, same-process prototype-pollution flaw. The polluted value must be an array or a non-plain class instance that masquerades as FormData via inherited append, getHeaders, or Symbol.toStringTag properties; plain objects are explicitly blocked, and the resulting header injection can alter authorization, cache, metadata-service, or application-specific request semantics. This is a defense-in-depth integrity gadget rather than a standalone remotely exploitable bug - exploitation is unauthenticated (PR:N) but conditional on a pre-existing pollution primitive (AT:P), no public exploit code was identified at time of analysis, and the flaw is fixed in Axios 1.20.0.

RemediationAI

Vendor-released patch: upgrade Axios to 1.20.0 (or later), which is the version explicitly named as containing the fix; the fix is delivered through PR #11141 and commit d19040bda7a8be2f82c3c6e1a5bc03917daee39a, with release notes at https://github.com/axios/axios/releases/tag/v1.20.0 and the advisory at https://github.com/axios/axios/security/advisories/GHSA-4hqw-qxg8-jxx2. Because exploitation depends on a pre-existing same-process prototype-pollution primitive, patching Axios alone removes only one link in the chain and should be paired with remediation of the upstream pollution vector; the most effective compensating controls are: identify and patch or remove the dependency that writes attacker-influenced keys onto Object.prototype or other shared prototypes, since without that primitive the Axios gadget is inert; freeze or seal shared prototypes (Object.freeze(Object.prototype)) as a runtime guard, accepting the trade-off that this can break third-party libraries that legitimately extend native prototypes and may mask future pollution bugs by silently dropping writes; and create request configuration objects with Object.create(null) or otherwise null-prototype objects so no inherited append, getHeaders, or Symbol.toStringTag values are reachable, with the caveat that such configs lose normal Object.prototype conveniences and may confuse downstream code that expects standard objects. As a partial, lower-confidence mitigation, code paths that must remain on vulnerable Axios versions can avoid the affected fetch adapter in favor of the Node HTTP/HTTPS adapter, which reduces exposure to this specific header-resolution path but does not address the underlying prototype-trust pattern, changes redirect, duplex, and HTTP/2 semantics, and should not be treated as a substitute for upgrading. If a fixed upgrade is not immediately possible, pinning or forcing the resolution of the vulnerable transitive Axios range to 1.20.0 across the dependency tree and adding outbound-request egress validation or allow-lists for sensitive headers (Authorization, metadata-service endpoints such as 169.254.169.254, and cache-control fields) can detect or blunt the impact of injected headers, at the cost of additional maintenance and the risk of false positives on legitimate traffic. Axios itself blocks plain objects from this path, so developers cannot rely on that check as a mitigation - only removal of the pollution primitive or the version upgrade fully closes the issue.

Affected VersionsENISA

axios 1.12.0, < 1.20.0

Affected Packages

npm axios fix: 1.20.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Axios is a promise-based HTTP client used in both browsers and Node.js. In the affected code path, ResolveConfig performs duck-typed inspection of a supplied value while resolving FormData headers, reading the inherited Symbol.toStringTag property (used by Object.prototype.toString-based type detection), the inherited append method, and the inherited getHeaders method directly off the prototype chain rather than verifying they are own, non-inherited properties. If a separate prototype-pollution vulnerability in the same process has planted attacker-controlled versions of these properties on a shared prototype, an attacker can supply an array or a non-plain class instance that appears FormData-like; Axios deliberately rejects plain objects, so the polluted carrier must be an array or class instance. The inherited getHeaders function is then invoked and any headers it returns are merged by ResolveConfig into a request issued through the fetch adapter, giving the attacker control over outbound header values. The CWE-74 classification reflects the injection-of-special-elements nature of the flaw (untrusted data becoming part of an output/request structure), while the root-cause mechanism is inherited-property trust in a config-resolution routine. The CVSS:4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N) and the independent CVSS:3.1 assessment (AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N) both encode the pivotal AT:P / chained-flaw prerequisite: confidentiality of the vulnerable component itself is unaffected, but subsequent-system integrity is High, reflecting header tampering propagating downstream.

Know when Axios gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N
vuln.today AI 7.5 HIGH

AC:H because exploitation depends on a separate same-process prototype-pollution primitive; S:C and I:H reflect attacker-controlled headers injected into outbound requests to downstream systems; C:L for limited metadata leakage.

3.1 AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N
SUSE 4.8 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Red Hat 6.5 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
High
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Sep 28, 2026 - 18:01 EUVD
CVE Published
Sep 28, 2026 - 17:14 cve.org
MEDIUM 6.9

DescriptionCVE.org

Axios is a promise-based HTTP client for the browser and Node.js. From 1.12.0 until 1.20.0, ResolveConfig reads inherited Symbol.toStringTag, append, and getHeaders properties while resolving FormData headers. A separate same-process prototype-pollution flaw supplies an array or non-plain class instance whose inherited properties make it appear FormData-like; plain objects are blocked. The inherited getHeaders function can return attacker-controlled headers that resolveConfig merges into a fetch adapter request. Attacker-controlled headers can alter authorization, cache, metadata-service, or application-specific request behavior. This issue is fixed in version 1.20.0.

Threat Intelligence Overview

EPSS Score
0.5%
Top 56% exploitable
Prevalence
Ubiquitous
axios is one of the most-downloaded npm HTTP clients, in vast numbers of Node/browser apps
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

35
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

More in Axios

View all
CVE-2026-42043 CRITICAL POC
10.0 Apr 24

NO_PROXY protection bypass in Axios HTTP client (versions 1.0.0-1.15.0 and ≤0.31.0) lets an attacker who controls a requ

CVE-2026-42044 CRITICAL POC
9.1 Apr 24

JSON response tampering in the Axios HTTP client (versions 1.0.0 up to but not including 1.15.2) lets an attacker who ca

CVE-2026-67320 HIGH POC
8.3 Aug 01

Prototype pollution via the Node.js HTTP adapter in axios allows an attacker who controls `Object.prototype.proxy` to si

CVE-2025-27152 HIGH POC
7.7 Mar 07

axios is a promise based HTTP client for the browser and node.js. Rated high severity (CVSS 7.7), this vulnerability is

CVE-2025-58754 HIGH POC
7.5 Sep 12

Axios is a promise based HTTP client for the browser and Node.js. Rated high severity (CVSS 7.5), this vulnerability is

CVE-2026-25639 HIGH POC
7.5 Feb 09

Axios versions up to 0.30.3 is affected by improper check for unusual or exceptional conditions (CVSS 7.5).

CVE-2024-39338 HIGH POC
7.5 Aug 12

axios 1.7.2 allows SSRF via unexpected behavior where requests for path relative URLs get processed as protocol relative

CVE-2021-3749 HIGH POC
7.5 Aug 31

axios is vulnerable to Inefficient Regular Expression Complexity. Rated high severity (CVSS 7.5), this vulnerability is

CVE-2019-10742 HIGH POC
7.5 May 07

Axios up to and including 0.18.0 allows attackers to cause a denial of service (application crash) by continuing to acce

CVE-2026-42033 HIGH POC
7.4 Apr 24

Prototype pollution in Axios HTTP client versions before 1.15.1 and 0.31.1 enables silent interception and modification

CVE-2026-42039 MEDIUM POC
6.9 Apr 24

Denial of service in Axios HTTP client before versions 1.15.1 and 0.31.1 allows remote unauthenticated attackers to cras

CVE-2026-42041 MEDIUM POC
6.5 Apr 24

Prototype pollution in Axios library versions prior to 1.15.1 and 0.31.1 allows remote attackers to suppress HTTP error

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Performance Computing 12 Not-Affected
SUSE Linux Enterprise Micro 5.3 Not-Affected
SUSE Linux Enterprise Micro 5.4 Not-Affected
SUSE Linux Enterprise Micro 5.5 Not-Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy