CVE-2026-4603 jsrsasign: Division by Zero Allows Invalid JWK Modulus to Cause Deterministic Zero Output in RSA Operations
An attacker can cause denial of service and bypass security checks in jsrsasign by supplying a crafted JWK with a zero modulus.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-4603?
CVE-2026-4603 is a medium-severity denial of service vulnerability in jsrsasign, published on 23 Mar 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
Versions of the package jsrsasign before 11.1.1 are vulnerable to Division by zero due to the RSASetPublic/KEYUTIL parsing path in ext/rsa.js and the BigInteger.modPowInt reduction logic in ext/jsbn.js. An attacker can force RSA public-key operations (e.g., verify and encryption) to collapse to deterministic zero outputs and hide “invalid key” errors by supplying a JWK whose modulus decodes to zero.
Weakness: CWE-369
Which versions are affected by CVE-2026-4603?
2 open source packages ship an affected version, including jsrsasign. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
jsrsasign npm | All versions | 11.1.1 |
jsrsasign npm | All versions | 11.1.1 |
Products include Kjur Jsrsasign.
How do I fix CVE-2026-4603?
Upgrade jsrsasign to 11.1.1 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-4603 being exploited?
There is no known exploitation of CVE-2026-4603 in the wild and no public exploit code.
Other vulnerabilities in jsrsasign
- CVE-2020-14967 RSA PKCS#1 decryption vulnerability with prepending zeros in jsrsasign
- CVE-2020-14968 RSA-PSS signature validation vulnerability by prepending zeros in jsrsasign
- CVE-2026-4601 jsrsasign: Missing cryptographic validation during DSA signing enables private key extraction
- CVE-2026-4599 jsrsasign: Incomplete Comparison Allows DSA Private Key Recovery via Biased Nonce Generation
- CVE-2026-4600 jsrsasign: DSA signatures or X.509 certificates can be forged via DSA domain-parameter validation in KJUR.crypto.DSA.setPublic
Sources
Also known as GHSA-464q-cqxq-xhgr.