Gefährlich: Die meisten Websites nutzen eine alte PHP-Version

PHP hat mittlerweile eine lange Geschichte. Die aktuellste Variante ist PHP 7.0. Ein PHP 6 gab es nicht.

Gefühlt dominiert PHP als serverseitig interpretierte und ausgeführte Skriptsprache das Web, vor Java, Python und anderen. Zu diesem Ergebnis kommt auch W3Techs, ein Analyseunternehmen, das auf Basis von zehn Millionen Websites versucht zu ermitteln, wie die Technologien verteilt sind.

w3techs serverside Languges November 2016
Die Schätzung von W3Techs, basierend auf einer Analyse von 10 Millionen Websites aus dem Alexa-Ranking zeigt, dass im Web die Skriptsprache PHP sehr deutlich dominiert.

Der recht niedrige Anteil von Java im W3Techs-Ranking verwundert etwas.

Andere Quellen kommen durchaus zu einer anderen Einschätzung. Wenn es um die beliebtesten Programmiersprachen an sich geht, liegt PHP erst auf Platz sieben, nach Python und Visual Basic bzw. „.Net“. Dazu muss man aber bemerken, dass Python als Skriptsprache auch in anderen Kontexten gerne zum Einsatz kommt, nicht nur im Web, ebenso Visual Basic.

tiobeIndex Nov 2017
Der TIOBE Index ermittelt die Beliebtheit von Programmiersprachen anhand einer Auswertung von Stellenangeboten. Quelle www.tiobe.com

Grund für die Beliebtheit von PHP ist, dass das System unter einer quelloffenen Lizenz kostenfrei verfügbar ist. Was sehr für PHP spricht ist, dass man Scripts gut in HTML -Dokumente einbetten und mit ihnen kombinieren kann. Die PHP-Anweisungen können einfach mit in den HTML-Code geschrieben werden. Voraussetzung ist, dass der Webserver die PHP-Anweisungen erkennt und ausführen kann.

Die Idee zu der Skriptsprache PHP entstammt dem Wunsch, auf Webseiten mehr Interaktivität mit dem User zu ermöglichen. 1995 stellte der dänische Programmierer Rasmus Lerdorf ein Projekt namens PHP/FI vor, das eine Sammlung Scripts umfasste, die ursprünglich in perl geschrieben waren, später in C. Dabei stand PHP für „personal homepage scripts“. Der andere Teil des Akronyms stand für „forms interpreter“. Lerdorf gab den Code frei. 1997 erschien PHP/FI 2, ebenfalls in C geschrieben.

Mit PHP 3 traten große Veränderungen ein: PHP wurde ein Universitätsprojekt und neu entwickelt. Selbst der Name änderte sich. PHP stand nun für „Hypertext Preprocessor“. Der zeitliche Abstand zur nächsten Version, PHP 4.0, betrug etwa zwei Jahre. Nochmal zwei Jahre länger dauerte es bis zur Veröffentlichung von PHP 5.0.

Zu erwarten wäre, dass nach PHP 5 die Version 6 folgt. Es gab tatsächlich eine Planung für PHP 6, doch Entwicklungen sind schon in Unterversionen von PHP 5 genutzt worden. PHP 5 ist noch aktuell, allerdings nur mit der Version 5.6. Bis Ende diesen Jahres (2016) soll es noch „aktiven Support“ geben, danach noch bis Ende 2018 „Security Support“. Für zwei Jahre hat man also noch Planungssicherheit.

PHP bemüht sich sichtlich um Abwärtskompatibilität. Allerdings muss es auch voran gehen, neue Features für neue Möglichkeiten fließen in die Sprache ein. So werden alte Konstrukte als „deprecated“ gekennzeichnet. Sie funktionieren noch, aber man muss damit rechnen, dass in den kommenden Unterversionen dies nicht mehr unterstützt wird.

PHP 5 dominiert, aktuell ist 7

Aktuell dominiert PHP 5, zumindest wenn man W3Techs Glauben schenkt.

w3techs serverside Languges php Hauptversionen
PHP 5 dominiert nach wie vor. PHP 7 ist noch vergleichsweise jung. Auf PHP 4 und PHP 3 trifft man nur noch sehr selten.

Praxiserfahrungen sprechen für die Vermutung, dass Webseitenbetreiber neue Versionen nur sehr langsam adaptieren. Grund dafür dürfte sein, dass umwälzende Neuerungen nun nicht mehr in dem Maße zu erwarten sind wie damals beim Übergang von PHP 3 auf 4. Zudem muss man bedenken, dass viele Anwendungen auf eine Version angewiesen sind und nicht so ohne weiteres migriert werden können. Das liegt wiederum an einer Webanwendung, die nicht mehr weiterentwickelt wurde und die einfach nicht mehr unter einen neueren Version läuft.

w3techs serverside Languges php5 Subversionen
Die Zählung von W3techs lässt erkennen, dass viele Websites noch Versionen von PHP einsetzen, die nicht mehr gepflegt werden. Das birgt erhebliche Sicherheitsrisiken.

Selbst wenn ein Content Management System eingesetzt wird, das immer noch gepflegt und weiterentwickelt wird, wurde oft dermaßen viel personalisiert und verändert, dass kein einfacher Umstieg mehr möglich ist.

Die Migration wäre eine Neuentwicklung mit entsprechendem Aufwand. Daher tendieren Webseitenbetreiber dazu, die Migration aufzuschieben. In Puncto Sicherheit kann das fatal werden, denn alte Versionen wie das beliebte PHP 5.3 werden einfach nicht mehr entwickelt. Wenn es Sicherheitslücken gibt, besteht die Gefahr, dass keiner sie mehr schließt.

Man ist also gut beraten, mitzugehen. Man wird auch feststellen, dass sich auch die Content Management Software, die auf PHP aufbaut, weiterentwickelt. Irgendwann läuft die neue Version nicht mehr mit einer alten PHP Version.

 

Kommentar verfassen