jsrsasign leaks private keys (CVE-2026-4599)
CVE-2026-4599
Versions of the package jsrsasign from 7.0.0 and before 11.1.1 are vulnerable to Incomplete Comparison with Missing Factors via the getRandomBigIntegerZeroToMax and getRandomBigIntegerMinToMax functio...
Overview
A critical cryptographic vulnerability, identified as CVE-2026-4599, has been discovered in the popular jsrsasign JavaScript library. This library is widely used for cryptographic operations like digital signatures, encryption, and certificate handling in web applications and Node.js services. The flaw resides in how the library generates random numbers for DSA (Digital Signature Algorithm) signatures, creating a severe risk of private key exposure.
Vulnerability Details
In simple terms, the functions responsible for generating random numbers (getRandomBigIntegerZeroToMax and getRandomBigIntegerMinToMax) contain an incomplete comparison check. This error allows the generation of random numbers (nonces) that fall outside the intended secure range. When these flawed nonces are used to create DSA digital signatures, they introduce a predictable bias.
An attacker who collects a sufficient number of these biased signatures can perform mathematical cryptanalysis to deduce the system’s private DSA key. This compromises the very foundation of trust for any application using jsrsasign for DSA signatures, as the private key is meant to remain absolutely secret.
Impact
The impact of this vulnerability is severe (CVSS score 9.1). Successful exploitation leads to the complete compromise of any DSA private key used by a vulnerable version of the library. An attacker with the private key can:
- Forge digital signatures, impersonating legitimate users or services.
- Decrypt confidential data intended for the compromised key holder.
- Break authentication mechanisms, potentially gaining unauthorized access to systems. This type of cryptographic failure has historically led to significant breaches. For analysis of past incidents, you can review public breach reports.
Affected Versions
All versions of the jsrsasign package starting from 7.0.0 up to, but not including, 11.1.1 are vulnerable.
Remediation and Mitigation
Immediate action is required to secure affected systems.
Primary Action: Update the Library
The only complete remediation is to upgrade the jsrsasign package to version 11.1.1 or later. This version contains the necessary fix for the incomplete comparison checks.
- For Node.js projects: Run
npm update jsrsasignoryarn upgrade jsrsasign. - For web applications: Ensure all bundled dependencies use the patched version.
Assessment and Monitoring
- Inventory: Identify all applications and services that depend on the
jsrsasignlibrary. - Rotate Keys: As a precaution, any DSA private keys that have been used with a vulnerable version should be considered compromised and must be revoked and replaced with new keys after the update.
- Monitor: Watch for unusual authentication or signing activity on systems that used vulnerable versions. Stay informed on emerging threats by following the latest security news.
This vulnerability underscores the critical importance of keeping cryptographic libraries up to date. Organizations should prioritize this update due to the high risk of private key disclosure.
Never miss a critical vulnerability
Get real-time security alerts delivered to your preferred platform.
Am I Affected by CVE-2026-4599?
Pick an ecosystem, paste your installed version, and we'll compare it against the fixed version published on OSV.dev. Browser-only — nothing is sent to a server.
Heuristic comparison only. Always cross-check against the vendor advisory before making patching decisions.
Related Advisories
NovumOS is a custom 32-bit operating system written in Zig and x86 Assembly. In versions prior to 0.24, Syscall 12 (JumpToUser) accepts an arbitrary entry point address from user-space registers witho...
Hot Chocolate is an open-source GraphQL server. Prior to versions 12.22.7, 13.9.16, 14.3.1, and 15.1.14, Hot Chocolate's recursive descent parser `Utf8GraphQLParser` has no recursion depth limit. A cr...
ChurchCRM is an open-source church management system. In versions prior to 7.2.0, the database backup restore functionality extracts uploaded archive contents and copies files from the Images/ directo...
NovumOS is a custom 32-bit operating system written in Zig and x86 Assembly. In versions prior to 0.24, Syscall 15 (MemoryMapRange) allows Ring 3 user-mode processes to map arbitrary virtual address r...