CVSS Metrics:
Base 9,0 AV:N/AC:L/Au:N/C:C/I:P/A:P
Temporal 8,5 E:F/RL:U/RC:C
Ein erster Schnelltest, der Hinweise darüber gibt ob man von der Schwachstelle betroffen ist, besteht darin, PHP-Seiten mit dem Parameter ?-s (Beispiel: /meinephpseite.php?-s
) aufzurufen. Auf gefährdeten Plattformen wird dann möglicherweise der PHP-Quellcode (der beispielsweise auch Passwörter enthalten kann) ausgegeben.
Die mit großem Abstand überwiegende Mehrheit der derzeit verwendeten PHP-Implementierungen basiert jedoch auf FastCGI statt CGI oder läuft als Servermodul. Solche PHP-Installationen sind von der hier beschriebenen Sicherheitslücke nicht betroffen.
Weiterführende Links
- US-CERT: PHP-CGI query string parameter vulnerability (3.5.2012)
Update 22:30 Uhr:
Inzwischen hat PHP die beiden Updates PHP 5.3.12 und PHP 5.4.2 veröffentlicht, die den Fehler beheben sollen. Als Alternative wird auch ein mit wenig Aufwand implementierbarer Workaround auf Basis von mod_rewrite skizziert. Details: php.net: PHP 5.3.12 and PHP 5.4.2 Released!
Update 4.5.2012, 12 Uhr:
Die PHP-Bugfixes erwiesen inzwischen als nicht zuverlässig. Darüber hinaus wurde auch bekannt, dass selbst in Konfigurationen, in denen PHP standardmäßig als Servermodul läuft, ebenfalls PHP im CGI-Modus zur Ausführung kommen kann, beispielsweise wenn per AddType in der .htaccess für einen Unterordner eine andere PHP-Konfiguration verwendet wird. Dies trifft auch für einige der großen Hoster zu.
Update 6.5.2012:
PHP kündigte korrigierte Bugfix-Releases für Dienstag, den 8.5.2012, an.
Update 8.5.2012:
PHP veröffentlicht die Releases PHP 5.4.3 und PHP 5.3.13, die die o.g. Verwundbarkeit beseitigen sollen. Details: php.net PHP 5.4.3 and PHP 5.3.13 Released!