JavaScript Cookie: Per-instance prototype hijack in assign() enables cookie-attribute injection
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| js-cookie | js-cookie | affected |
|
Configuration 1 [-]
|
Configuration 2 [-]
|
| Package | CPE | Advisory | Released Date |
|---|---|---|---|
| Red Hat OpenShift Service Mesh 3.3 | |||
| openshift-service-mesh/kiali-ossmc-rhel9:1782231869 | cpe:/a:redhat:service_mesh:3.3::el9 | RHSA-2026:33183 | 2026-06-29T00:00:00Z |
| openshift-service-mesh/kiali-rhel9:1782201466 | cpe:/a:redhat:service_mesh:3.3::el9 | RHSA-2026:33183 | 2026-06-29T00:00:00Z |
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Js-cookie | Js-cookie |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-qjx8-664m-686j | JavaScript Cookie: Per-instance prototype hijack in assign() enables cookie-attribute injection |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.919% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Js-cookie javascript Cookie
Redhat 3scale Api Management Redhat ansible Automation Platform Redhat enterprise Linux Redhat openshift Ai Redhat openshift Lightspeed |
|
| CPEs | cpe:2.3:a:js-cookie:javascript_cookie:*:*:*:*:*:node.js:*:* cpe:2.3:a:redhat:3scale_api_management:2.0:*:*:*:*:*:*:* cpe:2.3:a:redhat:ansible_automation_platform:2.0:*:*:*:*:*:*:* cpe:2.3:a:redhat:openshift_ai:-:*:*:*:*:*:*:* cpe:2.3:a:redhat:openshift_lightspeed:-:*:*:*:*:*:*:* cpe:2.3:o:redhat:enterprise_linux:10.0:*:*:*:*:*:*:* cpe:2.3:o:redhat:enterprise_linux:8.0:*:*:*:*:*:*:* cpe:2.3:o:redhat:enterprise_linux:9.0:*:*:*:*:*:*:* |
|
| Vendors & Products |
Js-cookie javascript Cookie
Redhat 3scale Api Management Redhat ansible Automation Platform Redhat enterprise Linux Redhat openshift Ai Redhat openshift Lightspeed |
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat
Redhat service Mesh |
|
| Weaknesses | CWE-915 | |
| CPEs | cpe:/a:redhat:service_mesh:3.3::el9 | |
| Vendors & Products |
Redhat
Redhat service Mesh |
|
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Js-cookie
Js-cookie js-cookie |
|
| Vendors & Products |
Js-cookie
Js-cookie js-cookie |
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | JavaScript Cookie: Per-instance prototype hijack in assign() enables cookie-attribute injection | |
| Weaknesses | CWE-1321 | |
| References |
| |
| Metrics |
cvssV3_1
|