nanoid before 5.1.6 Infinite Loop via Zero Size in customAlphabet and customRandom
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| nanoid_project | nanoid | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nanoid Project | Nanoid |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-2v37-7h3g-55p8 | nanoid: custom generators can loop indefinitely when size is zero |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.331% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | nanoid (Nano ID) before 5.1.6 contains an infinite loop in the customAlphabet and customRandom functions. When these functions are configured with a size of 0, the internal generation loop never satisfies its exit condition and spins indefinitely, hanging the calling thread. An application that passes an unvalidated, attacker-controlled size of 0 to these functions is exposed to a denial-of-service condition. | |
| Title | nanoid before 5.1.6 Infinite Loop via Zero Size in customAlphabet and customRandom | |
| First Time appeared |
Nanoid Project
Nanoid Project nanoid |
|
| Weaknesses | CWE-835 | |
| CPEs | cpe:2.3:a:nanoid_project:nanoid:*:*:*:*:*:node.js:*:* | |
| Vendors & Products |
Nanoid Project
Nanoid Project nanoid |
|
| References |
| |
| Metrics |
cvssV3_1
|