medium4.3
CVE-2024-55565
Predictable results in nanoid generation when given non-integer values
Impact
When nanoid is called with a fractional value, there were a number of undesirable effects: 1. in browser and non-secure, the code infinite loops on while (size--) 2. in node, the value of poolOffset becomes fractional, causing calls to nanoid to return zeroes until the pool is next filled 3. if the first call in node is a fractional argument, the initial buffer allocation fails with an error Version 3.3.8 and 5.0.9 are fixed.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | nanoid | >= 4.0.0, < 5.0.9 | 5.0.9 |
Affected products
| Product | Affected versions |
|---|---|
| Nanoid (Aka Nano ID) | before 5.0.9 |
Versions were read from the advisory text. No structured product data has been published for this record yet.
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/ai/nanoid/compare/3.3.7...3.3.8
- https://github.com/ai/nanoid/pull/510
- https://github.com/ai/nanoid/releases/tag/5.0.9
- https://lists.debian.org/debian-lts-announce/2024/12/msg00025.html
- https://lists.debian.org/debian-lts-announce/2025/01/msg00006.html
- https://github.com/advisories/GHSA-mwcw-c2x4-8c55
- https://nvd.nist.gov/vuln/detail/CVE-2024-55565