Duplicate Advisory: Axios: Nested axios option objects can consume polluted prototype values
Moderate severity
GitHub Reviewed
Published
Aug 1, 2026
to the GitHub Advisory Database
•
Updated Sep 1, 2026
Withdrawn
This advisory was withdrawn on Sep 1, 2026
Description
Published by the National Vulnerability Database
Aug 1, 2026
Published to the GitHub Advisory Database
Aug 1, 2026
Reviewed
Sep 1, 2026
Withdrawn
Sep 1, 2026
Last updated
Sep 1, 2026
Duplicate Advisory
This advisory has been withdrawn because it is a duplicate of GHSA-7q8q-rj6j-mhjq. This link is maintained to preserve external references.
Original Description
axios before 0.33.0 (and 1.x before 1.18.0) can consume inherited properties from nested request option objects when the JavaScript process's Object.prototype has already been polluted by another component. While the top-level merged config uses a null prototype, nested plain objects such as auth and paramsSerializer are cloned into ordinary objects and read without own-property checks. When an application passes placeholder nested objects such as auth: {} or paramsSerializer: {}, inherited username/password values can cause silent injection of an Authorization: Basic header, and inherited encode/serialize values can alter query-string serialization (full serializer replacement requires a function-valued pollution primitive). This is exploitable only in the presence of pre-existing prototype pollution.
References