Bug 2509993 (CVE-2026-67320)

Summary: CVE-2026-67320 axios: axios: Information disclosure via Prototype Pollution in Node HTTP adapter
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: abuckta, anthomas, aruklets, bbrownin, dbosanac, dfreiber, dkeler, dkuc, doconnor, drow, dschmidt, dymurray, ehelms, ewittman, fmariani, ggainey, gmalinko, gparvin, ibolton, janstey, jburrell, jlanda, jmatthew, jmontleo, jpasqual, jreimann, juwatts, jwon, kaycoth, kshier, lchilton, mcarlett, mdellweg, mdessi, mhulan, mrizzi, nipatil, nmoumoul, orabin, osousa, pantinor, pcattana, pcreech, pgaikwad, pjindal, prwatson, rchan, rhaigner, rhel-process-autobot, rjohnson, rkubis, rstepani, sdawley, sfeifer, simaishi, slucidi, smallamp, sseago, stcannon, suppawar, tcunning, teagle, thason, tmalecek, vkumar, watson-tool-maintainers, yfang, yguenane
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in axios when used in a Node.js deployment with the HTTP adapter. This vulnerability, known as Prototype Pollution, occurs because request interceptors can revert hardened request configurations, allowing an attacker to manipulate the Object.prototype.proxy property. If successfully exploited, an attacker can route affected plaintext HTTP requests through a malicious proxy, potentially observing sensitive data such as authentication headers and request bodies, and even returning their own responses.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description OSIDB Bzimport 2026-08-01 13:02:13 UTC
axios in a Node.js deployment using the HTTP adapter can route requests through an attacker-controlled proxy. axios hardens merged request configuration by creating a null-prototype object, but request interceptors run after the merge; a common immutable interceptor pattern such as {...config} or Object.assign({}, config) converts the hardened config back into a regular object. axios then dispatches that object without re-hardening it, and the Node HTTP adapter reads config.proxy through the prototype chain. If an attacker can pollute Object.prototype.proxy, affected requests can be routed through an attacker-controlled proxy. For plaintext HTTP requests, the proxy can observe Authorization headers, Basic auth from config.auth, method, absolute URL, Host, and request body, and can return its own response. This does not establish browser impact or HTTPS header/body disclosure under normal TLS validation. Affected versions are >=0.31.1 (fixed in 0.33.0) and >=1.15.2 (fixed in 1.18.0).