CVE-2026-4600

jsrsasign: jsrsasign: Cryptographic signature forgery via malicious DSA domain parameters

Published Mar 23, 2026 CVSS 4.0 · 9.1 Critical EPSS < 1% KEV · Not listed
Description
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.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-wvqx-v3f6-w8rh jsrsasign: DSA signatures or X.509 certificates can be forged via DSA domain-parameter validation in KJUR.crypto.DSA.setPublic
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Jsrsasign Project
Jsrsasign Project jsrsasign
CPEs cpe:2.3:a:jsrsasign_project:jsrsasign:*:*:*:*:*:node.js:*:*
Vendors & Products Jsrsasign Project
Jsrsasign Project jsrsasign
Type Values Removed Values Added
Title jsrsasign: jsrsasign: Cryptographic signature forgery via malicious DSA domain parameters
References
Metrics threat_severity

None

threat_severity

Important

Type Values Removed Values Added
First Time appeared Kjur
Kjur jsrsasign
Vendors & Products Kjur
Kjur jsrsasign
Type Values Removed Values Added
Description 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.
Weaknesses CWE-347
References
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N/E:P'}

cvssV4_0

{'score': 9.1, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
snyk
Published
Updated
Sep 10, 2026, 12:05 PM
Reserved
Mar 22, 2026, 4:26 PM
Status
Modified
Published
Mar 23, 2026, 6:16 AM
Modified
Sep 10, 2026, 1:20 PM
Severity
Important
Public date
Mar 23, 2026, 5:00 AM