PHP2Shell: Kritische PHP-Lücke und was Sie jetzt tun können

PHP von Rico Rothenburger 13 Minuten Lesezeit

PHP2Shell: Zwei kritische Sicherheitslücken in PHP
Inhalt dieses Beitrags 8 Abschnitte · 13 Min.

Stand: 22. Oktober 2026, 10:10 Uhr. Zuletzt ergänzt: Wir haben auf allen unseren Servern auch die Korrektur für die Plesk-Oberfläche eingespielt. Damit sind alle von Plesk bereitgestellten Korrekturen bei uns aktiv. Wir ergänzen diesen Beitrag, sobald es Neues gibt. Alle Aktualisierungen

Das PHP-Projekt hat heute, am 21. Oktober 2026, außerplanmäßig die Versionen 8.2.35, 8.3.36, 8.4.27 und 8.5.12 veröffentlicht. Sie schließen zwei kritische Lücken, über die Angreifer ohne Anmeldung Code auf einem Webserver ausführen können. Bekannt geworden sind die beiden Lücken unter dem Namen „PHP2Shell“. Weil PHP auf einem großen Teil aller Webserver läuft, betrifft das Thema fast jeden Betreiber eines Onlineshops oder einer WordPress-Website, unabhängig davon, bei welchem Hoster die Seite liegt.

Wir fassen zusammen, was offiziell bestätigt ist, wie Behörden und Sicherheitsfirmen die Lage einschätzen und was Sie jetzt tun können.

Das PHP-Projekt bestätigt zwei kritische Lücken

In seiner Sicherheitsmeldung vom 21. Oktober bestätigt das PHP-Projekt zwei Lücken, die beide nach CVSS 4.0 mit 9,2 von 10 Punkten bewertet sind:

  • CVE-2026-109618: Gerät PHP bei der Verarbeitung einer Anfrage an seine Speichergrenze, können interne Daten in einem halb fertigen Zustand zurückbleiben. Beim Aufräumen am Ende der Anfrage behandelt PHP diese Daten dann als gültig.
  • CVE-2026-109619: Interne Zustandsdaten einer Anfrage können erhalten bleiben, obwohl der zugehörige Speicher bereits freigegeben ist. Eine spätere Anfrage an denselben PHP-Prozess kann diese veralteten Daten verwenden.

Betroffen sind laut PHP alle Installationen, die Webanfragen beantworten, also PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed. Das höchste Risiko sieht das PHP-Projekt bei mod_php, weil dort ein Angriff nachgewiesen wurde, der greift, bevor überhaupt Code der Anwendung läuft. Nach Angaben des PHP-Projekts gibt es keine vollständige Übergangslösung. Nur das Update schützt.

Die Lücken wurden bekannt, bevor das Update bereitstand

Vier Sicherheitsforscher hatten die beiden Fehler vertraulich an das PHP-Projekt gemeldet. Bei so schweren Lücken ist es üblich, die Einzelheiten erst zu veröffentlichen, wenn die Korrekturen bereitstehen, damit Angreifer keinen Vorsprung erhalten. Am Abend des 20. Oktober gelangten jedoch erste Angaben zu den Lücken an die Öffentlichkeit, darunter der Schweregrad und die offiziellen Kennnummern. Die Sicherheitsfirma watchTowr bestätigte kurz darauf, dass diese Angaben echt waren. Das PHP-Projekt kündigte deshalb noch am selben Abend um 21:33 Uhr die Updates für den nächsten Tag an. Bereits am Vormittag des 21. Oktober meldete Cloudflare erste Angriffe, und am Nachmittag erschienen die korrigierten PHP-Versionen.

Den Namen „PHP2Shell“ haben Sicherheitsforscher geprägt, er stammt nicht vom PHP-Projekt. Nach Einschätzung von CERT-EU und heise steckt der Fehler vermutlich schon seit PHP 5 im Programm, also seit rund 20 Jahren.

Ein Update von Shopware oder WordPress reicht nicht aus

Die Lücken stecken im PHP-Interpreter selbst, also in der Software, die den Code Ihres Shops oder Ihrer Website ausführt. Shopware, WordPress und deren Erweiterungen sind nicht die Ursache. Ein Update der Shopsoftware oder eines Plugins schließt die Lücken deshalb nicht, und auch die automatischen Updates von WordPress spielen den Fix nicht ein. Behoben ist das Problem erst, wenn auf dem Server eine korrigierte PHP-Version läuft. Bei gehosteten Websites ist dafür in der Regel der Hoster zuständig, bei eigenen Servern der Betreiber.

Diese PHP-Versionen erhalten ein Update

Die Lücken sind in diesen Versionen behoben:

  • PHP 8.5.12
  • PHP 8.4.27
  • PHP 8.3.36
  • PHP 8.2.35

Alle älteren Stände dieser vier Versionsreihen sind betroffen. Linux-Distributionen und Anbieter von Langzeitsupport haben die Korrekturen nach Angaben des PHP-Projekts vorab erhalten, sodass dort aktualisierte Pakete zeitnah zu erwarten sind.

PHP 8.1 und ältere Versionen erhalten vom PHP-Projekt keine regulären Updates mehr. Wegen der Schwere der Lücken hat das Sicherheitsteam jedoch Korrekturen für PHP 7.4, 8.0 und 8.1 als Quellcode bereitgestellt. Das PHP-Projekt bezeichnet sie selbst als minimale Rückportierungen, die deutlich kleiner ausfallen als die Korrektur für die gepflegten Versionen. Diese helfen vor allem Anbietern, die ihre PHP-Pakete selbst bauen. Plesk liefert seit dem 21. Oktober korrigierte Pakete für PHP 8.2 bis 8.5 unter Linux aus. Am Abend folgten neu gebaute Pakete für PHP 7.4, 8.0 und 8.1, die laut Plesk ebenfalls beide Lücken schließen. Sie tragen dieselbe Versionsnummer wie zuvor und sind am Build-Datum 21. Oktober 2026 zu erkennen. Für Plesk unter Windows stehen die Pakete für PHP 8.2 bis 8.5 inzwischen ebenfalls bereit. Für die PHP-Version, mit der die Plesk-Oberfläche selbst läuft, hat Plesk in der Nacht zum 22. Oktober eigene Korrekturen veröffentlicht (Plesk Obsidian 18.0.80 Update 11 und 18.0.81 Update 4). Für PHP 8.2 gilt außerdem: Diese Version erhält nur noch bis zum 31. Dezember 2026 Sicherheitsupdates.

PHP steckt nicht nur in Webhosting-Paketen. Auch Docker-Images und Geräte mit einer Verwaltungsoberfläche im Browser, etwa NAS-Systeme oder Firewalls, bringen oft ein eigenes PHP mit. Das britische NCSC weist ausdrücklich darauf hin, auch die Updates solcher Geräte und Dienste im Blick zu behalten. Dort kommt der Fix nicht vom Hoster, sondern vom jeweiligen Hersteller.

Behörden und Sicherheitsfirmen raten zum sofortigen Update

Mehrere staatliche Stellen haben vor den Lücken gewarnt, und ihre Empfehlungen stimmen weitgehend überein:

  • BSI: Das Bundesamt für Sicherheit in der Informationstechnik hat eine Cybersicherheitswarnung mit der Kritikalität „sehr hoch“ veröffentlicht.
  • CERT-EU: Das IT-Notfallteam der EU-Institutionen empfiehlt in seiner Sicherheitswarnung 2026-018, sofort zu aktualisieren und Anwendungen, die sich nicht aktualisieren lassen, bis zum Fix vom öffentlichen Netz zu trennen.
  • NCSC: Das britische National Cyber Security Centre rät in seinem Hinweis, Systeme sofort zu aktualisieren und sie offline zu nehmen, wenn das nicht möglich ist.

Wie ernst die Lage genommen wird, zeigt ein Bericht von Reuters: Behörden in den Niederlanden und in Finnland haben Websites vorsorglich abgeschaltet, das niederländische Zentrum für Cybersicherheit auch seine eigene. Der Technikchef von Cloudflare berichtete am Vormittag von ersten Angriffen. Inzwischen meldet auch die Sicherheitsfirma watchTowr, dass sie Angriffe in ihren Ködersystemen (Honeypots) beobachtet hat. Die Lücken werden damit bereits aktiv ausgenutzt.

Einen Eindruck von der Größenordnung gibt eine Auswertung der Suchmaschine Shodan vom 20. Oktober. Danach melden rund 884.000 aus dem Internet erreichbare Server eine PHP-Version 8.1 oder älter. Das sind etwa 59 Prozent der rund 1,5 Millionen Server, deren PHP-Version überhaupt sichtbar ist. Die Zahl beruht auf den Versionsangaben, die Server von sich aus melden, und sagt deshalb nichts darüber, ob ein einzelnes System tatsächlich angreifbar ist.

So schützen Sie Ihre Website

Prüfen Sie zuerst Ihre PHP-Version

Prüfen Sie zuerst, welche PHP-Version Ihre Website tatsächlich nutzt. In Plesk finden Sie die Angabe unter Websites & Domains bei der jeweiligen Domain im Bereich PHP. Bei WordPress zeigt außerdem der Bericht unter Werkzeuge › Website-Zustand im Abschnitt Server die verwendete PHP-Version an. Wenn Sie keinen Zugang zur Serververwaltung haben, nennt Ihnen Ihr Hoster die Version.

Mit PHP 8.2 bis 8.5 genügt das Update

Fragen Sie Ihren Hoster, wann er die korrigierten Pakete einspielt, oder installieren Sie das Update auf einem eigenen Server, sobald Ihre Distribution oder Ihre Serververwaltung es bereitstellt. Prüfen Sie anschließend, ob Ihre Website mit einer der oben genannten Versionen oder einer neueren läuft. Der Befehl php -v auf der Kommandozeile reicht dafür nicht aus, weil Kommandozeile und Webserver häufig unterschiedliche PHP-Installationen verwenden. Starten Sie außerdem die PHP-Prozesse neu, damit keine alten Prozesse weiterlaufen.

Mit PHP 8.1 oder älter lohnt sich der Wechsel

Für PHP 7.4, 8.0 und 8.1 hat das PHP-Projekt minimale Korrekturen als Quellcode bereitgestellt, und Plesk liefert seit dem Abend des 21. Oktober korrigierte Pakete für diese drei Versionen aus. Für PHP 7.3 und ältere Versionen stellt das PHP-Projekt keine Korrektur bereit. Plesk empfiehlt für PHP 5.6, 7.2 und 7.3 den kostenpflichtigen Extended Lifecycle Support von TuxCare. Ob und wann Sie ein Update erhalten, hängt damit von Ihrem Hoster oder Ihrer Distribution ab. Dauerhaft sicher sind Sie nur mit einer gepflegten Version. Planen Sie deshalb den Wechsel auf PHP 8.3 oder neuer. Testen Sie vorher, ob Shop, Plugins und Theme mit der neuen Version funktionieren, denn gerade ältere Erweiterungen sind häufig nicht kompatibel. Für Shopware 6 eignet sich dafür eine Testumgebung mit enerStage, in der Sie eine Kopie Ihres Shops prüfen, ohne den Liveshop zu verändern.

Wenn Sie nicht sofort aktualisieren können

Für ältere PHP-Versionen bieten einzelne Anbieter einen erweiterten Support mit eigenen Sicherheitsupdates an, zum Beispiel TuxCare mit seinem Extended Lifecycle Support, der auch über Plesk erhältlich ist. Der zweite Weg ist der, den CERT-EU und das NCSC empfehlen: Sie schränken den Zugriff auf die Anwendung ein oder nehmen sie vorübergehend vom Netz, bis sie geschützt ist.

Ob Sie Ihre Website vorübergehend vom Netz nehmen, müssen Sie selbst entscheiden. Das hängt unter anderem davon ab, welche Daten Ihre Website verarbeitet, ob ein Update für Ihre PHP-Version zeitnah verfügbar ist und wie schwer ein Ausfall für Ihr Geschäft wiegt. Diese Abwägung können wir nicht für Sie treffen. Wir geben hier deshalb die Empfehlungen der zuständigen Stellen wieder, insbesondere die von CERT-EU.

Wenn Sie sich dafür entscheiden, können Sie eine Website in Plesk selbst vorübergehend sperren:

  1. Öffnen Sie in Plesk den Bereich Websites & Domains.
  2. Wählen Sie bei der betroffenen Domain in der Spalte Status den Eintrag Gesperrt.
  3. Wiederholen Sie das für jede Subdomain, auf der Ihre Anwendung läuft, denn Plesk führt Subdomains als eigene Einträge.

Besucher erhalten dann die Meldung „503 Service Unavailable“. Die E-Mail-Postfächer der Domain funktionieren weiter, und laut Plesk wirkt sich die Sperre nicht auf die Platzierung in Suchmaschinen aus. Wählen Sie dagegen nicht den Status Deaktiviert, denn dabei nimmt Plesk die Website ganz vom Webserver, und auch die E-Mail-Dienste der Domain sind dann nicht mehr erreichbar. Sobald Ihre Website geschützt ist, stellen Sie den Status wieder auf Aktiv.

Das PHP-Projekt nennt in seiner Sicherheitsmeldung außerdem Einstellungen, die einzelne Angriffswege erschweren. Dazu gehört das Abschalten der Upload-Fortschrittsanzeige für Sessions über die Einstellung session.upload_progress.enabled. Nach Angaben des PHP-Projekts blockiert das die bestätigten Angriffswege über Sessions, aber nicht alle Varianten. Keine dieser Einstellungen macht eine Installation sicher.

Vorsicht ist bei pauschalen Sperrregeln für den Webserver geboten, die derzeit im Netz kursieren. Wer etwa alle Formularübertragungen mit Dateianhängen blockiert, kann damit Funktionen seines Shops lahmlegen. In Shopware 6 betrifft das zum Beispiel die Schaltfläche „In den Warenkorb“. Setzen Sie solche Regeln deshalb nur ein, wenn Sie wissen, wie Ihre Anwendung Daten an den Server sendet.

Eine vorgeschaltete Firewall schützt zusätzlich

Eine weitere Möglichkeit, vorzusorgen, ist eine Web Application Firewall, die Anfragen prüft, bevor sie Ihren Server erreichen. Cloudflare hat am 21. Oktober Notfallregeln in seinen verwalteten Regelsätzen veröffentlicht, laut Änderungsprotokoll auch im kostenlosen Regelsatz. Die Regeln heißen „Generic Rules – Anomalous Execution“ und blockieren auffällige Anfragen. Der Technikchef von Cloudflare bezeichnet sie ausdrücklich als Notbehelf und rät, das PHP-Update einzuspielen, sobald es verfügbar ist.

Eine solche Firewall schützt nur Anfragen, die tatsächlich über sie laufen. Ist Ihr Server zusätzlich direkt über seine IP-Adresse erreichbar, umgehen Angreifer den Schutz. Sie ergänzt das Update deshalb, ersetzt es aber nicht.

So erkennen Sie Spuren eines Angriffs

Ein Update schließt die Lücke, entfernt aber nichts, was ein Angreifer vorher auf dem Server abgelegt hat. Prüfen Sie deshalb nach dem Update, ob unbekannte PHP-Dateien hinzugekommen sind, ob vorhandene PHP-Dateien in den letzten Tagen verändert wurden und ob in Ihrem Shop oder Ihrem WordPress neue Administratorkonten entstanden sind. Besonders auffällig sind sogenannte Webshells, also Dateien, über die sich der Server von außen steuern lässt. Laut heise benötigen die bekannten Angriffe mehrere Tausend Anfragen, bis sie gelingen. Eine plötzliche Häufung von Anfragen an Ihre Website in den Zugriffsprotokollen kann deshalb ein Hinweis auf einen Angriffsversuch sein. Finden Sie Hinweise auf einen Angriff, stellen Sie die Website aus einer Sicherung von vor dem Angriff wieder her und ändern Sie alle Zugangsdaten.

Das haben wir bei enerSpace bereits erledigt

Auf allen Servern, die wir betreiben, haben wir die korrigierten Pakete für PHP 8.2, 8.3, 8.4 und 8.5 am 21. Oktober gegen 17:50 Uhr eingespielt. Webseiten mit diesen PHP-Versionen laufen damit auf einem Stand, der beide Lücken schließt. In der Nacht zum 22. Oktober haben wir gegen 4 Uhr außerdem die Korrektur für die Plesk-Oberfläche eingespielt, die eine eigene PHP-Version nutzt.

Webseiten, die noch PHP 8.1 oder älter nutzen, schotten wir zusätzlich ab. Jede dieser Webseiten läuft dann in einem eigenen PHP-Dienst und sieht nur ihre eigenen Dateien. Dadurch bleibt ein möglicher Schaden auf die betroffene Webseite begrenzt. Die Lücke selbst schließt diese Maßnahme nicht. Für PHP 7.4, 8.0 und 8.1 haben wir am Abend des 21. Oktober ebenfalls die korrigierten Pakete eingespielt, die Plesk bereitgestellt hat. Weil das PHP-Projekt diese Versionen nicht mehr pflegt, empfehlen wir dennoch den Wechsel auf PHP 8.3 oder neuer, damit Ihre Website auch künftig alle Sicherheitsupdates erhält.

Für die Suche nach abgelegtem Schadcode stellen wir unseren Kunden ImunifyAV bereit, einen Scanner für Schadsoftware auf Webservern. In Plesk können Sie für Ihre Webseiten jederzeit selbst nachsehen, ob ImunifyAV verdächtige Dateien gefunden hat. Nachdem die Updates eingespielt sind, starten wir zusätzlich einen Suchlauf. Ein solcher Scanner erkennt bekannte Muster von Schadcode, jedoch nicht jede Veränderung. Prüfen Sie deshalb auch selbst, ob in Ihrem Shop oder Ihrem WordPress neue Administratorkonten entstanden sind.

Wenn Sie die PHP-Version Ihrer Webseite in Plesk selbst wechseln, wählen Sie als PHP-Handler Dedizierte FPM-Anwendung, bereitgestellt von Apache. Ihre Webseite erhält dadurch einen eigenen PHP-Dienst, und die Regeln in Ihrer .htaccess-Datei greifen weiterhin.

Ist ein Wechsel auf eine gepflegte PHP-Version kurzfristig nicht möglich, bieten wir ab dem Produkt vServer einen erweiterten Support für ältere PHP-Versionen gegen Aufpreis an. Bei Fragen zu Ihrer Umgebung oder zur Umstellung erreichen Sie uns über unseren Support.

Alle Aktualisierungen im Überblick

Neue Informationen ergänzen wir hier. Die neueste Meldung steht oben.

22.10.2026, 10:10 Uhr: Wir haben die Korrektur für die Plesk-Oberfläche (18.0.80 Update 11 bzw. 18.0.81 Update 4) in der Nacht gegen 4 Uhr auf allen Servern eingespielt, die wir betreiben. Damit sind alle von Plesk bereitgestellten Korrekturen bei uns aktiv.

22.10.2026, 10:00 Uhr: Plesk hat bestätigt, dass die am 21. Oktober gebauten Pakete für PHP 7.4, 8.0 und 8.1 beide Lücken schließen. Für Plesk unter Windows sind die Pakete für PHP 8.2 bis 8.5 erschienen. In der Nacht hat Plesk außerdem die Korrektur für die Plesk-Oberfläche veröffentlicht (18.0.80 Update 11 und 18.0.81 Update 4). Damit sind von Plesk alle angekündigten Korrekturen für Linux erschienen.

21.10.2026, 20:50 Uhr: Wir haben auf allen Servern, die wir betreiben, auch für PHP 7.4, 8.0 und 8.1 die Aktualisierungen eingespielt, die Plesk am Abend bereitgestellt hat. In seinem Sicherheitshinweis führt Plesk diese Versionen noch als „in Entwicklung“. Das PHP-Projekt bezeichnet seine Korrekturen für diese Versionen als minimal, deshalb bleibt der Wechsel auf PHP 8.3 oder neuer die sichere Lösung.

21.10.2026, 18:13 Uhr: Wir haben die korrigierten Pakete für PHP 8.2, 8.3, 8.4 und 8.5 gegen 17:50 Uhr auf allen Servern eingespielt, die wir betreiben. Die Pakete für PHP 7.4, 8.0 und 8.1 folgen, sobald Plesk sie bereitstellt.

21.10.2026, 18:05 Uhr: Plesk liefert seit dem 21. Oktober korrigierte Pakete für PHP 8.2 bis 8.5 unter Linux aus, die Pakete für 7.4, 8.0 und 8.1 sind noch in Entwicklung. Wir spielen auch diese ein, sobald sie verfügbar sind. Die Sicherheitsfirma watchTowr hat inzwischen Angriffe in ihren Ködersystemen beobachtet.

21.10.2026, 16:03 Uhr: Ergänzt, dass auch Docker-Images und Geräte mit eigenem PHP Updates brauchen, und dass die bekannten Angriffe laut heise mehrere Tausend Anfragen benötigen.

21.10.2026, 16:00 Uhr: Plesk hat angekündigt, neben PHP 8.2 bis 8.5 auch die Pakete für PHP 7.4, 8.0 und 8.1 neu zu bauen. Einen Termin dafür gibt es noch nicht. Für PHP 7.3 und älter stellt das PHP-Projekt keine Korrektur bereit. Außerdem beschreibt der Beitrag jetzt, wie Sie eine Website in Plesk vorübergehend sperren.

21.10.2026, 15:50 Uhr: Das PHP-Projekt hat gegen 15:35 Uhr die Versionen 8.2.35, 8.3.36, 8.4.27 und 8.5.12 und seine Sicherheitsmeldung veröffentlicht. Der Beitrag nennt jetzt die bestätigten Versionen und Einzelheiten, die Einschätzungen von BSI, CERT-EU und NCSC sowie die Notfallregeln von Cloudflare. Plesk hat angekündigt, seine PHP-Pakete neu zu bauen.

21.10.2026, 15:15 Uhr: Erste Fassung dieses Beitrags.

Über den Autor

Rico Rothenburger

Geschäftsführer der enerSpace GmbH

Rico Rothenburger leitet die enerSpace GmbH und betreut mit seinem Team Shopware-Shops auf eigenen Servern in Deutschland. Weil enerSpace seit 2016 Shopware Hosting-Partner ist, kennt er die Fragen von Shopbetreibern aus dem Alltag, vom sicheren Update bis zum Umzug auf Shopware 6. In diesem Blog teilt er, was sich in der Praxis bewährt hat, damit Sie Ihren Shop mit weniger Aufwand zuverlässig betreiben können.