-
04.05.2012, 09:49 #1
Gefahr durch offene PHP-Lücke
Das US-CERT warnt vor einer kritischen Sicherheitslücke in PHP, die versehentlich an die Öffentlichkeit geraten ist, während die Entwickler noch an einem Fix arbeiten. Betroffen sind Server, die PHP im CGI-Modus betreiben; FastCGI-Installationen von PHP sind hingegen nicht betroffen.
Ein Team entdeckte das Problem während eines Capture-The-Flag-Wettbewerbs. Im Wesentlichen beruht es darauf, dass man dem PHP-CGI-Programm über den Aufruf spezieller URLs Kommandozeilenparameter unterjubeln kann. So sorgt etwa die URL
http://localhost/index.php?-s
dafür, dass der Web-Server php-cgi mit dem Parameter -s aufruft wird, was den PHP-Quellcode von index.php als HTML ausgibt, statt ihn auszuführen. Das wäre an sich schon schlimm genug, weil PHP-Applikationen oft kritische Daten wie Zugangsdaten für Datenbanken enthalten. Doch laut den Entdeckern kann man damit auch direkt Code einschleusen und ausführen lassen, was die Lücke in die höchste Gefahrenstufe hebt.
Eigentlich sollte die Veröffentlichung der Lücke erst nach der Bereitstellung eines Patches erfolgen. Die Entdecker hatten dazu ihren Fund an das US-CERT weitergegeben, die als Vermittler agierten. Erst gestern hatte das CTF-Team zugestimmt, den PHP-Entwicklern noch etwas Zeit einzuräumen, den bereits vorhandenen Patch zu testen. Doch dann wurde der versehentlich als "öffentlich" markierte Eintrag in der PHP-Fehlerdatenbank auf der US-Site reddit gepostet und die Katze war aus dem Sack. Das CTF-Team veröffentlichte kurz danach weitere Informationen zu der PHP-Lücke in einem Blog.
Das US-CERT sieht derzeit noch keinen praktikable Möglichkeit sich zu schützen; die Entdecker der Lücke empfehlen, das PHP-CGI-Programm durch ein Wrapper-Skript zu ersetzen, das die Parameter filtert, bevor es das eigentliche PHP-Programm aufruft. Sie stellen auch ein passendes Beispiel-Skript bereit. Da das PHP-Team bereits einen Patch testet, sollte es auch bald eine offizielle Lösung für das Problem geben.
Update: Das PHP-Team hat die Versionen PHP 5.3.12 und PHP 5.4.2 veröffentlicht, die dieses Problem beseitigen. Für Admins, die derzeit noch nicht auf diese Versionen umstellen können, empfehlen sie, Query Strings zu filtern, die mit einem "-" anfangen und kein "=" enthalten. Mit dem Apache-Modul mod_rewrite erledigt das:
Code:RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC] RewriteRule ^(.*) $1? [L]
Grüße
Ähnliche Themen
-
Offene Rechnung
Von Xin Zhao im Forum Recht- und VerbraucherschutzAntworten: 2Letzter Beitrag: 03.03.2014, 21:57 -
Firefall: Offene Beta gestartet
Von Chrissy im Forum Gaming-NewsAntworten: 3Letzter Beitrag: 10.07.2013, 19:25 -
[Fußball] Badstuber: Sogar die WM ist in Gefahr
Von Roxithro im Forum RealLife NewsAntworten: 7Letzter Beitrag: 22.05.2013, 19:28 -
ACHTUNG: Schmunzel-Gefahr!
Von 707 im Forum OffTopicAntworten: 2Letzter Beitrag: 02.05.2012, 20:05 -
Gefahr durch Polizei?
Von Scanner im Forum Recht- und VerbraucherschutzAntworten: 3Letzter Beitrag: 08.12.2011, 16:13
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.