Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CWE-1333 — Vulnerability Class 259

259 vulnerabilities classified as CWE-1333. AI Chinese analysis included.

CWE-1333 represents a software weakness where regular expressions exhibit inefficient, often exponential, worst-case computational complexity. This vulnerability is typically exploited through Regular Expression Denial of Service (ReDoS) attacks, where malicious actors craft specific input strings that trigger catastrophic backtracking within the regex engine. Such inputs force the processor to evaluate an excessive number of potential matches, consuming significant CPU resources and effectively halting application availability. To mitigate this risk, developers must prioritize regex optimization by avoiding nested quantifiers, minimizing ambiguity in pattern structures, and utilizing possessive quantifiers or atomic groups to prevent backtracking. Additionally, implementing strict input length limits and employing regex complexity analysis tools during the development lifecycle can help identify and eliminate inefficient patterns before deployment, ensuring robust application performance against adversarial inputs.

MITRE CWE Description
The product uses a regular expression with a worst-case computational complexity that is inefficient and possibly exponential.
Common Consequences (1)
AvailabilityDoS: Resource Consumption (CPU)
Attackers can create crafted inputs that intentionally cause the regular expression to use excessive backtracking in a way that causes the CPU consumption to spike.
Mitigations (4)
Architecture and DesignUse regular expressions that do not support backtracking, e.g. by removing nested quantifiers.
Effectiveness: High
System ConfigurationSet 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.
Effectiveness: Moderate
ImplementationDo not use regular expressions with untrusted input. If regular expressions must be used, avoid using backtracking in the expression.
Effectiveness: High
ImplementationLimit the length of the input that the regular expression will process.
Effectiveness: Moderate
Examples (2)
This example attempts to check if an input string is a "sentence" [REF-1164].
var test_string = "Bad characters: $@#"; var bad_pattern  = /^(\w+\s?)*$/i; var result = test_string.search(bad_pattern);
Bad · JavaScript
var test_string = "Bad characters: $@#"; var good_pattern  = /^((?=(\w+))\2\s?)*$/i; var result = test_string.search(good_pattern);
Good · JavaScript
This example attempts to check if an input string is a "sentence" and is modified for Perl [REF-1164].
my $test_string = "Bad characters: \$\@\#"; my $bdrslt = $test_string; $bdrslt =~ /^(\w+\s?)*$/i;
Bad · Perl
my $test_string = "Bad characters: \$\@\#"; my $gdrslt = $test_string; $gdrslt =~ /^((?=(\w+))\2\s?)*$/i;
Good · Perl
CVE IDTitleCVSSSeverityPublished
CVE-2020-26311 GHSL-2020-312: Regular Expression Denial of Service (ReDoS) in useragent — useragent 7.5 -2024-10-26
CVE-2020-26310 GHSL-2020-305: Regular Expression Denial of Service (ReDoS) in Pure JavaScript HTML5 Parser — Pure-JavaScript-HTML5-Parser 7.5 -2024-10-26
CVE-2020-26309 GHSL-2020-303: Regular Expression Denial of Service (ReDoS) in nope-validator — nope-validator 7.5 -2024-10-26
CVE-2020-26308 GHSL-2020-302: Regular Expression Denial of Service (ReDoS) in validate.js — validate.js 7.5 -2024-10-26
CVE-2020-26307 GHSL-2020-301: Regular Expression Denial of Service (ReDoS) in HTML2Markdown — html2markdown 7.5 -2024-10-26
CVE-2020-26306 GHSL-2020-296: Regular Expression Denial of Service (ReDoS) in Knwl.js — Knwl 7.5 -2024-10-26
CVE-2020-26305 GHSL-2020-291: Regular Expression Denial of Service (ReDoS) in CommonRegexJS — CommonRegexJS 7.5 -2024-10-26
CVE-2020-26304 GHSL-2020-290: Regular Expression Denial of Service (ReDoS) in foundation-sites — foundation-sites 7.5 -2024-10-26
CVE-2020-26303 GHSL-2020-289: Regular Expression Denial of Service (ReDoS) in insane — insane 7.5 -2024-10-26
CVE-2024-47889 Action Mailer has possible ReDoS vulnerability in block_format — rails 7.5 -2024-10-16
CVE-2024-47888 Action Text has possible ReDoS vulnerability in plain_text_for_blockquote_node — rails 7.5 -2024-10-16
CVE-2024-47887 Action Controller has possible ReDoS vulnerability in HTTP Token authentication — rails 7.5 -2024-10-16
CVE-2024-9506 Regular Expression Denial of Service (ReDoS) — vue 3.7 Low2024-10-15
CVE-2024-9277 Langflow HTTP POST Request utils.py redos — Langflow 3.5 Low2024-09-27
CVE-2024-45813 ReDoS vulnerability in multiparametric routes in find-my-way — find-my-way 5.3 Medium2024-09-18
CVE-2024-45801 Tampering by prototype polution in DOMPurify — DOMPurify 7.3 High2024-09-16
CVE-2024-8124 Inefficient Regular Expression Complexity in GitLab — GitLab 7.5 High2024-09-12
CVE-2024-45296 path-to-regexp outputs backtracking regular expressions — path-to-regexp 7.5 High2024-09-09
CVE-2024-6232 Regular-expression DoS when parsing TarFile headers — CPython 6.5 -2024-09-03
CVE-2020-36830 nescalante urlregex Backtracking index.js redos — urlregex 4.3 Medium2024-09-02
CVE-2023-7279 Secure Systems Engineering Connaisseur Delegation Name targets_schema.json redos — Connaisseur 2.6 Low2024-09-02
CVE-2024-2800 Uncontrolled Resource Consumption in GitLab — GitLab 6.5 Medium2024-08-08
CVE-2024-3114 Uncontrolled Resource Consumption in GitLab — GitLab 4.3 Medium2024-08-08
CVE-2024-39317 Wagtail regular expression denial-of-service via search query parsing — wagtail 6.5 Medium2024-07-11
CVE-2024-3651 Denial of Service via Quadratic Complexity in kjd/idna — kjd/idna 7.5 -2024-07-07
CVE-2024-39316 Rack ReDoS Vulnerability in HTTP Accept Headers Parsing — rack 6.5 Medium2024-07-02
CVE-2024-6038 ReDoS Vulnerability in gaizhenbiao/chuanhuchatgpt — gaizhenbiao/chuanhuchatgpt 7.5AIHighAI2024-06-27
CVE-2024-1493 Uncontrolled Resource Consumption in GitLab — GitLab 6.5 Medium2024-06-26
CVE-2024-1736 Uncontrolled Resource Consumption in GitLab — GitLab 6.5 Medium2024-06-12
CVE-2024-1495 Uncontrolled Resource Consumption in GitLab — GitLab 6.5 Medium2024-06-12

Vulnerabilities classified as CWE-1333 represent 259 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.