Kritische PHP-Lücke wird gerade behoben

Die PHP-Entwickler arbeiten gerade fieberhaft an der Beseitigung einer kritischen Sicherheitslücke in PHP, die sie selber erst durch einen Sicherheits-Patch eingeführt haben. Noch lässt sich die Tragweite nicht ganz abschätzen.

In Pocket speichern vorlesen Druckansicht 290 Kommentare lesen
Lesezeit: 2 Min.

Die PHP-Entwickler arbeiten gerade fieberhaft an der Beseitigung einer kritischen Sicherheitslücke in PHP, die sie selbst erst durch einen Sicherheits-Patch eingeführt haben. Betroffen ist offenbar zumindest die aktuelle Version 5.3.9. Ob der löchrige Patch auch in ältere PHP-Versionen eingepflegt wurde, ist bislang unklar.

Auslöser des Problems ist das Sicherheits-Update auf PHP 5.3.9, das Denial-of-Service-Angriffe durch Hash-Kollisionen vermeiden sollte. Dazu begrenzten die Entwickler die maximal mögliche Zahl von Eingabeparametern in php_variables.c über max_input_vars auf 1000. Auf Grund der fehlerhaften Umsetzung kann man durch gezieltes Überschreiten dieser Grenze offenbar Code einschleusen und ausführen lassen. Der Fehler gehört somit in die höchste Kategorie: Übers Netz mögliches Einschleusen von Code.

In der Entwicklerversion von PHP gibt es bereits einen Patch für den Bug; ein offizielles Advisory der PHP-Entwickler steht jedoch noch aus. Ofiizielle Hinweise zu Sofortmaßnahmen und Workarounds für besorgte Admins gibt es folglich ebenfalls noch nicht.

Der Entdecker des Problems Stefan Esser merkt an, dass der Einsatz der von ihm mitentwickelten Sicherheitserweiterung Suhosin die Ausnutzbarkeit beträchtlich reduziert. Gegenüber heise Security erklärte er, dass PHP-Installationen mit der Suhosin-Erweiterung in der Standardkonfiguration nicht anfällig sind; wird nur der Suhosin-Patch eingesetzt, ist der Fehler zumindest sehr viel schwerer auszunutzen. Als schnellen Workaround für Installationen ohne Suhosin schlägt Esser vor, zumindest kurzfristig die php.ini-Variable max_input_vars auf einen sehr hohen Wert wie eine Milliarde zu setzen. Damit sei man zwar wieder anfällig für die Denial-of-Service-Attacke, was aber in diesem Fall das bei weitem kleinere Übel ist.

Update: Mittlerweile haben die Entwickler die Version 5.3.10 als Sicherheits-Update freigegeben. Red Hat hat eine Sicherheitsnotiz veröffentlicht, der zu entnehmen ist, dass der fehlerhafte Patch auch in alte PHP-Versionen wie 5.1und sogar 4.3 eingebaut wurde, die jetzt dringend erneut aktualisiert werden müssen. (ju)