Katalog CVE

CVE-2026-85783

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.22%

Percentyl 12 - wyżej niż 12% wszystkich znanych CVE

Streszczenie

Crypt::Age w wersjach przed 0.004 dla Perla pozwala na wyczerpanie CPU poprzez nieograniczoną liczbę sekcji odbiorców w nagłówku, z których każda wymaga mnożenia skalarnego X25519 w unwrap_file_key. Każda sekcja to 98 bajtów nagłówka wybranych przez atakującego, a plik jest odrzucany dopiero po przetworzeniu wszystkich.

Ocena ryzyka

Atakujący może dostarczyć spreparowany plik, powodując wyczerpanie zasobów CPU i odmowę usługi przy każdej próbie odszyfrowania pliku, którego nie utworzył.

Rekomendacja

Zaktualizuj Crypt::Age do wersji 0.004 lub nowszej oraz ogranicz przetwarzanie niezaufanych plików szyfrowanych.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS