Junglewise Threat Intelligence

CVE-2026-49440: Deno missing cryptographic rounds in node:crypto checkPrime

CVE-2026-49440 · Severity: high · CVSS 7.4 · Published 2026-06-23

Technologies: deno (crates.io). Vendors: crates.io.

Executive brief

Deno is a software runtime used to build and run JavaScript and TypeScript applications. A flaw in its security tools allowed non-prime numbers to be incorrectly identified as prime numbers, which can weaken encryption and digital signatures. If an application uses these tools to verify security data provided by an outside user, an attacker could bypass certain security checks or compromise private communications.

Technical details

A vulnerability exists in Deno's implementation of the Miller-Rabin primality test within the node:crypto polyfill. When the 'checks' option is left at its default value of 0, the runtime skips the Miller-Rabin probabilistic loop entirely, relying solely on trial division by small primes up to 17,863. Consequently, any composite number whose smallest prime factor exceeds 17,863 (such as the product of two larger primes) is incorrectly reported as prime. An attacker can exploit this by providing crafted composite numbers to applications that use these APIs to validate security-critical parameters like Diffie-Hellman primes or RSA factors. The issue is resolved in version 2.8.1 by enforcing minimum Miller-Rabin rounds based on FIPS 186-4 standards.

Affected products

  • denoland Deno < 2.8.1

Timeline

  • 2026-05-26: patched: Fix merged into main branch via PR #34391
  • 2026-05-27: advisory: GitHub Security Advisory published
  • 2026-06-23: disclosed: CVE-2026-49440 published to NVD

References

Related threats