Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSubmit crafted FormData with deeply bracketed field name
-
Deliveryaxios invokes formDataToJSON via transformRequest
-
ExploitparsePropPath splits key into thousands of segments
-
ExecutionbuildPath() recurses without depth limit
-
PersistJavaScript call stack exhausted
-
ImpactRangeError crashes request or terminates Node.js process
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires three concurrent conditions. First, the target application must use axios version 0.28.0 or later in either the 0.x or 1.x line (formDataToJSON did not exist before 0.28.0). Second, the application must process a request that causes axios to invoke formDataToJSON - this happens either via direct calls to axios.formToJSON(formData) or via axios's default transformRequest when a request body is a FormData object and the Content-Type header contains 'application/json'. Normal multipart FormData submission (without JSON serialisation) is not affected. Third, the attacker must control the FormData field names - not merely the values - that are passed through this path. Exploitation is limited by the AT:P condition in the CVSS 4.0 vector: not all axios deployments expose this code path. Applications that use axios exclusively for outbound HTTP calls with developer-controlled payloads, or that submit FormData as standard multipart without JSON serialisation, are not affected. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L) scores 6.3 and accurately represents the risk profile: network-reachable, no authentication required, but constrained by a specific attack precondition (AT:P) - the application must expose an endpoint that processes attacker-controlled FormData with JSON serialisation. The availability impact is scored Low (VA:L) at the vulnerable-system level, reflecting that the crash is catchable in well-written applications, though process termination is possible in poorly handled ones. No EPSS score was provided in the input, so exploitation probability cannot be quantified from that signal. There is no CISA KEV listing, confirming no observed active exploitation at time of analysis. The GHSA advisory provides precise technical detail (exact file, function, and payload structure), which significantly lowers the barrier for exploitation even without a published proof-of-concept. The real-world impact depends heavily on application architecture: a single-threaded Node.js server hit repeatedly would be fully disabled; a clustered or serverless deployment would absorb individual crashes more gracefully. This is a genuine priority for any team that processes user-supplied form field names through axios's JSON serialisation path, but not a broad emergency for applications using axios only for outbound API calls or standard multipart form submission. |
| Exploit ScenarioDerived | An attacker submits an HTTP request to a Node.js API endpoint that accepts FormData and forwards it through axios with Content-Type: application/json - for example, a file-upload proxy or a form-parsing middleware. The attacker crafts a field name consisting of thousands of bracket-delimited segments (e.g., a[b][c]...[z] repeated thousands of times). When axios calls formDataToJSON internally, buildPath() recurses once per segment, exhausting the V8 call stack and throwing an uncaught RangeError that terminates the Node.js worker process, making the service unavailable to all concurrent users. No GHSA-published proof-of-concept was identified, but the advisory provides enough detail that the payload is trivially constructable. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 01, 2026
Uncontrolled recursion in axios's formDataToJSON helper allows remote, unauthenticated attackers to exhaust the JavaScript call stack and deny service to affected Node.js applications. axios versions 0.28.0 through 0.32.x and 1.0.0 through 1.17.x are affected wherever attacker-controlled FormData field names are deserialized with Content-Type: application/json, causing a RangeError that kills the request or terminates the process. No public exploit has been identified at time of analysis, but the GHSA advisory discloses sufficient technical detail - including the exact vulnerable function and the attack payload pattern - for independent reproduction; fixed releases 0.33.0 and 1.18.0 are available.
RemediationAI
The primary fix is upgrading axios to version 0.33.0 (for the 0.x line) or 1.18.0 (for the 1.x line), as documented in the GitHub Security Advisory GHSA-pmv8-rq9r-6j72 and implemented in upstream pull requests https://github.com/axios/axios/pull/11000 and https://github.com/axios/axios/pull/11001. These releases introduce a depth guard in buildPath() analogous to the existing maxDepth protection in toFormData. If an immediate upgrade is not feasible, the principal compensating control is to validate and reject FormData field names containing deeply nested bracket sequences before they reach axios - for example, stripping or refusing any key where the bracket-segment count exceeds a safe threshold (e.g., 20). A second workaround is to avoid setting Content-Type: application/json when submitting FormData, which prevents the vulnerable formDataToJSON code path from being invoked; however, this may change application behaviour if JSON serialisation of form data is intentional. Wrapping axios calls in try/catch with process.uncaughtException handlers prevents process termination but does not prevent per-request DoS. None of the workarounds are substitutes for upgrading.
Affected VersionsENISA
Affected Packages
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 among the most widely deployed HTTP client libraries in the JavaScript ecosystem, available on npm (cpe:2.3:a:axios:axios). The vulnerable code lives in lib/helpers/formDataToJSON.js, introduced in version 0.28.0. The function parsePropPath() tokenises a FormData field name like a[x][x][x] into an array of path segments, then buildPath() recurses one call per segment to reconstruct a nested object - with no depth guard. This violates CWE-400 (Uncontrolled Resource Consumption): an adversary supplies a field name with thousands of bracket-delimited segments, forcing thousands of recursive stack frames until the JavaScript engine throws RangeError: Maximum call stack size exceeded. The symmetric inverse helper toFormData already enforces a maxDepth guard and raises AxiosError ERR_FORM_DATA_DEPTH_EXCEEDED, but this protection was never applied to formDataToJSON. The attack surface activates only when axios serialises FormData with Content-Type: application/json, either via direct calls to axios.formToJSON() or via the default transformRequest pipeline when that content-type is set.
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
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
AC:H captures the required attack precondition (FormData with JSON serialisation and attacker-controlled field names); availability impact is Low as crashes are catchable.
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
axios versions from 0.28.0 before 0.33.0 and from 1.0.0 before 1.18.0 contain uncontrolled recursion in formDataToJSON (exposed as axios.formToJSON() and used internally when serializing FormData with Content-Type: application/json). When an application passes attacker-controlled FormData field names, a field name with thousands of nested bracket-delimited segments causes unbounded recursion in buildPath(), exhausting the JavaScript call stack (RangeError: Maximum call stack size exceeded) and causing denial of service for that request, or process termination in applications without appropriate error handling.
Blast Radius
ecosystem impact- 39 npm packages depend on axios (18 direct, 21 indirect)
Ecosystem-wide dependent count for version 0.28.0.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
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
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
Prototype pollution via the Node.js HTTP adapter in axios allows an attacker who controls `Object.prototype.proxy` to si
axios is a promise based HTTP client for the browser and node.js. Rated high severity (CVSS 7.7), this vulnerability is
Axios is a promise based HTTP client for the browser and Node.js. Rated high severity (CVSS 7.5), this vulnerability is
Axios versions up to 0.30.3 is affected by improper check for unusual or exceptional conditions (CVSS 7.5).
axios 1.7.2 allows SSRF via unexpected behavior where requests for path relative URLs get processed as protocol relative
axios is vulnerable to Inefficient Regular Expression Complexity. Rated high severity (CVSS 7.5), this vulnerability is
Axios up to and including 0.18.0 allows attackers to cause a denial of service (application crash) by continuing to acce
Prototype pollution in Axios HTTP client versions before 1.15.1 and 0.31.1 enables silent interception and modification
Denial of service in Axios HTTP client before versions 1.15.1 and 0.31.1 allows remote unauthenticated attackers to cras
Prototype pollution in Axios library versions prior to 1.15.1 and 0.31.1 allows remote attackers to suppress HTTP error
Same weakness CWE-400 – Uncontrolled Resource Consumption
View allSame technique Denial Of Service
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Desktop 15 SP7 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Module for Python 3 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Manager Proxy 4.3 | Not-Affected |
| SUSE Manager Proxy LTS 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Not-Affected |
| SUSE Manager Server 4.3 | Not-Affected |
| SUSE Manager Server LTS 4.3 | Not-Affected |
| SUSE CaaS Platform 4.0 | Affected |
| SUSE Enterprise Storage 6 | Affected |
| SUSE Enterprise Storage 7 | Affected |
| SUSE Enterprise Storage 7.1 | Not-Affected |
| SUSE Linux Enterprise Desktop 15 SP6 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP1 | Affected |
| SUSE Linux Enterprise Server 15 SP1-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP1-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP2 | Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Affected |
| SUSE Linux Enterprise Server 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Manager Proxy 4.0 | Affected |
| SUSE Manager Proxy 4.1 | Affected |
| SUSE Manager Proxy 4.2 | Not-Affected |
| SUSE Manager Retail Branch Server 4.0 | Affected |
| SUSE Manager Retail Branch Server 4.1 | Affected |
| SUSE Manager Retail Branch Server 4.2 | Not-Affected |
| SUSE Manager Server 4.0 | Affected |
| SUSE Manager Server 4.1 | Affected |
| SUSE Manager Server 4.2 | Not-Affected |
| openSUSE Leap 15.3 | Not-Affected |
| openSUSE Leap 15.4 | Not-Affected |
| openSUSE Leap 15.5 | Not-Affected |
| openSUSE Leap 15.6 | Affected |
EUVD-2026-51830
GHSA-4ww2-rjh2-xpv9
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB