Skip to main content
VulnerabilityPublished

CVE-2026-73086: ai nanoid · Integer Overflow or Wraparound

Affects ai nanoidSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 7.4 High : upgrade to 5.1.11 or 3.3.12 soon.

Data as of 8 Nov 2026, 23:24 UTC

CVSS 3.1 base score
7.4High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.2% chance of exploitation in 30 days – higher than 22% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 5.1.11, 3.3.12
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 11 Aug 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 9 Nov 2026.

What to do

Upgrade ai nanoid to 5.1.11 or 3.3.12.

Affected software

ProductAffectedFixed in
ainanoidAffected
  • >=4.0.0 <5.1.11
Fixed in
  • 5.1.11
ainanoidAffected
  • <3.3.12
Fixed in
  • 3.3.12

AI-suggested

This vulnerability is fixed in ai nanoid versions 3.3.12 and 5.1.11. Users should upgrade to these or later versions to remediate the issue. No other mitigation or workaround is indicated. Patch status is confirmed by the version fix information in the description.

Description

nanoid is a secure, URL-friendly, unique string ID generator for JavaScript. Prior to versions 3.3.12 and 5.1.11, the nanoid(size) function in index.js and index.cjs coerces the user-influenced size parameter to a signed 32-bit integer, allowing a value of 2147483648 to become -2147483648 and corrupt the process-wide CSPRNG poolOffset in fillPool(), which causes subsequent session tokens, CSRF tokens, API keys, and unique identifiers to become the deterministic string "uuuuuuuuuuuuuuuuuuuuu" until the process restarts. This issue is fixed in versions 3.3.12 and 5.1.11.

References

Community reviews

Loading reviews…