GitHub Advisoryadvisory · npm
GHSA-pxg6-pf52-xh8x cookie accepts cookie name, path, and domain with out of bounds characters
LOW
Official page ↗
- Aliases
- CVE-2024-47764
- Ecosystem
- npm
- Packages
- cookie
- Severity
- Low
- Weaknesses
- CWE-74
- Reviewed
- 2024-10-04
Affected packages
• npm cookie: < 0.7.0 → fixed in 0.7.0
Description
Impact
The cookie name could be used to set other fields of the cookie, resulting in an unexpected cookie value. For example, `serialize("userName=alert('XSS3'); Max-Age=2592000; a", value)` would result in `"userName=alert('XSS3'); Max-Age=2592000; a=test"`, setting `userName` cookie to `` and ignoring `value`.
A similar escape can be used for `path` and `domain`, which could be abused to alter other fields of the cookie.
Patches
Upgrade to 0.7.0, which updates the validation for `name`, `path`, and `domain`.
Workarounds
Avoid passing untrusted or arbitrary values for these fields, ensure they are set by the application instead of user input.
References
• https://github.com/jshttp/cookie/pull/167
Related
Alias · CVE (1)
- CVE-2024-47764 cookie is a basic HTTP cookie parser and serializer for HTTP servers. vulnerability
Weakness · CWE (1)
- CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component weakness