07.02.2012 10:35

PHP und max_input_vars

Um Neujahr herum wurde ein altes Problem wieder aufgewärmt: Man kann durch gezielte Hash-Collisions einen DoS-Angriff gegen Webserver fahren, indem man POST-Requests mit sehr vielen Parametern absetzt. Viele Web-Frameworks speichern diese CGI-Parameter in assoziativen Arrays und diese haben ein schlechtes Worst-Case-Verhalten, wenn die Schlüsselwerte absichtlich ungünstig gewählt werden.

PHP hat prompt reagiert und einen Patch herausgebracht. Dieser hat sich inzwischen als fehlerhaft herausgestellt weil er das Einschleusen und Ausführen von Code erlaubt.

Oops.

Der Fix dafür ist jetzt erhältlich. Diese Episode zeigt aber ganz gut, dass die Reaktionszeit auf Sicherheitslücken nicht das einzige Kriterium ist: auch die Korrektheit des Patches ist relevant. Es gibt einen Grund, warum kommerzielle Softwareanbieter ein rigoroses Testprogramm für Updates fahren. Ja, das kostet Zeit, spart aber hoffentlich solche Gotchas wie wir es gerade von PHP gesehen haben.

Autor: Otmar Lendl