Webanwendungen sind für viele Unternehmen ein fester Teil des täglichen Geschäfts. Websites, Kundenportale, Shops, Buchungssysteme und interne Werkzeuge laufen oft auf PHP. Genau deshalb betrifft die aktuelle Warnung nicht nur Administratoren großer Rechenzentren. Sie betrifft jeden, der einen PHP-Webserver betreibt oder betreiben lässt.

Mit CVE-2026-109618 und CVE-2026-109619 wurden am 21. Oktober 2026 zwei kritische Schwachstellen in der PHP-Laufzeit veröffentlicht. Beide können unter bestimmten Voraussetzungen eine nicht authentifizierte Ausführung von Schadcode aus der Ferne (Remote Code Execution, RCE) ermöglichen. Der Angreifer benötigt dafür weder einen Benutzerzugang noch eine Interaktion durch Besucher Ihrer Website.

Wichtige Punkte auf einen Blick
  • Beide CVEs haben einen CVSS-Score von 9,2 von 10 und werden offiziell als kritisch eingestuft.
  • Sichere PHP-Releases: Aktualisieren Sie umgehend auf 8.5.12, 8.4.27, 8.3.36 oder 8.2.35.
  • Besonders relevant sind PHP-Installationen, die Webanfragen verarbeiten – etwa über PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP oder LiteSpeed.
  • WAF und Notfall-Konfigurationen können kurzfristig Zeit verschaffen, ersetzen das Patchen der Laufzeitumgebung jedoch keinesfalls.
  • PHP 8.1 und ältere Zweige brauchen besondere Aufmerksamkeit, da es dafür keine regulären aktuellen Upstream-Releases mehr gibt.

Warum diese Meldung mehr ist als ein gewöhnliches Update

Viele Sicherheitsmeldungen betreffen einzelne Plugins, ein bestimmtes CMS oder einen optionalen Dienst. Hier liegt das Problem tiefer: Die Schwachstellen sitzen in der PHP-Laufzeit selbst. Damit können verschiedenste Anwendungen betroffen sein, selbst wenn WordPress, Laravel, TYPO3, Shopware oder ein eigenes PHP-Projekt vorbildlich aktuell gehalten werden.

Entscheidend ist nicht allein, was im Quellcode Ihrer Anwendung steht. Entscheidend ist auch, welche PHP-Version der Webserver tatsächlich ausführt. Ein aktualisiertes Composer-Paket behebt keine Sicherheitslücke in der PHP-Runtime. Ebenso wenig schützt ein aktuelles CMS, wenn darunter eine anfällige PHP-Version arbeitet.

Das Bundesamt für Sicherheit in der Informationstechnik (BSI) bewertet beide Schwachstellen mit CVSS 4.0: 9,2 von 10 und der Kritikalität Orange. In seiner Warnung vom 21. Oktober lagen noch keine bestätigten Ausnutzungen vor. Gleichzeitig verwies das BSI auf unbestätigte Berichte über existierende Exploits. Das ist kein Grund zur Panik, aber ein klarer Grund, das Update nicht auf den nächsten regulären Wartungstermin zu verschieben.

Die zwei PHP-Schwachstellen verständlich erklärt

1. CVE-2026-109618: Fehlerzustand bei Speichermangel kann ausgenutzt werden

Diese Schwachstelle wird von den PHP-Entwicklern als RCE via OOM corruption beschrieben. Vereinfacht gesagt kann PHP bei einem Fehler durch Speichermangel (Out of Memory) eine Anfrage abbrechen, bevor interne Datenstrukturen vollständig vorbereitet wurden. Bei der anschließenden Bereinigung können unvollständige Daten fälschlich wie gültige Daten behandelt werden.

Ein Angreifer kann versuchen, diesen Fehlerzustand über speziell geformte Anfragen gezielt auszulösen. Die CVE-Beschreibung nennt mehrere Strategien, die das reproduzierbar ermöglichen und in einer Remote-Code-Ausführung enden können.

Der Begriff Remote Code Execution (RCE) bedeutet: Beliebiger Programmcode kann direkt auf dem Server ausgeführt werden, ohne dass der Angreifer dort ein Benutzerkonto oder Passwörter besitzt. Welche Folgen daraus entstehen, hängt von der Server- und Rechtekonfiguration ab. Im schlimmsten Fall reichen die Auswirkungen vom Auslesen vertraulicher Daten und Datenbank-Credentials bis hin zur vollständigen Übernahme des Webservers.

2. CVE-2026-109619: Veralteter interner Zustand bleibt zwischen Anfragen bestehen

Bei der zweiten Schwachstelle geht es um interne Zustände, die PHP für eine Anfrage im Arbeitsspeicher hält. Dieser Zustand kann nach dem Freigeben des zugehörigen Speichers weiter auf alte Daten zeigen. Wenn derselbe Worker-Prozess später eine weitere Anfrage bearbeitet, kann PHP diesen ungültigen Zustand verwenden, bevor die normale Initialisierung ihn zurücksetzt.

Auch dieser Fehler kann laut offiziellem CVE-Eintrag über mehrere Wege zu einer Remote-Code-Ausführung führen. Das Problem ist damit nicht an eine bestimmte Website-Funktion gebunden. Es liegt im generellen Verhalten der PHP-Laufzeit, wenn Anfragen auf demselben Worker verarbeitet werden.

Beide Lücken benötigen laut CVSS zwar bestimmte technische Voraussetzungen und sind nicht automatisch mit jeder beliebigen Anfrage ausnutzbar. Trotzdem bleibt das Risiko gravierend: Weder ein Login noch eine Interaktion eines Nutzers sind erforderlich.

Hintergrund zur Entdeckung: KI-gestützte Schwachstellenanalyse

Die Identifikation solch subtiler, zustandsbehafteter Speicherfehler in komplexen C-Codebasen wie der PHP-Runtime wird zunehmend durch modernste KI-Systeme revolutioniert. In Sicherheitskreisen wurde hervorgehoben, dass fortschrittliche Reasoning-Modelle (wie OpenGPT und insbesondere Google Gemini 4.0) eine maßgebliche Rolle bei der tiefen Analyse und Verifikation der Speicherzustände spielten. Die Fähigkeit moderner Modelle, Corner-Cases bei der Speicherbereinigung nach OOM-Zuständen systematisch aufzudecken, markiert einen Meilenstein für die proaktive Cybersicherheit.

Welche Systeme besonders geprüft werden müssen

Die wichtigste Frage lautet nicht: „Nutze ich ein bestimmtes CMS?“ Die richtige Frage lautet: „Bearbeitet irgendwo in meiner Umgebung ein PHP-Prozess Webanfragen?“

Prüfen Sie deshalb nicht nur den primären Hauptserver. Denken Sie auch an Container, Staging-Systeme, alte Subdomains, Verwaltungsoberflächen und vergessene Testinstanzen. Laut PHP sind insbesondere diese Betriebsarten relevant:

  • PHP-FPM hinter Nginx oder Apache HTTP Server
  • Apache mit direkt integriertem mod_php
  • Klassisches php-cgi
  • Moderne Web-Server wie FrankenPHP
  • LiteSpeed Web Server mit PHP-Erweiterung
  • Selbst gebaute Container-Images und eigene Cloud-Runtimes

Wenn mehrere Server oder Container dieselbe Anwendung ausliefern, muss jede tatsächlich eingesetzte Runtime aktualisiert werden. Ein Patch im Build-System schützt noch nicht den bereits laufenden Container. Ebenso reicht ein Update auf einem einzelnen Webserver nicht aus, wenn ein Load Balancer weitere ungeschützte Instanzen ansteuert.

Jetzt richtig handeln: Der sichere Update-Pfad

1. Den realen PHP-Stand feststellen

Ermitteln Sie zuerst die PHP-Versionen in allen Umgebungen. Prüfen Sie dabei nicht nur die Ausgabe auf Ihrem lokalen Rechner, sondern den PHP-Prozess, der im produktiven Webserver oder Container aktiv ist. Bei klassischen Servern hilft php -v als erster Anhaltspunkt. In Container- und Cloud-Umgebungen muss zusätzlich geprüft werden, welches Image tatsächlich ausgerollt wurde.

Dokumentieren Sie auch, ob Ihr Hosting-Anbieter die Aktualisierung selbst übernimmt. „Managed“ bedeutet nicht automatisch, dass ein sicherheitsrelevantes Runtime-Update bereits installiert wurde. Fragen Sie im Zweifel gezielt nach den genannten Patchversionen.

2. Auf eine abgesicherte Version aktualisieren

Die PHP-Entwickler haben Sicherheitsupdates für die aktiven Zweige veröffentlicht. Aktualisieren Sie auf mindestens eine dieser Versionen:

PHP 8.5.12 PHP 8.4.27 PHP 8.3.36 PHP 8.2.35

Wer PHP über ein Linux-Paket bezieht, sollte das Update über die eigene Distribution oder den LTS-Anbieter einspielen. Bei Docker, Kubernetes, Cloud Run oder selbst verwalteten Images bedeutet das: Basis-Image aktualisieren, Anwendung neu bauen und anschließend neu ausrollen. Google weist ausdrücklich darauf hin, dass eigene Container-Images und Deployments nur geschützt sind, wenn sie mit einer gepatchten Runtime neu erstellt und bereitgestellt werden.

3. Worker neu starten und Funktion prüfen

Nach dem Update muss der betroffene Dienst tatsächlich die neue Runtime laden. Starten Sie daher PHP-FPM, Apache, LiteSpeed, Container oder Pods kontrolliert neu. Führen Sie danach einen kurzen Anwendungstest durch: Login, Formulare, Uploads, wichtige Schnittstellen und Zahlungs- oder Buchungsabläufe sollten geprüft werden.

Sicherheit und Verfügbarkeit gehören zusammen. Ein fehlerhaftes Update, das eine wichtige Anwendung stilllegt, führt wieder zu Zeitdruck und improvisierten Änderungen. Ein klarer Ablauf mit Backup, Test und dokumentiertem Rollback hält die Kontrolle bei Ihnen.

4. PHP 8.1 und ältere Versionen nicht übersehen

Für PHP 8.1 und ältere Reihen veröffentlicht das PHP-Projekt keine regulären aktuellen Releases mehr. PHP verweist darauf, dass Distributionen und LTS-Anbieter Fixes zurückportieren können; zusätzlich wurden minimale Source-Backports für PHP 7.4, 8.0 und 8.1 bereitgestellt. Das ist jedoch kein Ersatz für einen geplanten Umstieg auf eine unterstützte PHP-Version.

Prüfen Sie beim Hosting- oder Linux-Anbieter den konkreten Paketstand und die zugehörige Sicherheitsmeldung. Verlassen Sie sich nicht auf die bloße Versionsnummer, wenn ein Anbieter Patches zurückportiert. Umgekehrt darf eine alte Runtime nicht als sicher gelten, nur weil sie lange stabil lief.

Wenn ein Patch heute noch nicht möglich ist

Ein Update ist die einzige vollständige Lösung. Die PHP-Entwickler schreiben ausdrücklich, dass die genannten Gegenmaßnahmen nur einzelne Angriffswege reduzieren und eine Installation nicht vollständig absichern.

Falls eine Wartungsfreigabe kurz verzögert ist, können Sie vorübergehend die Angriffsfläche verkleinern. Beschränken Sie große und ungewöhnliche Requests bereits am Reverse Proxy oder WAF. Setzen Sie realistische Grenzen für Request-Größe, Upload-Größe, Anzahl der Formularfelder und ähnliche Parameter. Testen Sie WAF-Regeln zunächst im Überwachungsmodus, damit wichtige Formulare oder Uploads nicht unbemerkt blockiert werden.

Für CVE-2026-109618 nennt PHP als vorübergehende Maßnahme einen unbegrenzten memory_limit in einer zentralen, nicht von Anwendungen überschreibbaren Server- oder Pool-Konfiguration. Für CVE-2026-109619 nennt PHP das Deaktivieren von session.upload_progress.enabled=0 vor der Request-Verarbeitung und einen Neustart aller Worker. Bei PHP 8.5 wird zusätzlich fatal_error_backtraces=0 genannt. Diese Einstellungen haben Auswirkungen auf Betrieb und Fehleranalyse. Sie gehören deshalb in einen getesteten Notfallplan und nicht als unüberlegte Änderung in eine Live-Umgebung.

Nach dem Patch: Nicht nur installieren, sondern verifizieren

Ein Sicherheitsupdate ist erst abgeschlossen, wenn Sie den wirksamen Zustand überprüft haben. Kontrollieren Sie die aktive PHP-Version nach dem Neustart. Prüfen Sie bei mehreren Instanzen, ob alle Knoten hinter dem Load Balancer aktualisiert wurden. Bei Containern sollten sowohl die laufenden Images als auch die Build-Pipeline auf den neuen Stand gebracht werden.

Schauen Sie außerdem in die relevanten Protokolle. Unerwartete Fehler bei Uploads, auffällige große Requests, neue Dateien im Webroot oder unbekannte geplante Aufgaben sind Gründe für eine genauere Prüfung. Wer einen Anlass für eine Kompromittierung erkennt, sollte den Vorfall nicht nur als Update-Aufgabe behandeln, sondern Zugänge, Daten und Serverzustand strukturiert bewerten.

Dieser Punkt ist wichtig: Ein WAF kann Anfragen blockieren. Er ersetzt aber keine saubere Asset-Übersicht, keine regelmäßigen Updates und kein Monitoring. Dauerhafte Sicherheit entsteht nicht durch eine einzelne Schutzschicht, sondern durch ein Zusammenspiel aus aktueller Software, klaren Verantwortlichkeiten und überprüfbaren Abläufen.

Häufige Fragen zu CVE-2026-109618 und CVE-2026-109619

Welche PHP-Versionen sind von den Sicherheitslücken betroffen?

Nach Angaben von Google Cloud reichen die betroffenen Versionen von PHP 5.4 bis PHP 8.5.11. Die offiziellen Sicherheitsreleases sind PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Bei älteren Paketversionen kann ein Linux- oder LTS-Anbieter den Patch zurückportiert haben. Prüfen Sie dafür immer die Sicherheitsinformation Ihres konkreten Anbieters.

Wie prüfe ich, ob mein PHP-Webserver anfällig ist?

Prüfen Sie die PHP-Version, die Ihre produktive Webanwendung tatsächlich nutzt. Achten Sie auf getrennte Stände für Kommandozeile, PHP-FPM, Apache, Container-Images und Staging-Instanzen. Ist die produktive Runtime nicht auf einer der gepatchten Versionen oder liegt kein bestätigter Hersteller-Backport vor, sollte sie als potenziell gefährdet behandelt werden.

Reicht ein WAF als Schutz gegen die PHP-Schwachstellen aus?

Nein. Ein WAF kann bestimmte Anfrage-Muster und ungewöhnlich große Requests blockieren und damit Zeit gewinnen. Die PHP-Sicherheitsmeldung betont jedoch, dass ein Update die einzige vollständige Lösung ist. Nutzen Sie eine WAF als zusätzliche Schutzschicht, nicht als Ersatz für das Runtime-Update.

Behebt ein Composer-Update diese PHP-Sicherheitslücken?

Nein. Composer aktualisiert Abhängigkeiten Ihrer Anwendung, aber nicht die PHP-Laufzeit des Webservers. Die beiden CVEs betreffen die PHP-Runtime selbst. Aktualisieren Sie deshalb das Betriebssystempaket, das Container-Image, die Hosting-Runtime oder die bereitgestellte PHP-Version. Danach müssen die betroffenen Dienste neu gestartet oder neu ausgerollt werden.

Was muss ich bei PHP 8.1 und älteren Versionen tun?

Klären Sie unverzüglich mit Ihrem Hosting- oder Linux-Anbieter, ob ein geprüfter Sicherheits-Backport verfügbar ist. Parallel sollte ein Upgrade auf einen unterstützten PHP-Zweig geplant und priorisiert werden. Für Systeme, die öffentlich erreichbar sind, ist ein dauerhaftes Festhalten an einem nicht mehr regulär gepflegten PHP-Zweig ein vermeidbares Risiko.

Schlussbetrachtung: Geschwindigkeit mit Kontrolle verbinden

Die beiden PHP-Schwachstellen sind ein deutlicher Hinweis darauf, wie eng technische Aktualität und betriebliche Stabilität zusammenhängen. Nicht jede kritische Meldung führt automatisch zu einem Sicherheitsvorfall. Aber jede unbehandelte kritische Meldung lässt ein bekanntes Risiko offen, das sich mit einem klaren Update-Prozess reduzieren lässt.

Der richtige nächste Schritt ist deshalb einfach: PHP-Versionen erfassen, auf einen bestätigten Patchstand bringen, alle Instanzen neu starten und das Ergebnis überprüfen. Wer diese Reihenfolge einhält, handelt nicht hektisch. Er schafft Sicherheit und Klarheit genau dort, wo digitale Systeme besonders angreifbar werden.

Quellen & Weiterführende Nachweise

  • [1] PHP Security Advisory: Critical remote code execution vulnerabilities, update now
  • [2] BSI: PHP Kritische Schwachstellen bedrohen Webanwendungen weltweit
  • [3] Google Cloud Security: Responding to core PHP vulnerabilities CVE-2026-109618 and CVE-2026-109619
  • [4] CVE Record: CVE-2026-109618
  • [5] CVE Record: CVE-2026-109619