========================================================================
CVE-2026-85783                                       CPAN Security Group
========================================================================

        CVE ID:  CVE-2026-85783

  Distribution:  Crypt-Age
      Versions:  before 0.004
      MetaCPAN: https://metacpan.org/dist/Crypt-Age
      VCS Repo: https://github.com/Getty/p5-crypt-age


Crypt::Age versions before 0.004 for Perl allow CPU exhaustion via an
unbounded number of recipient stanzas, each costing an X25519 scalar
multiplication in unwrap_file_key

Description
-----------
Crypt::Age versions before 0.004 for Perl allow CPU exhaustion via an
unbounded number of recipient stanzas, each costing an X25519 scalar
multiplication in unwrap_file_key.

The header parser accepts any number of recipient stanzas, and
unwrap_file_key tries every identity against every X25519 stanza. Each
attempt runs a scalar multiplication, an HKDF and a ChaCha20-Poly1305
open. The header MAC cannot be checked first, because its key comes
from the file key, which only a successful unwrap produces.

Each stanza is 98 bytes of attacker-chosen header and buys one scalar
multiplication per identity held, and the file is rejected only after
every one of them has run. A caller reaches this through decrypt,
decrypt_file or decrypt_filehandle whenever it decrypts a file it did
not write.

Problem types
-------------
- CWE-770 Allocation of Resources Without Limits or Throttling
- CWE-405 Asymmetric Resource Consumption (Amplification)

Solutions
---------
Upgrade to Crypt-Age 0.004 or later.

References
----------
https://metacpan.org/release/GETTY/Crypt-Age-0.004/changes



Reply via email to