Kritisch · CVSS 9.2Fix veröffentlicht 2026-10-21 14:00 UTCErste Angriffe gemeldet

PHP2Shell ist eine Pre-Auth-RCE in PHP selbst. PHP aktualisieren, dann neu starten.

Zwei Speichersicherheits-Bugs in der PHP-Engine (CVE-2026-109618, CVE-2026-109619) erlauben einem Angreifer ohne Anmeldung, Code auszuführen oder Serverspeicher auszulesen — Passwörter, API-Schlüssel, Session-Token — auf fast jeder PHP-Version seit 5.4, unabhängig von der Anwendung darüber.

Nicht technisch? Lesen Sie PHP2Shell einfach erklärt — was es für Ihre Website oder Ihre SaaS-Tools bedeutet.

Zuletzt geprüft 2026-10-22 · unabhängig, herstellerneutral

Fügen Sie eine Version, die Ausgabe von php -v oder eine Version pro Zeile für eine ganze Serverflotte ein. Läuft vollständig in Ihrem Browser.

Beispiele:

CLI und Webserver können unterschiedliche PHP-Builds verwenden. Prüfen Sie die Version, die Ihr Webserver tatsächlich nutzt: php-fpm -v (oder php-fpm8.3 -v) oder phpinfo() über die jeweilige Website.

BranchAnfälligBehoben in
8.5< 8.5.128.5.12
8.4< 8.4.278.4.27
8.3< 8.3.368.3.36
8.2< 8.2.358.2.35
8.1 · 8.0 · 7.4alleNur Quellcode-Backport
5.4 – 7.3alleKein Fix

PHP 8.2 verliert am 2026-12-31 den Security-Support

Das Update auf 8.2.35 behebt PHP2Shell, aber vor Ende 2026 müssen Sie erneut wechseln. Wenn Sie ohnehin migrieren, zielen Sie auf 8.4 oder 8.5.

Jetzt tun

In dieser Reihenfolge. Alles andere ist keine vollständige Lösung.

  1. 01

    Jede PHP-Laufzeit finden

    Webserver, Container, Base-Images, Shared-Hosting, Staging. Die CLI-Version kann sich von der unterscheiden, die PHP-FPM oder Apache nutzt.

    Anleitung
  2. 02

    Ein gepatchtes Release installieren

    8.5.12 · 8.4.27 · 8.3.36 · 8.2.35 oder das gepatchte Paket Ihrer Distribution. Ein Update von WordPress/Drupal/Laravel aktualisiert PHP nicht.

    Anleitung
  3. 03

    Alles neu starten, was PHP ausführt

    PHP-FPM-Pools, Apache (mod_php), FrankenPHP, Queue-Worker, Octane/RoadRunner/Swoole. Alte Prozesse behalten den alten Code im Speicher.

    Anleitung
  4. 04

    Prüfen, dann zurückblicken

    Bestätigen Sie die Version, die der Webserver meldet. Prüfen Sie die Logs seit Anfang Oktober 2026 und tauschen Sie Geheimnisse aus, wenn etwas auffällig ist.

    Anleitung

Heute kein Update möglich? Temporäre Workarounds verringern die Angriffsfläche für die bekannten Pfade. Auf Shared-Hosting? Siehe Hosting.

Anleitungen für Ihr Setup

Wird es ausgenutzt?

Stand 2026-10-22. Die Berichte gehen auseinander; gehen Sie davon aus, dass fähige Angreifer funktionierende Exploits haben.

  • Cloudflare (CTO Dane Knecht): „We are seeing early attacks emerging and are updating mitigations as new vectors show up.“
  • watchTowr führt die Ausnutzung zum 21. Oktober als „in the wild“ beobachtet, über sein Honeypot-Netz.
  • Das niederländische NCSC hatte zu dem Zeitpunkt keinen Missbrauch gesehen und betrachtet jedes aus dem Internet erreichbare PHP-System als anfällig, bis es gepatcht ist.
  • Es war kein bestätigter erfolgreicher Einbruch veröffentlicht, und keine der beiden CVEs stand im KEV-Katalog der CISA.
  • Auf GitHub kursieren mehrere „PoC“-Repositories. Tenable konnte bei keinem bestätigen, dass es funktioniert — behandeln Sie sie als nicht vertrauenswürdigen, möglicherweise bösartigen Code.

Organisationen, die vom Netz gingen (BambooHR, DigiD…) →

Welche Server-Setups exponiert sind

mod_php ist am klarsten ausnutzbar, aber jede SAPI, die Web-Requests bedient, braucht den Patch.

Setup…109618…109619Hinweise
Apache + mod_phpRCE bestätigtRCE bestätigtBeide CVEs mit Standardlimits bis zur RCE bestätigt. Setup mit dem höchsten Risiko.
PHP-FPM (nginx, Apache, Caddy…)AnfälligRCE bestätigtRCE über den Session-Lebenszyklus auf FPM bestätigt. OOM-Pfad über Codepfade auf Anwendungsebene bestätigt; kein generischer FPM-Exploit veröffentlicht.
FrankenPHP / LiteSpeed LSAPIWahrscheinlichWahrscheinlichLaut Advisory wahrscheinlich anfällig. Langlebige Worker machen requestübergreifenden Zustand eher relevanter als weniger.
CLI (Cron, Queue-Worker, artisan)Nicht behandeltNicht behandeltIn den Advisories nicht behandelt und im Normalbetrieb nicht per HTTP-Request erreichbar. Trotzdem aktualisieren — es ist dasselbe Paket.

Wann erschien der Patch in meiner Zeitzone?

PHP veröffentlichte die gepatchten Releases am Dienstag, 21. Oktober 2026, um 14:00 UTC — 16:00 Uhr in Deutschland, Österreich, der Schweiz und Luxemburg. An diesem Tag galt in den USA und Europa noch Sommerzeit, „EST“ bedeutete also eigentlich EDT (UTC−4).

ZeitzonePatch veröffentlicht
UTC14:00
USA Pazifik (PDT, UTC−7)07:00
USA Central (CDT, UTC−5)09:00
USA Ostküste (EDT, UTC−4)10:00
UK (BST, UTC+1)15:00
Mitteleuropa (MESZ, UTC+2)16:00
Indien (IST, UTC+5:30)19:30
China / HK / SG (UTC+8)22:00
Japan (JST, UTC+9)23:00
Sydney (AEDT, UTC+11)01:00

Was ein Angreifer tun kann

Code ohne Anmeldung ausführen

Codeausführung als Benutzer des PHP-Workers (z. B. www-data): Webshells, Datendiebstahl, Defacement, laterale Bewegung.

Speicher anderer Requests lesen

Worker-Speicher kann DB-Passwörter, API-Schlüssel, Session-Cookies, TLS-Material und Formulardaten anderer Benutzer enthalten.

Unbemerkt Daten abziehen

Der Speicherleck-Pfad braucht keine Codeausführung, daher schlagen Tools, die auf bösartige Prozesse achten, womöglich nie an.

Häufige Fehler

Die schnellsten Wege, sich sicher zu fühlen, obwohl man es nicht ist.

Wenn Sie denken…Tatsächlich
„Ich habe WordPress / meine Plugins aktualisiert.“Der Bug steckt im PHP-Interpreter. Anwendungs-Updates berühren ihn nicht. Selbst ein simples „Hello World“-Skript auf einer anfälligen PHP-Version ist exponiert.
„Ich habe session.upload_progress.enabled = 0 gesetzt.“Das blockiert einige bestätigte Pfade einer CVE. Gegen CVE-2026-109618 hilft es nicht. Die PHP-Entwickler sagen selbst, dass Aktualisieren die einzige Abhilfe ist.
„Ich habe apt upgrade ausgeführt, also bin ich fertig.“Laufende PHP-FPM- / Apache-Prozesse behalten die alte Binary im Speicher, bis sie neu gestartet werden.
„php -v sagt, ich bin gepatcht.“Das ist die CLI. Der Webserver kann ein anderes Paket, einen anderen Container oder eine andere Version nutzen. Prüfen Sie php-fpm -v oder phpinfo().
„Ich bin hinter Cloudflare / einer WAF.“WAF-Regeln senken das Risiko bei bekannten Payloads; Angreifer verändern sie bereits, und Origins sind oft direkt erreichbar. Das verschafft Zeit, ist aber nicht die Lösung.
„Meine Version sieht alt aus, also bin ich anfällig.“Vielleicht nicht. Debian, Ubuntu und RHEL portieren Fixes zurück, ohne die Upstream-Nummer zu ändern. Prüfen Sie das Changelog des Pakets.

Die beiden CVEs auf einen Blick

Wie es ablief

  1. 2026-10-20 15:00 UTCCVE-IDs kursieren in Foren und sozialen Medien, mit einem falschen CVSS von 10.0.
  2. 2026-10-20 19:30 UTCPHP veröffentlicht seine Vorankündigung früher als geplant.
  3. 2026-10-20 ~20:00 UTCCalif veröffentlicht versehentlich ein Video seines Proof of Concept.
  4. 2026-10-20 23:00 UTCHinweise zu Workarounds gehen an einige Betreiber kritischer Infrastruktur und sind möglicherweise durchgesickert.
  5. 2026-10-21 03:02 UTCCloudflare-WAF-Regeln gehen für alle Pläne live, auch Free.
  6. 2026-10-21 07:41 UTCChainguard liefert gepatchte Images aus und bricht das Embargo um mehr als sechs Stunden.
  7. 2026-10-21 11:51 UTCBambooHR nimmt seinen Dienst vorsorglich vom Netz (USA, Kanada, Irland).
  8. 2026-10-21 (CEST)Niederländische Behörden- und Bildungsseiten, darunter DigiD und MijnOverheid, gehen vorsorglich vom Netz.
  9. 2026-10-21 14:00 UTCKoordiniertes Release: PHP 8.5.12, 8.4.27, 8.3.36, 8.2.35 sowie Quellcode-Backports für 7.4, 8.0, 8.1. Ursprünglich für den 22. Okt. geplant.
  10. 2026-10-21 15:03 UTCBambooHR meldet, dass der Fix eingespielt ist und getestet wird.

Vollständige Zeitleiste ab dem Audit 2024 → · Im Vergleich zum Java-Bug von 2021: PHP2Shell vs. Log4Shell →