Description (CNA)
axios versions >=1.15.2 and <1.18.0 contain prototype-pollution read-side gadgets in Basic auth subfield handling (lib/adapters/http.js and lib/helpers/resolveConfig.js). When an application is already affected by a separate prototype-pollution primitive and makes an axios request with an own auth object that omits the username and/or password properties, axios reads the inherited Object.prototype.username and Object.prototype.password values and uses them to construct an outbound 'Authorization: Basic ...' header. axios itself does not pollute prototypes. The practical impact is outbound request tampering: an attacker who controls the polluted prototype values can inject attacker-chosen Basic auth credentials or replace an existing Authorization header. Credential disclosure is only possible under additional application-specific conditions.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| axios / axios | affected 1.15.2 before 1.18.0; unaffected 1.18.0 |
CWE
CWE-1321
References
- https://github.com/axios/axios/security/advisories/GHSA-xj6q-8x83-jv6g
- https://www.vulncheck.com/advisories/axios-before-prototype-pollution-via-auth-subfields
ADP enrichment
No English description supplied.