7.5 CVE-2026-14741

Enriched by CISA
 

HTTP::Date versions before 6.08 for Perl allow CPU exhaustion via polynomial regex backtracking in parse_date. parse_date() matches the date string against a chain of alternative regexes, and str2time() delegates to it. Several of these patterns place unbounded quantifiers next to each other before a trailing `s*$` anchor. A valid date prefix followed by a long interior run of digits, letters, or whitespace and a single trailing byte that defeats the final match forces the engine to repartition the run, giving polynomial (about quadratic) backtracking. A header value of a few tens of kilobytes runs for tens of seconds of CPU. HTTP::Date parses timestamps such as HTTP `Date`, `Expires`, and `Last-Modified` headers, which commonly originate from untrusted sources. Any caller that passes an untrusted date header to str2time() or parse_date() can be driven to consume unbounded CPU, a denial of service.
https://nvd.nist.gov/vuln/detail/CVE-2026-14741

Categories

CWE-1333 : Inefficient Regular Expression Complexity
The product uses a regular expression with a worst-case computational complexity that is inefficient and possibly exponential. ReDoS is an abbreviation of "Regular expression Denial of Service". While this term is attack-focused, this is commonly used to describe the weakness. This term is used to describe the behavior of the regular expression as a negative technical impact. Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.) Use regular expressions that do not support backtracking, e.g. by removing nested quantifiers. Set backtracking limits in the configuration of the regular expression implementation, such as PHP's pcre.backtrack_limit. Also consider limits on execution time for the process. Do not use regular expressions with untrusted input. If regular expressions must be used, avoid using backtracking in the expression. Limit the length of the input that the regular expression will process. server allows ReDOS with crafted User-Agent strings, due to overlapping capture groups that cause excessive backtracking. npm package for user-agent parser prone to ReDoS due to overlapping capture groups Markdown parser uses inefficient regex when processing a message, allowing users to cause CPU consumption and delay preventing processing of other messages. Long string in a version control product allows DoS due to an inefficient regex. Javascript code allows ReDoS via a long string due to excessive backtracking. ReDoS when parsing time. ReDoS when parsing documents. ReDoS when validating URL.

References


 

AFFECTED (from MITRE)


Vendor Product Versions
OALDERS HTTP::Date
  • < 6.08 [affected]
© 2022 The MITRE Corporation. This work is reproduced and distributed with the permission of The MITRE Corporation.

CPE

cpe start end


REMEDIATION




EXPLOITS


Exploit-db.com

id description date
No known exploits

POC Github

Url
No known exploits

Other Nist (github, ...)

Url
No known exploits


CAPEC


Common Attack Pattern Enumerations and Classifications

id description severity
492 Regular Expression Exponential Blowup