CVE-2012-2311: SQL Injection
sapi/cgi/cgimain.c in PHP before 5.3.13 and 5.4.x before 5.4.3, when configured as a CGI script (aka php-cgi), does not properly handle query strings that contain a %3D sequence but no = (equals sign) character, which allows remote attackers to execute arbitrary code by placing command-line options in the query string, related to lack of skipping a certain phpgetopt for the 'd' case. NOTE: this vulnerability exists because of an incomplete fix for CVE-2012-1823.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2012-2311?
CVE-2012-2311 is considered critical due to its potential to allow remote code execution.
How do I fix CVE-2012-2311?
To fix CVE-2012-2311, upgrade PHP to at least version 5.3.13 or 5.4.3.
What versions of PHP are affected by CVE-2012-2311?
CVE-2012-2311 affects PHP versions before 5.3.13 and 5.4.x before 5.4.3.
What types of attacks are possible due to CVE-2012-2311?
CVE-2012-2311 allows remote attackers to execute arbitrary code by manipulating query strings.
Is there a workaround for CVE-2012-2311 if I cannot upgrade?
As a workaround for CVE-2012-2311, consider disabling the CGI version of PHP if feasible.