blog
PHP2Shell: Kritische PHP-Sicherheitslücken
PHP2Shell: Kritische PHP-Lücken – jetzt aktualisieren Am 21. Oktober 2026 hat das PHP-Projekt zwei kritische Sicherheitslücken geschlossen: CVE-2026-109
PHP2Shell: Kritische PHP-Sicherheitslücken – was Website-Betreiber jetzt wissen müssen
Am 21. Oktober 2026 hat das PHP-Projekt außerplanmäßig Sicherheitsupdates veröffentlicht. Sie schließen zwei kritische Lücken im PHP-Kern, die unter dem Namen „PHP2Shell“ bekannt geworden sind. Angreifer können darüber ohne Anmeldung eigenen Programmcode auf einem Webserver ausführen.
Der Fehler steckt nicht in einem bestimmten CMS oder Plugin, sondern in PHP selbst. Damit ist potenziell jede Website betroffen, die mit PHP läuft. Dieser Beitrag erklärt, was passiert ist, wer betroffen ist und was Sie jetzt tun sollten.
Was ist passiert?
Informationen zu den Lücken sind vor dem geplanten Veröffentlichungstermin durchgesickert. Das PHP-Team hat die Updates daraufhin vorgezogen.
| Datum | Ereignis |
|---|---|
| 23.10.2026 | PHP meldet eine weitere Lücke, CVE-2026-115560. Dafür gibt es noch kein Update (siehe Nachtrag unten). |
| 21.10.2026 | PHP veröffentlicht die Versionen 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Sie schließen CVE-2026-109618 und CVE-2026-109619. |
| 20.10.2026 | Die CVE-Nummern kursieren vorzeitig in Foren und sozialen Medien, unter anderem auf Hacker News. Technische Details waren laut PHP Foundation nicht dabei. PHP kündigt zwei kritische Lücken mit je 9,2 von 10 Punkten (CVSS v4.0) an und zieht das Update um einen Tag vor. |
| 17.10.2026 | Laut Amazon gab es auf dessen Honeypot-Systemen bereits einen ersten Ausnutzungsversuch, vier Tage vor der Veröffentlichung. |
Die beiden Lücken verständlich erklärt
Beide Lücken sind Speicherfehler in PHP selbst. Ausgelöst werden sie durch präparierte HTTP-Anfragen.
CVE-2026-109618: Fehler bei Speichermangel
Geht PHP während einer Anfrage der Arbeitsspeicher aus, bricht es die Verarbeitung ab. Dabei können interne Daten halb fertig zurückbleiben, die PHP beim anschließenden Aufräumen fälschlich als gültig behandelt. Ein Angreifer kann diesen Zustand gezielt herbeiführen, etwa mit speziellen Multipart-Anfragen, wie sie bei Datei-Uploads verwendet werden.
PHP hat die vollständige Codeausführung über HTTP bei Apache mit mod_php nachgewiesen. Für PHP-FPM hält PHP einen Angriff nach Analyse des Quellcodes ebenfalls für möglich.
CVE-2026-109619: Veraltete Daten zwischen Anfragen
Ein PHP-Prozess bearbeitet meist viele Anfragen nacheinander. Bestimmte interne Daten einer Anfrage blieben dabei erhalten, obwohl ihr Speicher schon freigegeben war („Use-after-free“). Eine spätere Anfrage im selben Prozess konnte darauf zugreifen.
PHP hat die Codeausführung bei mod_php und PHP-FPM bestätigt. Außerdem kann die Lücke Speicherinhalte preisgeben. Laut den Entdeckern können darin Passwörter, Zugangstoken oder API-Schlüssel aus anderen Anfragen stehen.
Warum das so ernst ist
Für einen Angriff ist keine Anmeldung nötig. Bei mod_php wurde ein Angriff gezeigt, der greift, bevor der Code der Website überhaupt läuft. Auch eine sauber programmierte Website ist daher angreifbar, wenn die PHP-Version darunter verwundbar ist.
Wer ist betroffen?
Laut PHP ist jede Installation gefährdet, die Webanfragen verarbeitet. Das gilt unabhängig von der Art, wie PHP eingebunden ist:
- Apache mit mod_php: höchstes Risiko laut PHP
- PHP-FPM (mit Nginx oder Apache): ebenfalls betroffen
- php-cgi, FrankenPHP, LiteSpeed: von PHP ausdrücklich genannt
Damit sind auch Websites mit WordPress, Joomla, Drupal, Ilch oder einem PHP-Onlineshop betroffen. Ein Update des CMS, der Plugins oder Themes behebt die Lücken nicht. Entscheidend ist allein die PHP-Version auf dem Server.
Wer Shared Hosting nutzt, ist auf seinen Hoster angewiesen. Ob Ihr Hoster bereits aktualisiert hat, zeigt meist der Kundenbereich. Sonst hilft eine Nachfrage beim Support.
Wird die Lücke schon ausgenutzt?
Die Angaben gehen auseinander. Mehrere Sicherheitsfirmen berichten seit dem 21. Oktober von Angriffsversuchen. Die US-Behörde CISA hatte zum Zeitpunkt ihrer Warnung keine Ausnutzung beobachtet.
Welche PHP-Versionen sind abgesichert?
Abgesichert sind PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 sowie neuere Versionen. Ein Wechsel auf eine neue Versionsreihe ist dafür nicht nötig.
| Versionsreihe | Verwundbar | Abgesichert ab |
|---|---|---|
| PHP 8.5 | bis 8.5.11 | 8.5.12 |
| PHP 8.4 | bis 8.4.26 | 8.4.27 |
| PHP 8.3 | bis 8.3.35 | 8.3.36 |
| PHP 8.2 | bis 8.2.34 | 8.2.35 |
| PHP 8.1 und älter | laut Entdeckern bis zurück zu PHP 5.4 | kein offizielles Update |
Für PHP 8.1 und älter veröffentlicht das PHP-Projekt keine Updates mehr. Einige Linux-Distributionen und Anbieter mit Langzeit-Support liefern die Korrekturen nach. Deren Pakete tragen oft eine andere Versionsnummer, obwohl sie abgesichert sind.
Auch PHP 8.2 erreicht am 31. Dezember 2026 sein Supportende. Ein Wechsel auf PHP 8.3 oder neuer lohnt sich daher ohnehin.
Nachtrag: Neue Lücke CVE-2026-115560, noch ohne Update
Am 23. Oktober hat PHP eine weitere Lücke gemeldet, die die Updates vom 21. Oktober nicht schließen. PHP hält eine Ausnutzung in der Praxis für unwahrscheinlich. Die Korrektur soll mit dem nächsten regulären Release kommen.
Angreifbar ist eine Anwendung nur, wenn alle drei Bedingungen zutreffen:
session.serialize_handlersteht aufphp_binaryoderphp_serialize.- Die Anwendung stellt den Wert zur Laufzeit per
ini_set()vorsession_start()aufphpzurück. session.upload_progress.enabledist aktiv. Das ist die Standardeinstellung von PHP.
Die empfohlene Schutzmaßnahme ist eine Zeile in der PHP-Konfiguration: session.upload_progress.enabled = 0. PHP hatte sie bereits für CVE-2026-109619 empfohlen und rät, sie beizubehalten. Danach funktioniert nur die Upload-Fortschrittsanzeige über diese PHP-Funktion nicht mehr, normale Datei-Uploads schon.
Betroffene Versionen und eine Schweregrad-Bewertung hat PHP für diese Lücke noch nicht veröffentlicht (Stand: 26.10.2026).
Was Sie jetzt tun sollten
Das Update auf eine abgesicherte PHP-Version ist die einzige vollständige Lösung. Diese Schritte helfen dabei:
- PHP-Version prüfen. Die Version steht meist im Kundenbereich Ihres Hosters. In WordPress finden Sie sie unter Werkzeuge → Website-Zustand → Bericht → Server.
- PHP aktualisieren. Wechseln Sie auf die abgesicherte Version Ihrer Versionsreihe aus der Tabelle oben. Auf eigenen Linux-Servern kommt das Update in der Regel über die Paketquellen der Distribution.
- PHP-Dienste neu starten. Apache, PHP-FPM und andere PHP-Prozesse müssen neu starten. Sonst läuft im Speicher weiter die alte Version.
- Tatsächlich genutzte Version kontrollieren. Der Befehl
php -vzeigt nur die Version der Kommandozeile. Verwaltungsoberflächen wie Plesk können mehrere PHP-Versionen parallel bereitstellen, und jede genutzte muss aktuell sein. - Upload-Fortschritt abschalten. Setzen Sie
session.upload_progress.enabled = 0in der php.ini oder perphp_admin_valueim PHP-FPM-Pool.ini_set()oder eine.user.inireichen laut PHP nicht aus. Danach erneut neu starten. - Auf Spuren eines Angriffs prüfen. Achten Sie ab dem 17. Oktober auf auffällige Einträge in den Server-Logs, unbekannte PHP-Dateien und neue Admin-Konten. Bei einem Verdacht reicht das Update allein nicht: Ändern Sie dann auch Passwörter und Zugangsschlüssel.
- Kein Update möglich? Behörden wie das britische NCSC und die US-Behörde CISA raten dann, das System vorübergehend vom Netz zu nehmen.
Unterstützung durch Nubbys
Die Systeme von Nubbys sind bereits auf dem aktuellen Stand. Sie sind unsicher, ob Ihre Website betroffen ist? Nubbys prüft Ihre PHP-Version und -Konfiguration und übernimmt bei Bedarf das Update.
Kontakt: webmaster@nubbys.de oder 0152 - 55451978.
Quellen
- PHP: Sicherheitshinweis vom 21.10.2026
- PHP: Nachrichtenarchiv 2026, inkl. Hinweis zu CVE-2026-115560
- PHP2Shell: Seite der Entdecker (Wiz Research, OpenAI Codex Security, Calif)
- CISA: Critical Vulnerabilities in PHP Require Immediate Patching
- Rescana: Two Critical PHP Vulnerabilities Fixed
- Windows FAQ: PHP2Shell – PHP-Sicherheitsupdates jetzt verfügbar
- Windows FAQ: Neue PHP-Sicherheitslücke CVE-2026-115560 ohne Patch
Fragen zu deinem Projekt?
Erzähl mir davon – das Erstgespräch ist unverbindlich und kostenlos.
./projekt-anfragen