CVE-2012-2336
Description
sapi/cgi/cgi_main.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 lack an = (equals sign) character, which allows remote attackers to cause a denial of service (resource consumption) by placing command-line options in the query string, related to lack of skipping a certain php_getopt for the 'T' case. NOTE: this vulnerability exists because of an incomplete fix for CVE-2012-1823.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
No mitigations published for this CVE yet.
The vendor-content worker queues fetches as references arrive (check back in a few minutes). Or โ if you've already worked around this in production โ publish your fix to the community-verified tier.
โ Propose a mitigation on Community โ Mitigations published via the community go through AI scoring + 2 human reviewers + 7-day silent objection window before landing here withsource_tier=community-verified.
Exploits
Public proof-of-concept code below. AS-IS, for defenders and authorised testing only.
Exploit-DB
Apache + PHP < 5.3.12 / < 5.4.2 - cgi-bin Remote Code Execution
Apache + PHP < 5.3.12 / < 5.4.2 - Remote Code Execution + Scanner
PHP 5.3.12/5.4.2 - CGI Argument Injection (Metasploit)
PHP < 5.3.12 / < 5.4.2 - CGI Argument Injection
Application impact
| Vendor | Product | Versions | Fixed |
|---|---|---|---|
| php | php | {"endIncluding":"5.3.12"} | |
| php | php | 1.0 | |
| php | php | 2.0 | |
| php | php | 2.0b10 | |
| php | php | 3.0 | |
| php | php | 3.0.1 | |
| php | php | 3.0.2 | |
| php | php | 3.0.3 | |
| php | php | 3.0.4 | |
| php | php | 3.0.5 | |
| php | php | 3.0.6 | |
| php | php | 3.0.7 | |
| php | php | 3.0.8 | |
| php | php | 3.0.9 | |
| php | php | 3.0.10 | |
| php | php | 3.0.11 | |
| php | php | 3.0.12 | |
| php | php | 3.0.13 | |
| php | php | 3.0.14 | |
| php | php | 3.0.15 | |
| php | php | 3.0.16 | |
| php | php | 3.0.17 | |
| php | php | 3.0.18 | |
| php | php | 4.0 | |
| php | php | 4.0.0 | |
| php | php | 4.0.1 | |
| php | php | 4.0.2 | |
| php | php | 4.0.3 | |
| php | php | 4.0.4 | |
| php | php | 4.0.5 | |
| php | php | 4.0.6 | |
| php | php | 4.0.7 | |
| php | php | 4.1.0 | |
| php | php | 4.1.1 | |
| php | php | 4.1.2 | |
| php | php | 4.2.0 | |
| php | php | 4.2.1 | |
| php | php | 4.2.2 | |
| php | php | 4.2.3 | |
| php | php | 4.3.0 | |
| php | php | 4.3.1 | |
| php | php | 4.3.2 | |
| php | php | 4.3.3 | |
| php | php | 4.3.4 | |
| php | php | 4.3.5 | |
| php | php | 4.3.6 | |
| php | php | 4.3.7 | |
| php | php | 4.3.8 | |
| php | php | 4.3.9 | |
| php | php | 4.3.10 | |
| php | php | 4.3.11 | |
| php | php | 4.4.0 | |
| php | php | 4.4.1 | |
| php | php | 4.4.2 | |
| php | php | 4.4.3 | |
| php | php | 4.4.4 | |
| php | php | 4.4.5 | |
| php | php | 4.4.6 | |
| php | php | 4.4.7 | |
| php | php | 4.4.8 | |
| php | php | 4.4.9 | |
| php | php | 5.0.0 | |
| php | php | 5.0.1 | |
| php | php | 5.0.2 | |
| php | php | 5.0.3 | |
| php | php | 5.0.4 | |
| php | php | 5.0.5 | |
| php | php | 5.1.0 | |
| php | php | 5.1.1 | |
| php | php | 5.1.2 | |
| php | php | 5.1.3 | |
| php | php | 5.1.4 | |
| php | php | 5.1.5 | |
| php | php | 5.1.6 | |
| php | php | 5.2.0 | |
| php | php | 5.2.1 | |
| php | php | 5.2.2 | |
| php | php | 5.2.3 | |
| php | php | 5.2.4 | |
| php | php | 5.2.5 | |
| php | php | 5.2.6 | |
| php | php | 5.2.7 | |
| php | php | 5.2.8 | |
| php | php | 5.2.9 | |
| php | php | 5.2.10 | |
| php | php | 5.2.11 | |
| php | php | 5.2.12 | |
| php | php | 5.2.13 | |
| php | php | 5.2.14 | |
| php | php | 5.2.15 | |
| php | php | 5.2.16 | |
| php | php | 5.2.17 | |
| php | php | 5.3.0 | |
| php | php | 5.3.1 | |
| php | php | 5.3.2 | |
| php | php | 5.3.3 | |
| php | php | 5.3.4 | |
| php | php | 5.3.5 | |
| php | php | 5.3.6 | |
| php | php | 5.3.7 | |
| php | php | 5.3.8 | |
| php | php | 5.3.9 | |
| php | php | 5.3.10 | |
| php | php | 5.3.11 | |
| php | php | 5.4.0 | |
| php | php | 5.4.1 | |
| php | php | 5.4.2 | |
References
- http://lists.opensuse.org/opensuse-security-announce/2012-06/msg00004.html
- http://lists.opensuse.org/opensuse-security-announce/2012-07/msg00003.html
- http://secunia.com/advisories/49014
- http://www.php.net/ChangeLog-5.php#5.4.3
- http://www.php.net/archive/2012.php#id2012-05-08-1
- https://bugs.php.net/bug.php?id=61910
- https://bugs.php.net/patch-display.php?bug_id=61910&patch=CVE-2012-1823.patch&revision=1336251592&display=1
- https://h20564.www2.hp.com/portal/site/hpsc/public/kb/docDisplay?docId=emr_na-c03839862
- http://lists.opensuse.org/opensuse-security-announce/2012-06/msg00004.html
- http://lists.opensuse.org/opensuse-security-announce/2012-07/msg00003.html
- http://secunia.com/advisories/49014
- http://www.php.net/ChangeLog-5.php#5.4.3
- http://www.php.net/archive/2012.php#id2012-05-08-1
- https://bugs.php.net/bug.php?id=61910
- https://bugs.php.net/patch-display.php?bug_id=61910&patch=CVE-2012-1823.patch&revision=1336251592&display=1
- https://h20564.www2.hp.com/portal/site/hpsc/public/kb/docDisplay?docId=emr_na-c03839862
CWEs
CWE-20
Community-verified mitigations for this CVE will appear above when contributors publish them.
Verify integrity in audit chain (admin only). AS-IS.