Investigate in your agent.

Turn this advisory into a focused investigation. Ask your agent to check your project’s versions, explain the evidence, and suggest a compatible fix.

Your agent needs remote MCP support and access to https://cve.new/mcp.

Read the setup guide

Skip to content
Check your stack
CVE-2026-85783high7.5

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

Impact

Crypt::Age versions before 0.004 for Perl are vulnerable to CPU exhaustion via an unbounded number of recipient stanzas. Each stanza costs an X25519 scalar multiplication in unwrap_file_key. An attacker can exploit this with local access to decrypt files.

Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.

What to do

Upgrade to Crypt-Age 0.004 or later.

CPANSec guidance

Affected packages

This source has no supported package-version data for matching. You can read the advisory here, but this record alone cannot power a dependency check.

Affected products

Vendor version evidence. Product records are separate from automatic dependency matching.

Vendor not supplied · CPANSec

Crypt-Age

1 range

Package identity

pkg:cpan/Crypt-Age

Identity supplied by CPANSec. Version matching requires compatible range evidence.

Compare with this publisher’s ranges. This does not inspect your installation.

affected

0 → before 0.004

custom versions

unaffected

unknown

Other versions: unaffected

Original source 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.

Inside the record

Evidence available

Package identity
Version evidence
Remediation guidance
Weakness classification
Additional publishers

Describes the evidence in this view, not whether the product is safe.

Original records

CVE-2026-85783

View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.

cve.new JSON →

Underlying weaknesses

The source’s classification of what caused the vulnerability.

CWE-770 ↗

CWE-770 Allocation of Resources Without Limits or Throttling

CPANSec

Related →
CWE-405 ↗

CWE-405 Asymmetric Resource Consumption (Amplification)

CPANSec

Related →
Contributing organizations · 3
CPANSec

Assigning organization

2026-10-20
CVE

Additional data publisher

2026-10-21
CISA-ADP

Additional data publisher

2026-10-30

What changed

Follow changes
No substantive changes have been recorded here yet. History starts when cve.new observes a change after tracking is enabled; earlier edits are not reconstructed.

Large field values are marked as truncated previews. Original source snapshots remain retained.

References

2 sources