Skip to main content
← All vulnerabilities
CVE-2026-113877EUVD-2026-109147GHSA-Q4HV-HFJ9-X4R5

HTTP::Headers::ActionPack versions before 0.10 for Perl allow CPU exhaustion via Accept-Language ranges matched as regular expressions

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.10
None on Exploit-DB, Metasploit or GitHub

Summary

HTTP::Headers::ActionPack for Perl, as used by applications that pass untrusted Accept-Language headers to its language selection, is affected. A remote attacker can send a crafted header that consumes excessive CPU time or causes the language selection function to crash.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original description

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.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. Record last updated

Affected versions

  • HTTP-Headers-ActionPack

    fixed in 0.10

References 2

metacpan.org

GitHub · robrwo/perl-HTTP-Headers-ActionPack