CVE-2026-4603: jsrsasign: Division by Zero Allows Invalid JWK Modulus to Cause Deterministic Zero Output in RSA Operations
(updated )
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.
References
- gist.github.com/Kr0emer/5366b7364c4fbf7e754bc377f321e9f3
- github.com/advisories/GHSA-464q-cqxq-xhgr
- github.com/kjur/jsrsasign
- github.com/kjur/jsrsasign/commit/dc41d49fac4297e7a737a3ef8ebd0aa9c49ef93f
- github.com/kjur/jsrsasign/pull/649
- nvd.nist.gov/vuln/detail/CVE-2026-4603
- security.snyk.io/vuln/SNYK-JS-JSRSASIGN-15371176
Code Behaviors & Features
Detect and mitigate CVE-2026-4603 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →