Nein, nicht „das halbe Internet“ ist nachweislich betroffen. Doch ungepatchte PHP-Webdienste können durch zwei kritische Schwachstellen ohne vorherige Anmeldung gefährdet sein. Prüfe daher zuerst die tatsächliche Web-Laufzeit statt nur PHP in der Shell, installiere den freigegebenen Sicherheitsfix und starte die betroffenen Worker kontrolliert neu. Besonders wichtig sind öffentlich erreichbare Dienste, mod_php sowie Container und Produkte mit eingebettetem PHP.
Die Alarmmeldung richtig einordnen
Die Aussage, eine PHP-Sicherheitslücke könne „das halbe Internet“ betreffen, ist ein zugespitzter Aufhänger, aber keine belegte Größenordnung. Es gibt keinen Nachweis, dass die Hälfte aller Internetdienste verwundbar oder bereits kompromittiert ist. Das tatsächliche Risiko ist dennoch erheblich, weil PHP als Laufzeitumgebung in vielen Websites, Shops, APIs und Verwaltungsoberflächen eingesetzt wird.
Entscheidend ist nicht, ob eine Website PHP nutzt, sondern welche PHP-Version ihre Webanfragen verarbeitet. Die Sicherheitsupdates vom 21. Oktober 2026 betreffen grundsätzlich ungepatchte Installationen der unterstützten Zweige, sofern sie Anfragen über einen Webdienst bedienen. Ein lokales PHP für Entwicklungsaufgaben ist daher anders zu bewerten als ein von außen erreichbares Kundenportal.
Die Internet-Exponierung bestimmt die Dringlichkeit wesentlich. Ein öffentlich erreichbarer Shop mit Formularen und Uploads bietet mehr mögliche Berührungspunkte als ein abgeschotteter interner Dienst. Auch ein interner Dienst ist aber nicht automatisch sicher: VPN-Zugänge, kompromittierte Konten oder andere Systeme im Netzwerk können ihn erreichbar machen. Reichweite allein ersetzt deshalb keine technische Risikoprüfung.
Ebenso wichtig sind Betriebsart und Patchstand. PHP kann etwa über PHP-FPM, als Apache-Modul, per php-cgi oder eingebettet in ein Produkt laufen. Mehrere Domains auf demselben Server können dabei unterschiedliche Versionen und Aktualisierungswege haben. Eine pauschale Entwarnung für alle PHP-Websites wäre ebenso falsch wie die Annahme, jede Installation sei unmittelbar angreifbar.
Was die PHP-Schwachstellen technisch ermöglichen
Eine Remote Code Execution (RCE) bedeutet, dass ein Angreifer unter bestimmten Bedingungen Code auf einem entfernten System ausführen kann. Bei diesen PHP-Schwachstellen ist laut Sicherheitsmeldung keine vorherige Anmeldung erforderlich. Ausgeführt würde der Code zunächst mit den Rechten des Webprozesses, nicht automatisch mit uneingeschränkten Administratorrechten. Die möglichen Folgen hängen daher stark von Dateirechten, Zugangsdaten und der Servertrennung ab.
CVE-2026-109618 betrifft Fehlerpfade bei Speicherknappheit. Bricht PHP eine Anfrage wegen eines Out-of-Memory-Zustands ab, können interne Datenstrukturen unvollständig bleiben. Werden solche Zustände beim Aufräumen der Anfrage weiterverwendet, kann Speicherbeschädigung entstehen. Die offizielle Beschreibung nennt insbesondere Multipart-Anfragen, Dateiuploads und den Speicherverbrauch beim Parsen verschachtelter Eingaben als relevante technische Kontexte.
CVE-2026-109619 betrifft dagegen an eine Anfrage gebundenen internen Zustand, dessen Speicher bereits freigegeben wurde. Verarbeitet ein wiederverwendeter Worker danach eine weitere Anfrage, kann PHP auf diesen veralteten Zustand zugreifen, bevor die normale Initialisierung greift. Die Sicherheitsmeldung verweist dabei unter anderem auf den Upload-Fortschritt von Sessions und Fehlerpfade. Das beschreibt die Fehlerklasse, nicht eine Anleitung zur Ausnutzung.
- Betroffen sein können Webanfragen über PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed.
- Die Fehler liegen in der PHP-Laufzeit, nicht primär in WordPress, Joomla, Shopware, Themes oder einzelnen Plugins.
- CMS und Frameworks beeinflussen erreichbare Funktionen wie Uploads, ersetzen aber kein Update des Interpreters.
Warum nicht jede Installation gleich gefährdet ist
Ob ein Dienst praktisch gefährdet ist, ergibt sich aus mehreren Faktoren. Vorrang haben eine ungepatchte PHP-Web-Laufzeit und ein erreichbarer Webdienst. Danach zählen die Betriebsart, wiederverwendete Prozesse, Funktionen für Uploads oder komplexe Formulare sowie die Rechte des Webprozess-Kontos. Ein Dienst mit weitreichendem Schreibzugriff auf Webdateien oder Zugang zu weiteren Diensten kann schwerere Folgen haben als ein strikt isoliertes Projekt.
Bei Apache mit mod_php hebt das PHP-Projekt den Risikofokus besonders hervor: Ein dokumentierter Angriff kann bereits vor der Ausführung des eigentlichen Anwendungscodes ausgelöst werden. Ein sauber gepflegtes CMS schützt dann nicht vor der Schwachstelle in der Laufzeit. Das bedeutet nicht, dass PHP-FPM, php-cgi, FrankenPHP oder LiteSpeed als ungefährlich gelten; sie müssen bei einem ungepatchten Stand ebenfalls priorisiert geprüft werden.
Besondere Aufmerksamkeit brauchen außerdem Produkte mit eingebettetem PHP. Dazu können Container-Images, Appliances, NAS-Verwaltungen oder Netzwerkprodukte gehören, deren Oberfläche PHP intern verwendet. Dort zeigt ein Befehl auf dem Host oft nicht die tatsächlich eingesetzte Laufzeit. Das Update des Betriebssystems behebt auch nicht automatisch eine verwundbare PHP-Komponente in einem Image oder Herstellerprodukt.
Eine Firewall, Web Application Firewall oder restriktive Upload-Limits können einzelne Anfragen erschweren und die Angriffsfläche begrenzen. Sie sind jedoch kein Ersatz für den Fix, weil sie nicht die fehlerhafte Speicher- und Zustandsverwaltung im Interpreter korrigieren. Auch ein fehlerfreies CMS bleibt auf eine sichere Laufzeit angewiesen. Maßgeblich ist deshalb, den Patchstand des tatsächlich Webanfragen verarbeitenden PHP zu prüfen und zu aktualisieren.
Sichere Patchstände und Supportstatus vergleichen
Für die beiden Sicherheitslücken zählt zunächst der Patchstand innerhalb des eingesetzten PHP-Zweigs. Das PHP-Projekt nennt für die unterstützten Reihen konkrete korrigierte Releases. Frühere Patchstände derselben Reihe gelten als betroffen; ein Upgrade auf die angegebene oder eine neuere Version dieses Zweigs ist die vorgesehene vollständige Abhilfe.
| PHP-Zweig | Betroffen bis einschließlich | Sichere Version ab | Supportstatus am 22. Oktober 2026 | Empfohlene Maßnahme |
|---|---|---|---|---|
| PHP 8.2 | 8.2.34 | 8.2.35 | Nur Sicherheitsupdates bis 31. Dezember 2026 | Kurzfristig auf mindestens 8.2.35 aktualisieren und Migration planen. |
| PHP 8.3 | 8.3.35 | 8.3.36 | Nur Sicherheitsupdates bis 31. Dezember 2027 | Auf mindestens 8.3.36 aktualisieren. |
| PHP 8.4 | 8.4.26 | 8.4.27 | Aktiver Support bis 31. Dezember 2026 | Auf mindestens 8.4.27 aktualisieren. |
| PHP 8.5 | 8.5.11 | 8.5.12 | Aktiver Support bis 31. Dezember 2027 | Auf mindestens 8.5.12 aktualisieren. |
| PHP 8.1 und älter | Kein reguläres aktuelles Upstream-Release | Kein allgemein verfügbares reguläres Fix-Release | Nicht regulär vom PHP-Projekt unterstützt | Anbieter-Backport prüfen oder auf einen unterstützten Zweig migrieren. |
Ein Patch-Update bleibt in derselben Entwicklungsreihe, etwa von 8.3.35 auf 8.3.36. Es soll den Sicherheitsfix bereitstellen und hat einen engeren Kompatibilitätsrahmen als ein Wechsel von 8.2 auf 8.4. Letzterer ist eine Migration: Abhängigkeiten, Erweiterungen, Anwendungscode und gegebenenfalls das Deployment müssen dafür separat geprüft werden.
PHP 8.2 ist für die akute Behebung weiterhin nutzbar, sofern mindestens Version 8.2.35 läuft. Der Zweig erreicht jedoch am 31. Dezember 2026 sein Supportende. Deshalb sollte ein Betrieb nicht bei diesem Sofortschritt stehen bleiben: Plane die Umstellung auf einen länger unterstützten Zweig, nachdem die Anwendung in einer geeigneten Umgebung auf Kompatibilität geprüft wurde.
Bei PHP 8.1 und älter ist besondere Vorsicht nötig. Das PHP-Projekt stellt dafür kein reguläres aktuelles Release bereit; minimale Quellcode-Backports sind nicht mit einem allgemein verfügbaren, gepflegten Paket gleichzusetzen. Ein vom Betriebssystemanbieter dokumentierter Sicherheits-Backport kann angemessen sein, erfordert aber einen Nachweis im Security Advisory oder Paket-Changelog. Fehlt er, ist eine Migration statt einer bloßen Versionskosmetik nötig.
Die tatsächliche Web-Laufzeit prüfen
Die Versionsprüfung beginnt mit einer Bestandsaufnahme, darf aber nicht bei der Shell enden. Auf einem selbst verwalteten Server zeigen die folgenden Befehle die Version des dort aufgerufenen PHP-Befehls und die von diesem Aufruf gefundenen Konfigurationsdateien. Sie verändern weder Pakete noch Konfiguration und eignen sich daher als erster, risikoarmer Prüfschritt.
Die Ausgabe beschreibt nur die über diesen Shell-Befehl aufgerufene CLI-Laufzeit. Eine Website kann dagegen über PHP-FPM, Apache mit mod_php, php-cgi oder einen Container bedient werden. Diese Web-Laufzeit kann eine andere PHP-Version und andere Konfigurationsdateien nutzen als der Befehl php -v auf dem Host. Für die Sicherheitsbewertung ist der Prozess maßgeblich, der reale HTTP-Anfragen verarbeitet.
Im Managed Hosting prüfst du deshalb im Kundenpanel die pro Projekt oder Domain ausgewählte PHP-Version und fragst bei Bedarf den Patchstand des bereitgestellten Dienstes ab. Bei mehreren Domains ist jede Zuweisung einzeln zu kontrollieren: Eine Hauptdomain kann bereits den gepatchten Zweig verwenden, während ein Shop, eine Staging-Instanz oder eine Subdomain noch einen älteren Interpreter nutzt.
Auf Servern mit PHP-FPM gehören Service-Konfiguration, Paketbestand und Deployment-Unterlagen zusammen. In Container-Umgebungen prüfst du zusätzlich das tatsächlich ausgerollte Image und nicht nur ein lokales Build-Manifest. Entscheidend ist, welche Revision im laufenden Pod oder Container Webanfragen annimmt; ein aktualisiertes Basisimage schützt keine bereits laufende ältere Instanz.
Updatewege nach Betriebsart planen
Der geeignete Updateweg richtet sich danach, wer den Interpreter ausliefert und wo er betrieben wird. Erst wenn dieser Verantwortungsbereich klar ist, lässt sich zuverlässig entscheiden, ob ein Panel-Wechsel, ein Paketupdate, ein neues Image oder ein Herstellerupdate erforderlich ist. Die folgende Einordnung trennt diese Fälle, ohne die Betriebsarten hinsichtlich ihres Risikos gleichzusetzen.
| Betriebsart | Wo die tatsächliche Version prüfen? | Wer aktualisiert? | Typische Besonderheit |
|---|---|---|---|
| Shared Hosting | Kundenpanel je Domain oder Projekt; Auskunft des Hosters | Hosting-Anbieter oder Kunde über freigegebene Auswahl | PHP-Zuweisungen können zwischen Domains abweichen. |
| PHP-FPM auf Linux | FPM-Pool, installierte Pakete, Dienst- und Deployment-Konfiguration | Serveradministration oder Distribution | Paketversion kann einen dokumentierten Sicherheits-Backport enthalten. |
| Apache mit mod_php | Apache-Modulkonfiguration und installierte Pakete | Serveradministration oder Distribution | Vom PHP-Projekt mit besonderem Risikofokus beschrieben. |
| Container | Laufendes Image, Image-Tag oder Digest sowie Container-Laufzeit | Team für Build und Deployment | Host-Updates ändern das eingebettete PHP im Image nicht automatisch. |
| Eingebettetes PHP im Produkt | Herstellerdokumentation, Produktversion und Security Advisory | Produkthersteller oder Produktadministration | PHP kann ohne separat sichtbare Installation Teil einer Appliance sein. |
Bei Shared Hosting sollte der Anbieter den sicheren Patchstand für die gewählte PHP-Reihe bereitstellen; der Betreiber prüft anschließend die Anwendung. Bei PHP-FPM oder mod_php aktualisiert die Administration in der Regel die Pakete und startet danach den tatsächlich zuständigen Dienst kontrolliert neu. Ein reiner Neustart ohne eingespielten Fix ersetzt das Update nicht.
Linux-Distributionen liefern Sicherheitskorrekturen häufig als Backport. Dann kann die sichtbare Paketversionsnummer von den Releases auf php.net abweichen, obwohl der Fix enthalten ist. Vergleiche daher nicht nur Zeichenketten wie „8.4.26“, sondern lies die Sicherheitsmitteilung und das Changelog des Distributors. Das PHP-Projekt weist darauf hin, dass Distributionen und LTS-Anbieter Patches erhalten können.
Container verlangen einen eigenen Ablauf: ein korrigiertes Image bauen oder vom Anbieter beziehen, dieses ausrollen und alte Instanzen ersetzen. Bei NAS-Oberflächen, Netzwerkgeräten oder fertigen Webanwendungen liegt die Korrektur dagegen beim Herstellerprodukt. Ein Patch des Hostbetriebssystems erreicht dort nicht zwangsläufig den eingebetteten Interpreter; Inventarisierung und Herstellerhinweise bleiben deshalb unverzichtbar.
Sofortmaßnahmen ohne falsche Sicherheit
Am Patch-Tag verschaffst du dir zuerst ein belastbares Inventar: Domains, APIs, Verwaltungsoberflächen, Container und Produkte mit möglichem eingebettetem PHP. Notiere je Dienst die Web-Betriebsart, den verantwortlichen Updateweg und die tatsächlich verwendete PHP-Laufzeit. Danach erhält jeder öffentlich erreichbare oder geschäftskritische Dienst Vorrang, nicht lediglich der Server mit der auffälligsten Versionsnummer.
Spiele anschließend das vom Hoster, Linux-Distributor, Image- oder Produkthersteller freigegebene Sicherheitsupdate ein. Für die unterstützten PHP-Zweige ist das Update auf den korrigierten Patchstand die vollständige Abhilfe; eine WAF, Upload-Regeln oder ein Webserver-Neustart ersetzen es nicht. Plane den Vorgang so, dass Paket-, Image- oder Herstellerupdate nachvollziehbar dokumentiert und bei Problemen zurückverfolgt werden kann.
Nach der Aktualisierung müssen alle alten Worker beendet und durch Prozesse ersetzt werden, die nachweislich die gepatchte Laufzeit geladen haben. Verwende einen Reload nur, wenn die konkrete Dienstverwaltung diesen vollständigen Austausch sicherstellt; andernfalls ist ein kontrollierter Neustart erforderlich. Prüfe anschließend Prozessstartzeiten, Dienststatus oder die intern ermittelte Web-Laufzeit, statt den Austausch lediglich anzunehmen. Bei Containern rollst du das korrigierte Image aus und entfernst sämtliche alten Instanzen.
Kontrolliere danach zentrale Anwendungswege wie Anmeldung, Formulare, Uploads, Checkout und APIs. Die Tests zeigen, ob Anwendung und Erweiterungen mit dem aktualisierten Patchstand funktionieren; sie belegen allein jedoch weder den vollständigen Worker-Austausch noch die Abwesenheit einer früheren Kompromittierung. Diese Punkte müssen über Betriebs- und Sicherheitsprüfungen getrennt bewertet werden.
Falls ein Patch kurzfristig nicht möglich ist, können einzelne Einstellungen bekannte Angriffspfade begrenzen, aber keine vollständige Sicherheit herstellen. Das Abschalten des Upload-Fortschritts muss vor dem Parsen einer Anfrage wirksam sein. Prüfe vorab, ob Anwendungen oder Oberflächen diese Fortschrittsanzeige benötigen, und starte danach jeden zuständigen PHP-Worker neu. Verifiziere anschließend, dass kein alter Prozess mit der vorherigen Einstellung weiterarbeitet.
Konservative Grenzen für POST-Daten und weitere in der Sicherheitsmeldung genannte Optionen können die Angriffsfläche ebenfalls nur teilweise reduzieren. Spät gelesene .user.ini-Dateien oder ein ini_set() innerhalb der Anwendung reichen für diese Einstellung nicht aus. Behandle solche Maßnahmen als befristete Risikoreduktion und halte am Sicherheitsupdate als Ziel fest.
Davon zu unterscheiden ist die reguläre Verwaltung gespeicherter Sitzungen. Der Beitrag zur PHP Session Garbage Collection erklärt, wie Bereinigung, Dateizugriffe und Worker im normalen Betrieb zusammenspielen. Diese Betriebsoptimierung behebt die hier behandelten Schwachstellen jedoch nicht und ersetzt weder den korrigierten PHP-Patchstand noch den anschließenden Austausch der laufenden Prozesse.
Nach dem Patch Betrieb und Auffälligkeiten prüfen
Ein erfolgreich abgeschlossenes Paketupdate belegt zunächst nur, dass Dateien oder Pakete installiert wurden. Es bestätigt weder, dass der Webprozess die neue Laufzeit geladen hat, noch dass die Anwendung damit fehlerfrei arbeitet. Prüfe deshalb nach dem Neustart die für den Dienst maßgebliche Web-Laufzeit und dokumentiere Zeitpunkt, Version, neu gestarteten Dienst sowie das Ergebnis der Funktionskontrolle.
Die Funktionsprüfung sollte reale Kernabläufe abdecken: wichtige öffentliche Seiten, Anmeldung und Abmeldung, Formularversand, Datei-Upload, Checkout oder Buchung sowie API-Endpunkte und Hintergrundaufgaben. Teste nur Vorgänge, für die du berechtigt bist, und nutze bei produktiven Shops möglichst dafür vorgesehene Testdaten. Kontrolliere parallel Webserver-, PHP- und Anwendungsprotokolle auf neue Fehler, wiederholte Abstürze oder unerwartete Statuscodes.
Ein Neustart ist notwendig, um langlebige Prozesse und Worker mit aktualisiertem Code zu laden, erzeugt aber selbst keinen Fix. Ohne eingespieltes Update bleibt die Schwachstelle bestehen. Bei hoher Auslastung sollte das Wartungsfenster so gewählt werden, dass Anfragen geordnet abfließen können und die Auswirkungen eines Worker-Neustarts beobachtbar bleiben.
Wie stark ein kontrollierter Neustart den Durchsatz beeinflusst, hängt von Zahl und Auslastung der PHP-Prozesse ab. Für die Planung hilft es, Warteschlangen, laufende Jobs und kritische Transaktionen zu berücksichtigen, statt Prozesse unkoordiniert zu beenden. Der Leitfaden PHP Workers verstehen erklärt die Rolle dieser Prozesse bei parallelen dynamischen Anfragen.
Treten nach dem Patch Auffälligkeiten auf, unterscheide zwischen Kompatibilitätsfehlern der Anwendung und einem unvollständigen Rollout. Vergleiche Konfiguration, aktivierte Erweiterungen und die Web-Laufzeit mit dem Stand vor der Wartung. Ein Rollback darf nicht dazu führen, dass ein öffentlich erreichbarer Dienst dauerhaft auf dem verwundbaren Stand verbleibt; kläre dann zügig einen kompatiblen, gepatchten Updatepfad.
Alte und versteckte PHP-Installationen priorisieren
Besondere Aufmerksamkeit benötigen Systeme, auf denen PHP nicht als bewusst installierte Laufzeit sichtbar ist: Docker-Images, virtuelle Appliances, NAS- und Netzwerkoberflächen sowie fertige Softwareprodukte. Ein Update des Hosts aktualisiert weder automatisch ein Container-Image noch die intern mitgelieferte Laufzeit eines Herstellerprodukts. Frage deshalb Hersteller gezielt nach ihrer Bewertung und nach einem Sicherheitsupdate für das konkrete Produkt.
Bei alten Zweigen sind drei Fälle sauber zu trennen. Ein regulär unterstützter PHP-Release erhält die vom PHP-Projekt veröffentlichten Sicherheitsupdates. Ein Distributions- oder Anbieter-Backport kann den Fix trotz abweichender sichtbarer Versionsnummer enthalten, muss aber durch die Sicherheitsmeldung oder das Changelog dieses Anbieters belegt sein. Selbst gepflegter Quellcode verlangt dagegen eigene Build-, Test- und Betriebsverantwortung; er ist kein gleichwertiger Ersatz für einen regulären Updatekanal.
PHP 8.1 und ältere Zweige erhalten keine regulären Upstream-Releases mehr. Für PHP 8.2 steht zwar ein korrigierter Patchstand bereit, der Zweig erreicht jedoch Ende 2026 sein Supportende. Nutze einen verfügbaren Fix für die akute Lage, plane bei alten oder auslaufenden Versionen aber zusätzlich eine getestete Migration auf einen länger unterstützten Zweig.
- Öffentlich erreichbare Dienste mit ungepatchter PHP-Laufzeit zuerst aktualisieren, besonders wenn Uploads oder Verwaltungsfunktionen erreichbar sind.
- Apache mit mod_php und geschäftskritische Shops, APIs oder Kundenportale unmittelbar danach behandeln; die offizielle Sicherheitsmeldung hebt für mod_php einen besonders kritischen Risikofokus hervor.
- Container, Appliances und Drittprodukte anhand von Images, Inventar und Herstellerstatus erfassen; fehlende sichtbare PHP-Pakete sind kein Entwarnungssignal.
- Nicht unterstützte oder nicht zeitnah patchbare Dienste isolieren und Zugriffe einschränken, parallel aber verbindlich Ersatz, Upgrade oder Migration planen.
Netzsegmentierung, VPN-Pflicht oder restriktive Zugriffsregeln können bei nicht sofort patchbaren Verwaltungsoberflächen Zeit gewinnen. Sie sind jedoch nur Übergangsmaßnahmen, weil interne Nutzerkonten, kompromittierte Geräte und falsch konfigurierte Freigaben weiterhin Angriffswege schaffen können. Wird für ein Produkt kein Fix angeboten oder ist der PHP-Zweig dauerhaft außerhalb des Supports, ist Ersatz oder Migration die belastbare Entscheidung.
Quellen und fachlicher Stand
Recherche-Stand:
Recherche-Stand: 22. Oktober 2026. Patchstände und Supportangaben beziehen sich auf die bereitgestellten PHP- und CERT-EU-Quellen; bei Distributionspaketen sind dokumentierte Sicherheits-Backports gesondert zu prüfen.
https://www.php.net/archive/2026.php
https://github.com/php/php-src/security/advisories/GHSA-w8hw-w9fx-j79w
https://cert.europa.eu/publications/security-advisories/2026-018/
https://www.php.net/supported-versions.php




