jsrsasign: DSA signatures or X.509 certificates can be forged via DSA domain-parameter validation in KJUR.crypto.DSA.setPublic
High severity
GitHub Reviewed
Published
Mar 23, 2026
to the GitHub Advisory Database
•
Updated Mar 30, 2026
Description
Published by the National Vulnerability Database
Mar 23, 2026
Published to the GitHub Advisory Database
Mar 23, 2026
Reviewed
Mar 30, 2026
Last updated
Mar 30, 2026
Versions of the package jsrsasign before 11.1.1 are vulnerable to Improper Verification of Cryptographic Signature via the DSA domain-parameter validation in KJUR.crypto.DSA.setPublic (and the related DSA/X509 verification flow in src/dsa-2.0.js). An attacker can forge DSA signatures or X.509 certificates that X509.verifySignature() accepts by supplying malicious domain parameters such as g=1, y=1, and a fixed r=1, which make the verification equation true for any hash.
References