CRITICAL🇵🇱 Wersja polska

CVE-2026-12205

CVSS 9.1pub. 2026-06-15upd. 2026-06-16

Crypt::DSA versions before 1.21 for Perl reused the nonce across signatures, leading to private-key recovery. Crypt::DSA::sign caches the per-signature nonce material in the Key object without ever clearing it. The first sign() on a Key object picks a nonce, and every later sign() on that same object reuses it, producing an identical "r". Keys used to sign more than once with an affected version should be considered compromised.

🤖 AI Analysis
How it works

The Crypt::DSA::sign function stores nonce material (a one-time random parameter required by the DSA algorithm) in the Key object without subsequently cleaning it. On the first call to sign() on a given Key object, a nonce is generated, which is then reused by each subsequent call to sign() on the same object. This results in generating signatures with an identical 'r' value, which is a mathematically sufficient condition for an attacker possessing at least two signatures to recover the private key.

Impact

An attacker who obtains two or more DSA signatures generated with the same key using the vulnerable version of the library can mathematically recover the private key. Keys used for signing more than one message using the vulnerable version should be considered compromised.

Mitigation & patch

Update the Crypt::DSA library to version 1.21 or later. All DSA private keys that were used to sign more than one message using the vulnerable version should be considered compromised and immediately revoked and replaced with new key pairs.

Who is affected

Crypt::DSA for Perl in versions before 1.21

Analysis generated by Claude AI (Anthropic) based on NVD data. Always verify with vendor.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
🔵
CHECK WITH VENDOR
No clear patch data available. Check vendor references.
CWE
References