ZeroHour

CVE-2026-67321

PoC mass

Uncontrolled recursion DoS in axios toFormData.js serialization

CVSS 4.0
6.9 medium
EPSS
<1%p29
Published
()
Modified
AI analysis

axios, a widely used JavaScript HTTP client distributed via npm, contains an incomplete depth-limit bypass in toFormData.js (CWE-674, uncontrolled recursion) in versions 0.31.1 before 0.33.0 and 1.15.1 before 1.18.0. When an application passes attacker-controlled object keys, including top-level keys ending in '{}', and nested values into axios's form or parameter serialization, the depth limit is bypassed and recursive processing ends with JSON.stringify throwing a RangeError. The impact is availability only: a denial of service in the affected request path (CVSS 4.0 6.9, medium), with no confidentiality or integrity impact. Any Node.js or browser application on the affected axios versions that serializes untrusted, attacker-influenced input into forms or request parameters is exposed. There is one public advisory reference (GHSA-hcpx-6fm6-wx23), but the flaw is not in CISA KEV and EPSS is 0.4% (29th percentile), so no confirmed in-the-wild exploitation is known.

What to do: Upgrade axios to 0.33.0 or later on the 0.x series, or 1.18.0 or later on the 1.x series. Audit whether your application passes attacker-controlled nested objects or keys (including keys ending in '{}') into axios form or parameter serialization via toFormData.js; as an interim mitigation, flatten or depth-limit untrusted input before handing it to these serializers. No emergency patching is indicated given low EPSS and no KEV listing, but include this in routine dependency updates.

Affected
axios>= 0.31.1 and < 0.33.0 (0.x series, npm)
axios>= 1.15.1 and < 1.18.0 (1.x series, npm)
Estimated exposure
masslikely 1M+ dependent projects/installations (axios sees tens of millions of npm downloads weekly; affected ranges cover the current 0.x and 1.x release lines) — axios is one of the most-downloaded packages on npm (tens of millions of weekly downloads and thousands of dependent projects), so even the fraction of dependents running the affected version windows plausibly exceeds one million…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

axios versions 0.31.1 before 0.33.0 and 1.15.1 before 1.18.0 contain an incomplete depth-limit bypass in toFormData.js when serializing objects with top-level keys ending in '{}'. Attackers who control object keys and nested values passed to axios form or parameter serialization can trigger a RangeError from JSON.stringify, causing denial of service in the affected request path.

Vendors
axios
Products
axios
Ecosystems
npm
Weakness
CWE-674
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
GHSA
GHSA-hcpx-6fm6-wx23 (medium)

In the news

No ingested article mentions this CVE yet.