CVE Catalog

CVE-2026-113877

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Elevated risk
0.71%

54th percentile - higher than 54% of all known CVEs

Summary

In HTTP::Headers::ActionPack versions before 0.10 for Perl, _language_match interpolates each Accept-Language range into the pattern /^$range\-/i without escaping it, so regular expression syntax in the header reaches the regex engine. A crafted range can cause catastrophic backtracking and CPU exhaustion, or make choose_language die.

Risk Assessment

A remote attacker can exhaust CPU or crash the application by sending a crafted Accept-Language header, resulting in denial of service.

Recommendation

Upgrade HTTP::Headers::ActionPack to version 0.10 or later. Until then, consider validating or limiting the length of the Accept-Language header.

Related vulnerabilities

Original NVD description (English source)

HTTP::Headers::ActionPack versions before 0.10 for Perl allow CPU exhaustion via Accept-Language ranges matched as regular expressions. _language_match interpolates each Accept-Language range into the pattern `/^$range\-/i` without escaping it, so regular expression syntax in the header reaches the regex engine. A 12-byte range such as `(a?|b?){26}z` backtracks for seconds, and each increment of the quantifier doubles the time. An invalid range such as `(` fails to compile. A remote attacker can exhaust CPU, or make choose_language die, in any application that passes an untrusted Accept-Language header to it.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS