CVE-2026-113877: CWE-624 Executable Regular Expression Error
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.
Affected software
pkg:github/HTTP-Headers-ActionPackRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability in HTTP::Headers::ActionPack (versions before 0.10) arises from the _language_match function interpolating Accept-Language header ranges directly into the regex pattern /^$range\-/i without escaping special characters. This allows an attacker to supply maliciously crafted Accept-Language headers containing complex or invalid regex syntax. For example, a 12-byte range like (a?|b?){26}z causes exponential backtracking, resulting in CPU exhaustion. An invalid range such as '(' causes the regex compilation to fail, potentially crashing the choose_language function. This flaw enables remote attackers to exhaust CPU resources or cause application errors by sending specially crafted HTTP headers.
Potential Impact
Remote attackers can cause denial of service conditions by exhausting CPU resources through crafted Accept-Language headers that trigger excessive regex backtracking or cause regex compilation failures. This affects any application using vulnerable versions of HTTP::Headers::ActionPack that pass untrusted Accept-Language headers to the _language_match function. There is no indication of code execution or data leakage, but service availability can be impacted.
Mitigation Recommendations
No official patch or fix information is provided in the available data. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, applications should avoid passing untrusted Accept-Language headers directly to HTTP::Headers::ActionPack or implement input validation and sanitization to prevent malicious regex patterns. Monitoring for unusual CPU usage related to HTTP requests may help detect exploitation attempts.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- CPANSec
- Date Reserved
- 2026-10-20T20:16:52.798Z
- State
- PUBLISHED
Threat ID: 6adbc527d73cc49347bbc2da
Added to database: 10/23/2026, 20:35:51 UTC
Last enriched: 10/23/2026, 20:50:08 UTC
Last updated: 10/23/2026, 23:35:46 UTC
Views: 11
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.