PHP2Shell ist ein PHP-Problem
PHP2Shell (CVE-2026-109618 und CVE-2026-109619) ist eine Lücke in PHP, der Sprache, in der WordPress läuft. Der WordPress-Core enthält sie nicht, deshalb kann ein WordPress-Update oder ein Sicherheits-Plugin sie nicht beheben. Es zählt allein die PHP-Version, die Ihr Hoster für Ihre Seite ausführt.
Im WordPress-Dashboard
- Melden Sie sich als Administrator an.
- Öffnen Sie Werkzeuge > Website-Zustand und dort den Reiter Bericht.
- Klappen Sie den Abschnitt Server auf.
- Lesen Sie die Zeilen PHP-Version und PHP SAPI.
Die Version ist die Nummer, die Sie brauchen. Die SAPI zeigt, wie PHP an den Webserver angebunden ist:
| Angezeigte SAPI | Bedeutung |
|---|---|
apache2handler | Apache mod_php. Höchstes Risiko: Die Anfrage erreicht PHP, bevor WordPress-Code läuft. |
fpm-fcgi | PHP-FPM. Betroffen. |
cgi-fcgi | php-cgi oder FastCGI. Betroffen. |
litespeed | LiteSpeed. Betroffen. |
Alle diese SAPIs sind betroffen und brauchen den behobenen Build. Die SAPI sagt nur, wie dringend das Update ist.
Mit WP-CLI
Wenn Sie Shell-Zugang haben:
wp eval 'echo PHP_VERSION, " ", PHP_SAPI, "\n";'
Die Ausgabe sieht etwa so aus: 8.3.36 cli. Achten Sie auf das cli am Ende. WP-CLI läuft mit dem PHP der Kommandozeile, und das kann eine andere Version sein als die, die Ihr Webserver nutzt. Nehmen Sie die Nummer als Hinweis und bestätigen Sie sie im Website-Zustand. Der zeigt das PHP, das die Seite tatsächlich ausgeliefert hat.
Im Hosting-Panel
Panels zeigen die Version pro Domain, meist nur als Zweig wie „8.3“ ohne die letzten Stellen.
- cPanel: Software > MultiPHP Manager. Läuft bei Ihrem Hoster CloudLinux, sehen Sie stattdessen eventuell Software > Select PHP Version (PHP-Version auswählen).
- Plesk: Websites & Domains, Domain auswählen, dann PHP-Einstellungen.
- Andere Panels oder Managed WordPress: Suchen Sie nach „PHP-Version“ oder „PHP-Einstellungen“. Unsere Hoster-Seiten zeigen, was die einzelnen Hoster bisher gesagt haben.
Das Panel verrät den genauen Build nicht. Nutzen Sie es für den Zweig und den Website-Zustand für den Build.
Die Nummer mit dem Fix abgleichen
Das PHP-Projekt hat die Lücken in diesen Releases behoben:
| Zweig | Behoben in | Ihre Seite ist abgesichert, wenn sie zeigt |
|---|---|---|
| 8.5 | 8.5.12 | 8.5.12 oder höher |
| 8.4 | 8.4.27 | 8.4.27 oder höher |
| 8.3 | 8.3.36 | 8.3.36 oder höher |
| 8.2 | 8.2.35 | 8.2.35 oder höher |
| 8.1, 8.0, 7.4 und älter | kein Release | betroffen, außer Ihr Hoster hat den Fix zurückportiert |
Beispiele: 8.4.27 ist abgesichert. 8.4.26 ist es nicht. Auch 8.3.6 ist nicht abgesichert, obwohl die Nummer ähnlich aussieht.
Sie können die vollständige Nummer in die Versionsprüfung einfügen und bekommen eine Einschätzung.
Eine niedrige Nummer heißt nicht immer verwundbar
Manche Hoster und Linux-Distributionen portieren den Fix zurück und behalten die alte Versionsnummer. cPanel etwa gibt an, zurückportierte Fixes für ea-php74, ea-php80 und ea-php81 ausgeliefert zu haben. Liegt Ihre Nummer unter der Tabelle, Ihr Hoster sagt aber, sie sei gepatcht, fragen Sie nach dem Paketnamen und der Changelog-Zeile, die beide CVEs nennt. Kann der Hoster keine zeigen, sagt seine Antwort wenig aus.
Ein gepatchtes Paket wirkt erst, wenn die PHP-Prozesse neu gestartet wurden. Im Zweifel fragen Sie Ihren Hoster, ob die Worker für Ihre Seite seit dem 21. Oktober neu gestartet wurden.
Wie es weitergeht
- Behobener Build: Für die Version ist nichts weiter zu tun. Das PHP-Projekt rät,
session.upload_progress.enabledausgeschaltet zu lassen, wenn Ihre Seite keinen Upload-Fortschritt nutzt. Bei Shared Hosting entscheidet das Ihr Hoster. - Richtiger Zweig, älterer Build: Fragen Sie den Hoster, wann das Update kommt, oder wechseln Sie selbst auf einen neueren Zweig: PHP-Version ändern.
- 8.1 oder älter: Planen Sie einen Wechsel. Wir empfehlen PHP 8.4. Optionen für Code, der noch nicht umziehen kann, finden Sie unter Alte PHP-Versionen.
- Unklar, wer Ihr PHP patcht: Beginnen Sie mit der Einschätzung.
- Sie sehen Anzeichen eines Einbruchs: Lesen Sie WordPress nach PHP2Shell gehackt.
Zuletzt geprüft am 22. Oktober 2026.