CAPEC-492

Regular Expression Exponential Blowup
2014-06-23
00h00 +00:00
Draft
2022-02-22
00h00 +00:00
特定のCAPECのアラート
特定のCAPECの変更情報をいち早くお届けします。
通知を管理する

CAPEC の説明

An adversary may execute an attack on a program that uses a poor Regular Expression(Regex) implementation by choosing input that results in an extreme situation for the Regex. A typical extreme situation operates at exponential time compared to the input size. This is due to most implementations using a Nondeterministic Finite Automaton(NFA) state machine to be built by the Regex algorithm since NFA allows backtracking and thus more complex regular expressions.

CAPEC の情報

前提条件

This type of an attack requires the ability to identify hosts running a poorly implemented Regex, and the ability to send crafted input to exploit the regular expression.

緩和策

Test custom written Regex with fuzzing to determine if the Regex is a poor one. Add timeouts to processes that handle the Regex logic. If an evil Regex is found rewrite it as a good Regex.

関連する弱点

CWE-ID 弱点名

CWE-400

Uncontrolled Resource Consumption
The product does not properly control the allocation and maintenance of a limited resource.

CWE-1333

Inefficient Regular Expression Complexity
The product uses a regular expression with a worst-case computational complexity that is inefficient and possibly exponential.

参考文献

REF-421

Regular Expression Denial of Service Attacks and Defenses
Bryan Sullivan.
http://msdn.microsoft.com/en-au/magazine/ff646973.aspx

登録情報

名前 組織 日付 リリース日
CAPEC Content Team The MITRE Corporation 2014-06-23 +00:00

変更履歴

名前 組織 日付 コメント
CAPEC Content Team The MITRE Corporation 2019-04-04 +00:00 Updated Related_Weaknesses
CAPEC Content Team The MITRE Corporation 2019-09-30 +00:00 Updated Related_Attack_Patterns
CAPEC Content Team The MITRE Corporation 2020-12-17 +00:00 Updated Taxonomy_Mappings
CAPEC Content Team The MITRE Corporation 2021-06-24 +00:00 Updated Related_Weaknesses
CAPEC Content Team The MITRE Corporation 2022-02-22 +00:00 Updated Description, Extended_Description