Eigentlich sollte das am 11. Januar 2012 veröffentlichte
Update auf PHP 5.3.9 Hash-Kollisionen und damit
DoS-Angriffe verhindern. Die Entwickler haben mit dem Update die Anzahl der Eingabeparameter in
php_variables.c über max_input_vars auf höchstens 1000 beschränkt. Allerdings ist ihnen dabei ein
Fehler unterlaufen. Dieser ermöglicht Angreifern, die Höchstgrenze zu überschreiten und beliebigen Code in eine Web-Anwendung einzuschleusen und auszuführen.
Stefan Esser, der Entdecker der Lücke, beruhigt aber besorgte Anwender. Die mit seiner Unterstützung entwickelte Sicherheitserweiterung
Suhosin, die bei den meisten Server-Systemen installiert sein sollte, erschwere die Ausnutzbarkeit beträchtlich. Um das Problem auch ohne Suhosin zu umgehen, schlägt Esser vor, bis zum endgültigen Update die PHP.ini-Variable max_input_vars auf eine Zahl von etwa einer Milliarde zu einzugeben. Das ermöglicht zwar wieder Denial-of-Service-Attacken, ist aber lange nicht so gefährlich.
Inzwischen haben die PHP-Entwickler die
Version 5.3.10 veröffentlicht, in der der Fehler behoben ist. Für
Red Hat Enterprise Linux beispielsweise gibt es schon Update-Pakete. Bis die anderen Distributionen nachziehen, kann es aber noch einige Zeit dauern.