The product uses a regular expression that either (1) contains
an executable component with user-controlled inputs, or (2) allows a user to
enable execution by inserting pattern modifiers.
Extended Description
Case (2) is possible in the PHP preg_replace() function, and possibly in
other languages when a user-controlled input is inserted into a string that
is later parsed as a regular expression.
Under-studied. The existing PHP reports are limited to highly skilled
researchers, but there are few examples for other languages. It is suspected
that this is under-reported for all languages. Usability factors might make
it more prevalent in PHP, but this theory has not been investigated.
Content History
Modifications
Modification Date
Modifier
Organization
Source
2008-07-01
Eric Dalci
Cigital
External
updated Time of Introduction
2008-09-08
CWE Content Team
MITRE
Internal
updated Applicable Platforms, Relationships,
Observed Example