PHP2Shell: Was die kritischen PHP-Lücken für deine WordPress-Seite bedeuten
Zwei kritische Sicherheitslücken in PHP tragen die Kennungen CVE-2026-109618 und CVE-2026-109619. In Berichten heißen sie „PHP2Shell“, angelehnt an die Log4j-Lücke „Log4Shell“. Seit dem 21. Oktober 2026 schließen PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 die Lücken. Das Bundesamt für Sicherheit in der Informationstechnik (BSI) rät, diese Updates unverzüglich einzuspielen.
Was über die PHP-Lücken bekannt ist
Laut der Sicherheitsmeldung des PHP-Projekts können beide Lücken Angreifern erlauben, ohne Anmeldung Schadcode auszuführen. Das PHP-Sicherheitsteam bewertet sie mit 9,2 von 10 Punkten im Bewertungssystem CVSS 4.0, also als kritisch. Die Fehler liegen darin, wie PHP intern mit Speicher und Anfragen umgeht. Bei Apache mit mod_php hat das Projekt einen Angriff nachgewiesen, der greift, bevor überhaupt Code der Webseite läuft.
Nach Angaben des Projekts ist jede PHP-Installation gefährdet, die Webanfragen beantwortet, ob über PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP oder LiteSpeed, also auf allen üblichen Wegen, auf denen ein Webserver PHP ausführt. Am höchsten schätzt das Projekt das Risiko bei mod_php ein.
Das BSI führt die Lücken in einem Sicherheitshinweis mit der Kritikalität 3 von 4. Auf dieser Stufe verlangt es, ohne Aufschub zu handeln. Für einen Angriff muss nach seiner Einschätzung niemand etwas tun oder anklicken.
Angriffe auf die PHP-Lücken laufen bereits
Seit der Veröffentlichung laufen massenhaft Versuche, die Lücken auszunutzen. Cloudflare meldet laut heise Millionen Angriffsversuche, Amazon spricht von breiter Ausnutzung. Erfolgreiche Angriffe waren am Morgen des 22. Oktober noch nicht belegt.
Welche PHP-Versionen geschützt sind
Nach den Warnungen des BSI und von CERT-EU, der IT-Sicherheitsstelle der EU-Institutionen, sind alle bekannten PHP-Versionen betroffen, zurück bis mindestens PHP 5.
Das PHP-Projekt hat Updates für die vier Versionen veröffentlicht, die es noch unterstützt: PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35. PHP 8.2 bekommt Sicherheitsupdates allerdings nur noch bis zum 31. Dezember 2026.
Für PHP 8.1 und älter erscheint kein offizielles Update, das Sicherheitsteam hat für PHP 7.4, 8.0 und 8.1 lediglich die nötigen Änderungen am Quellcode veröffentlicht. Manche Linux-Distributionen und Hoster bauen sie in ihre eigenen Pakete ein, aber nicht alle. Ob deine Seite ein solches Paket nutzt, weiß dein Hoster. Das BSI empfiehlt, auf eine unterstützte Version zu wechseln.
Warum jede WordPress-Seite betroffen ist
WordPress ist in PHP geschrieben. Jeder Seitenaufruf läuft durch PHP. Die Lücken stecken in PHP selbst, nicht in WordPress, einem Theme oder einem Plugin.
Deshalb hilft weder ein WordPress-Update noch ein Sicherheits-Plugin. Ein Plugin ist ein PHP-Programm und kann PHP auf dem Server nicht austauschen.
Wer die PHP-Lücken schließt
Liegt deine Seite bei einem Anbieter mit Managed Hosting oder Shared Hosting, spielt er das PHP-Update auf dem Server ein. Du kannst es dort nicht selbst installieren. Bei FastPress übernehmen wir das, sobald die korrigierten PHP-Pakete vorliegen.
Auf einem eigenen Server oder vServer installierst du das Update über deine Linux-Distribution. Debian, Ubuntu, Red Hat, Fedora und SUSE liefern laut heise bereits aktualisierte Pakete aus. Distributionen spielen das Update oft in die vorhandene PHP-Version ein, ohne die Versionsnummer zu ändern. Die Ausgabe von php -v verrät deshalb allein nicht immer, ob dein Server geschützt ist. Welche Paketversion die Lücken schließt, steht im Sicherheitshinweis der Distribution. Läuft PHP in Docker-Containern, musst du die Images neu bauen.
Gibt es einen Schutz ohne PHP-Update?
Keinen vollständigen. Das PHP-Projekt nennt in seiner Sicherheitsmeldung Einstellungen, die einzelne Angriffswege erschweren, etwa session.upload_progress.enabled = 0 oder kleinere Upload-Grenzen. Die vollständige Liste steht dort. Diese Einstellungen machen eine Installation ausdrücklich nicht sicher.
Aus WordPress heraus lassen sich diese Einstellungen nicht wirksam setzen, auch nicht mit einem Plugin. Laut PHP-Projekt wirken sie nur in der php.ini oder der Konfiguration von PHP-FPM, nicht über ini_set() oder eine .user.ini. Hast du Managed Hosting, ist das Sache des Anbieters. Eine Web Application Firewall fängt Angriffe nur ab, wenn ihr Hersteller passende Erkennungsregeln ausliefert.
Was du jetzt für deine WordPress-Seite tun solltest
- Sieh nach, welche PHP-Version deine Seite nutzt. In WordPress steht sie unter Werkzeuge → Website-Zustand → Bericht → Server, im Plesk-Panel bei der Domain unter PHP.
- Vergleiche die Nummer mit 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Liegt sie unter der Nummer derselben Reihe (etwa 8.3.30 statt 8.3.36), frag bei deinem Hoster nach, ob das Update eingespielt ist. Manche Pakete behalten die alte Versionsnummer.
- Läuft PHP 8.1 oder älter, plane den Wechsel jetzt. Bei PHP 8.2 bleibt dafür Zeit bis zum Jahresende. WordPress empfiehlt PHP 8.3 oder höher. Teste den Wechsel vorher in einer Testumgebung, weil ältere Plugins mit einer neuen PHP-Version nicht immer zurechtkommen.
- Halte eine aktuelle Sicherung bereit, bevor jemand an der PHP-Version etwas ändert.
- Achte auf Auffälligkeiten. Typische Anzeichen einer übernommenen WordPress-Seite sind unbekannte Administratorkonten, Weiterleitungen auf fremde Seiten und Unterseiten, die du nicht angelegt hast. Mehr dazu im Ratgeber zur WordPress-Sicherheit.
Siehe auch
Häufige Fragen
Was ist PHP2Shell?
PHP2Shell ist die gängige Bezeichnung für zwei Sicherheitslücken in PHP mit den Kennungen CVE-2026-109618 und CVE-2026-109619. Das PHP-Sicherheitsteam bewertet beide mit 9,2 von 10 Punkten im Bewertungssystem CVSS 4.0, also als kritisch. Über sie können Angreifer ohne Anmeldung aus der Ferne Schadcode auf Webservern ausführen. Das PHP-Projekt hat sie in PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 geschlossen.
Ist meine WordPress-Seite von PHP2Shell betroffen?
Ja, solange auf dem Server keine korrigierte PHP-Version läuft. WordPress ist in PHP geschrieben, und laut dem Bundesamt für Sicherheit in der Informationstechnik (BSI) sind alle bekannten PHP-Versionen verwundbar, zurück bis mindestens PHP 5. Den Schutz bringen PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 oder ein Paket, in das der Hoster oder die Linux-Distribution das Update eingebaut hat.
Kann ein WordPress-Plugin die PHP2Shell-Lücken schließen?
Nein. Die Lücken stecken in PHP selbst. Ein Sicherheits-Plugin ist ein PHP-Programm und kann PHP auf dem Server nicht austauschen. Abhilfe bringt nur das PHP-Update auf dem Server.
Gibt es einen Workaround gegen PHP2Shell?
Keinen vollständigen. Das PHP-Projekt nennt Einstellungen, die einzelne Angriffswege erschweren, etwa session.upload_progress.enabled = 0 oder kleinere Upload-Grenzen. Diese Einstellungen machen eine Installation ausdrücklich nicht sicher. Sie wirken nur in der Konfiguration des Servers, aus WordPress heraus lassen sie sich nicht wirksam setzen. Der einzige sichere Weg ist das PHP-Update.
Was gilt bei PHP2Shell für PHP 8.1 und ältere Versionen?
Für PHP 8.1 und älter veröffentlicht das PHP-Projekt keine Updates mehr. Sein Sicherheitsteam hat für PHP 7.4, 8.0 und 8.1 lediglich die nötigen Änderungen am Quellcode bereitgestellt, die Hoster und Distributionen übernehmen können. Ob das bei deiner Seite passiert ist, weiß dein Hoster. Dauerhaft hilft nur der Wechsel auf eine unterstützte Version, WordPress empfiehlt PHP 8.3 oder höher.