Kritische PHP-Sicherheitslücke PHP2Shell: Was jetzt zu tun ist
Am 21. Oktober 2026 hat das PHP-Projekt außerplanmäßige Sicherheitsupdates veröffentlicht. Sie schließen zwei kritische Lücken, die unter dem Namen PHP2Shell bekannt geworden sind. Angreifer können darüber unter bestimmten Bedingungen Schadcode auf dem Webserver ausführen. Betroffen ist PHP selbst – und damit praktisch jede Website und jeder Shop, der mit PHP läuft: WordPress, WooCommerce, Shopware, Joomla, Contao, Magento und jede selbst entwickelte PHP-Anwendung.
Dieser Beitrag erklärt ohne Panik, wer betroffen ist, wie Sie Ihre Version prüfen und was zu tun ist, wenn ein Update nicht sofort möglich ist.
Was ist passiert?
- Zwei Lücken: CVE-2026-109618 (Codeausführung über einen Speicherfehler, wenn das Speicherlimit erreicht wird) und CVE-2026-109619 (Codeausführung über einen fehlerhaften Zustand nach schweren Fehlern). Beide sind mit 9,2 von 10 Punkten als kritisch eingestuft.
- Alle PHP-Versionen: Die Fehler stecken seit PHP 5 im Code. Betroffen sind die üblichen Betriebsarten auf Webservern, also Apache mit mod_php, PHP-FPM und LiteSpeed, ebenso PHP unter Windows.
- Aktive Angriffe: Technische Details sind schon vor der Veröffentlichung durchgesickert. Amazon hat nach eigenen Angaben bereits am 17. Oktober einen ersten Angriffsversuch beobachtet. Cloudflare zählte kurz nach der Bekanntgabe zehntausende, am Folgetag Millionen Versuche. Inzwischen sind erfolgreiche Angriffe dokumentiert.
Ein Angriff ist nicht trivial – er braucht viele tausend gezielte Anfragen. Automatisierte Angriffswerkzeuge erledigen genau das aber im großen Stil. Wer nicht aktualisiert, sollte davon ausgehen, früher oder später getroffen zu werden.
Bin ich betroffen? Die sicheren Versionen
Geschützt sind Sie ab diesen PHP-Versionen:
- PHP 8.5.12 oder neuer
- PHP 8.4.27 oder neuer
- PHP 8.3.36 oder neuer
- PHP 8.2.35 oder neuer
Für Windows hat das PHP-Projekt am 26. Oktober zusätzlich neu gebaute Pakete veröffentlicht (8.5.12-1, 8.4.27-1, 8.3.36-1, 8.2.35-1), die eine weitere Lücke in einer mitgelieferten Komponente schließen. Wer PHP unter Windows betreibt, etwa mit XAMPP oder IIS, sollte diese Pakete verwenden.
So finden Sie Ihre aktuelle PHP-Version:
- Hosting-Panel: Bei den meisten Hostern steht die PHP-Version in den Einstellungen der Domain oder des Webspace. Achten Sie auf die vollständige Versionsnummer, nicht nur auf „8.2“.
- WordPress: Werkzeuge → Website-Zustand → Bericht → Server.
- Joomla: System → Systeminformationen.
- Shopware und Contao: In den Systeminformationen der Administration oder im Hosting-Panel. Im Zweifel fragen Sie Ihre Agentur oder Ihren Hoster.
- Eigene Server:
php -vzeigt nur die Version auf der Kommandozeile. Entscheidend ist die Version, mit der der Webserver arbeitet – die zeigt zum Beispiel eine kurzzeitig angelegtephpinfo()-Seite, die Sie danach sofort wieder löschen.
Shared Hosting oder eigener Server?
Bei klassischem Shared Hosting spielt in der Regel der Hoster die PHP-Updates ein. Viele Anbieter haben das in den Tagen nach dem 21. Oktober erledigt. Prüfen Sie trotzdem die Versionsnummer: Manche Tarife lassen Sie die PHP-Version selbst wählen, und eine fest eingestellte alte Version wird nicht automatisch angehoben.
Bei einem eigenen Server, einem VPS oder einer Anwendung im eigenen Netz sind Sie selbst oder Ihr Dienstleister zuständig. Das betrifft häufig Warenwirtschaft, ERP, Kundenportale oder interne Werkzeuge – also genau die Systeme, die selten jemand im Blick hat, weil sie „einfach laufen“.
Sonderfall: PHP 8.1 oder älter
PHP 8.1, 8.0 und 7.4 erhalten vom PHP-Projekt keine Updates mehr. Für PHP2Shell gibt es zwar minimale Korrekturen im Quellcode, aber keine fertigen neuen Versionen. Wer eine solche Version nicht selbst übersetzt oder von seiner Linux-Distribution gepflegt bekommt, bleibt verwundbar.
Die eigentliche Lösung ist hier ein Wechsel auf eine unterstützte PHP-Version. Und Achtung: Auch PHP 8.2 erhält nur noch bis zum 31. Dezember 2026 Sicherheitsupdates. Wer ohnehin umstellen muss, sollte gleich auf PHP 8.3 oder 8.4 gehen.
Wenn ein Update nicht sofort möglich ist
Manchmal hängt ein Update an alten Erweiterungen oder an einem Dienstleister, der erst reagieren muss. Für diese Zeit gibt es Übergangsmaßnahmen – ausdrücklich nur als Notlösung:
- Upload-Fortschritt abschalten: Das PHP-Projekt empfiehlt in einem Hinweis vom 23. Oktober,
session.upload_progress.enabled=0zu setzen. Die meisten Websites brauchen diese Funktion nicht. - Weitere Einstellungen: Die Sicherheitsmeldung des PHP-Projekts nennt zusätzliche Einstellungen zu Speicherlimit, Eingabegröße und Verschachtelungstiefe. Diese sollten nur mit Bedacht geändert werden, weil sie Uploads und Formulare beeinflussen können.
- Web Application Firewall: Cloudflare hat Regeln gegen bekannte Angriffsmuster ausgerollt, auch für kostenlose Tarife. Eine WAF ersetzt das Update nicht, verschafft aber Zeit.
Wurde ich schon angegriffen? Woran Sie es erkennen
Weil Angriffe schon vor der Veröffentlichung liefen, reicht das Update allein nicht ganz. Ein Blick auf diese Punkte lohnt sich:
- Neue oder veränderte PHP-Dateien mit Änderungsdatum ab Mitte Oktober, besonders in Upload-, Cache- oder Bildverzeichnissen, in denen eigentlich keine PHP-Dateien liegen.
- Unbekannte Administrator-Konten in WordPress, Shopware, Joomla oder Contao.
- Auffällige Einträge im Zugriffsprotokoll: sehr viele Anfragen in kurzer Zeit auf dieselbe Adresse, oft mit großen Formular-Uploads.
- Veränderte Inhalte: fremde Links, Weiterleitungen auf andere Seiten, Spam-Seiten in den Google-Suchergebnissen.
- Unerklärliche Last oder ausgehender Datenverkehr auf dem Server.
Gibt es einen Verdacht, gilt: nicht nur die auffällige Datei löschen. Angreifer hinterlassen oft mehrere Hintertüren. Dazu gehören eine vollständige Prüfung aller Dateien, ein Abgleich mit einer sauberen Sicherung und neue Zugangsdaten für Hosting, FTP/SFTP, Datenbank und Administration.
Kurz-Check: Ihre fünf Schritte
- PHP-Version aller Websites, Shops und Webanwendungen prüfen. Ziel: 8.2.35, 8.3.36, 8.4.27, 8.5.12 oder neuer.
- Windows-Server und XAMPP-Installationen gesondert prüfen. Dort die neu gebauten Pakete vom 26. Oktober verwenden.
- PHP 8.1 oder älter im Einsatz? Dann den Wechsel auf PHP 8.3 oder 8.4 planen – jetzt, nicht im nächsten Jahr.
- Kein sofortiges Update möglich? Übergangsmaßnahmen setzen und einen festen Termin für das Update vereinbaren.
- Auf Spuren eines Angriffs achten. Bei Verdacht vollständig prüfen lassen und Zugangsdaten erneuern.
Wie wir reagiert haben
Wir haben nach Bekanntwerden der Lücken zeitnah alle von uns betreuten Websites, Shops und Webanwendungen kontrolliert. Ein Angriff war bei keinem unserer Kunden festzustellen. Genau dafür ist laufende Betreuung da: Wenn eine solche Lücke bekannt wird, muss jemand wissen, welche Systeme betroffen sind – und handeln, bevor es die Angreifer tun.
Mehr zu unserem Service und der Wartung von Websites und Shops sowie zur Entwicklung individueller PHP-Anwendungen.
Fazit
PHP2Shell ist eine der schwersten PHP-Lücken der letzten Jahre, weil sie PHP selbst betrifft und nicht ein einzelnes Plugin. Die gute Nachricht: Die Updates sind da, und bei den meisten Hostern sind sie bereits eingespielt. Prüfen Sie Ihre Versionsnummer, kümmern Sie sich gezielt um eigene Server und alte PHP-Versionen – und schauen Sie nach, ob vor dem Update jemand da war.
Sie sind nicht sicher, ob Ihre Website, Ihr Shop oder Ihre Anwendung betroffen ist? Sprechen Sie uns an – wir prüfen das kurzfristig für Sie.
