Nach langer Zeit (fast anderthalb Jahre!) wird hier endlich mal wieder etwas entstaubt. Viel hat sich in den letzten Jahren getan - persönlich bei den Autoren des Buches, aber auch in der PHP-Szene. Vieles ist jedoch auch gleich geblieben...
Wir starten dieses Blog neu mit einer kleinen Übersicht der sicherheitsrelevanten Änderungen in PHP 5.4.0 - sowohl im Sprachkern als auch in den wichtigsten Sicherheits-Erweiterungen.
register_globals ist weg
Die Götter haben ein Einsehen: Nachdem die berühmt-berüchtigte Konfigurationsdirektive "register_globals" seit PHP 5.0 auf "off" stand und als deprecated - also überflüssig und abgekündigt - markiert war, ist sie nun aus PHP komplett verschwunden. Es gibt also keine per Konfiguration aktivierbare Möglichkeit mehr, Requestvariablen statt über $_{GET,POST,REQUEST} direkt mit $variable anzusprechen.
Diese Änderung dürfte gleichzeitig das Hauptproblem für Upgrades bedeuten. Wenn Ihre Skripte noch auf "register_globals on" angewiesen sind,
upgraden Sie PHP nicht! Sie sollten dringend Ihre Skripte anpassen - Zeit genug hatten Sie.
Safe Mode ist weg
Den ungeliebten Safe Mode hat es auch dahingerafft. Er ist mit PHP 5.4 komplett verschwunden.
Magic quotes
Die Ini-Optionen "magic_quotes_gpc" und Konsorten sind ebenfalls verschwunden. Skriptautoren sollten sich nun nicht mehr darauf verlassen, daß automatisch quotiert wird - und ggf. mit den geeigneten Funktionen selber Quotes nachziehen.
Suhosin-Patch und Suhosin Extension
Weder Suhosin-Patch noch Suhosin-Extension existieren für PHP 5.4.0. Derzeit ist auch nicht bekannt, ob und wann sie veröffentlicht werden. Einige Paketmaintainer - unter anderem Debian - haben daher ihre Unterstützung für Suhosin in PHP zunächst eingestellt und verweisen auf spezielle Pakete oder die Möglichkeit, Suhosin von Hand einzukompilieren.
Derzeit läßt sich die Suhosin-Extension nicht mit PHP 5.4.0 übersetzen.