CVE-2026-46625

HIGHCVSS 7.5/10EPSS 0.92%

Last modified

CVE-2026-46625 is a high-severity vulnerability rated 7.5/10 on the CVSS scale. JavaScript Cookie is a JavaScript API for handling cookies, client-side. Prior to version 3.0.7, js-cookie's internal assign() helper copies properties with for...in + plain assignment. EPSS estimates a 0.92% chance of exploitation in the next 30 days.

Description

JavaScript Cookie is a JavaScript API for handling cookies, client-side. Prior to version 3.0.7, js-cookie's internal assign() helper copies properties with for...in + plain assignment. When the source object is produced by JSON.parse, the JSON object's "__proto__" member is an own enumerable property, so the for…in enumerates it and the target[key] = source[key] write triggers the Object.prototype.__proto__ setter on the fresh target ({}). The result is a per-instance prototype hijack: Object.prototype itself is untouched, but the merged attributes object now inherits attacker-controlled keys. Because the consuming set() function then enumerates the merged object with another for...in, every key the attacker placed on the polluted prototype lands in the resulting Set-Cookie string as an attribute pair. The attacker can set domain=, secure=, samesite=, expires=, and path= on cookies whose attributes the developer thought were locked down. This issue has been patched in version 3.0.7.

Metrics

EPSS Probability
0.92%

58.0th percentile

Probability of exploitation in the next 30 days. Learn more

Weakness Enumeration

Affected Software

VendorProductVersions
Js-CookieJavascript Cookie< 3.0.7
Redhat3scale Api Management2.0
RedhatAnsible Automation Platform2.0
RedhatOpenshift AiAll versions
RedhatOpenshift LightspeedAll versions
RedhatEnterprise Linux8.0
RedhatEnterprise Linux9.0
RedhatEnterprise Linux10.0

References

Timeline

Published
Last Modified
Status
Modified

Frequently Asked Questions

What is CVE-2026-46625?
JavaScript Cookie is a JavaScript API for handling cookies, client-side. Prior to version 3.0.7, js-cookie's internal assign() helper copies properties with for...in + plain assignment. When the source object is produced by JSON.parse, the JSON object's "__proto__" member is an own enumerable property, so the for…in enumerates it and the target[key] = source[key] write triggers the Object.prototype.__proto__ setter on the fresh target ({}). The result is a per-instance prototype hijack: Object.prototype itself is untouched, but the merged attributes object now inherits attacker-controlled keys. Because the consuming set() function then enumerates the merged object with another for...in, every key the attacker placed on the polluted prototype lands in the resulting Set-Cookie string as an attribute pair. The attacker can set domain=, secure=, samesite=, expires=, and path= on cookies whose attributes the developer thought were locked down. This issue has been patched in version 3.0.7.
How severe is CVE-2026-46625?
CVE-2026-46625 has a CVSS score of 7.5/10 (HIGH severity). The EPSS model estimates a 0.92% probability of exploitation in the next 30 days.
How do I fix CVE-2026-46625?
Check the vendor references and advisories linked above for patched versions and mitigation guidance. You can also run a Strix scan to test if your systems are affected.

How Strix Helps

Related CVEs from 2026

Are you affected by CVE-2026-46625?

Run a free Strix scan to check your systems for this vulnerability.

Scan your code now

Source: NVD / NIST