Kritische PHP-Sicherheitslücke: jetzt auf 8.5.12, 8.4.27, 8.3.36 oder 8.2.35 aktualisieren
Am 21. Oktober 2026 hat das PHP-Team Sicherheitsupdates für alle unterstützten Versionen veröffentlicht. Sie schließen zwei Lücken, über die Angreifer ohne Anmeldung Code auf dem Server ausführen können. Das Update hat Vorrang vor allem anderen.
Was passiert ist
Die beiden Lücken (CVE-2026-109618 und CVE-2026-109619) sind mit CVSS 9.2 bewertet. Beide sitzen in der Request-Verarbeitung von PHP selbst, also vor dem eigenen Anwendungscode. Ein Framework wie Symfony oder Laravel schützt deshalb nicht davor.
- CVE-2026-109618: Wenn PHP während eines Requests der Speicher ausgeht, können interne Daten halb initialisiert bleiben und beim Aufräumen als gültig behandelt werden.
- CVE-2026-109619: Interner Zustand eines Requests kann nach dem Freigeben des Speichers übrig bleiben und vom nächsten Request desselben Workers verwendet werden.
Wer betroffen ist
Jede PHP-Installation, die Web-Requests verarbeitet: PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed. Am höchsten schätzt das PHP-Team das Risiko bei mod_php ein. Dort gibt es einen nachgewiesenen Exploit, der ohne Anmeldung funktioniert.
Was du jetzt tun solltest
- PHP aktualisieren auf 8.5.12, 8.4.27, 8.3.36 oder 8.2.35. Linux-Distributionen und LTS-Anbieter hatten die Patches vorab, die Pakete sollten also bereitstehen.
- Alle Worker neu starten (PHP-FPM, Apache, FrankenPHP), damit die neue Version tatsächlich läuft. Mit php -v auf der Kommandozeile sieht man nur die CLI-Version, nicht unbedingt die des Webservers.
- Container-Images neu bauen und ausrollen, auch wenn sich am Code nichts geändert hat.
- Wer PHP aus rpms.remirepo.net bezieht: Das PHP-Team rät, auf die Pakete der Distribution umzusteigen oder selbst zu bauen, weil das Repository die Updates nicht sofort hatte.
Wenn das Update nicht sofort geht
Das PHP-Team nennt Einstellungen, die einzelne Angriffswege erschweren. Sie machen die Installation ausdrücklich nicht sicher und überbrücken nur die Zeit bis zum Update:
- session.upload_progress.enabled=0 in php.ini oder im FPM-Pool setzen (nicht per ini_set() oder .user.ini) und alle Worker neu starten.
- Unter PHP 8.5 zusätzlich fatal_error_backtraces=0 setzen.
- post_max_size niedrig halten (8M ohne Datei-Uploads, sonst 32M) und Request-Größen schon am Webserver oder Proxy begrenzen.
PHP 8.1 und älter
PHP 8.1 und ältere Versionen bekommen vom PHP-Projekt keine Updates mehr. Wegen der Schwere hat das PHP-Team diesmal trotzdem minimale Patches für 7.4, 8.0 und 8.1 bereitgestellt, allerdings nur als Quellcode zum Selbstbauen. Manche Distributionen und LTS-Anbieter liefern Backports.
Das ist eine Ausnahme, auf die man sich beim nächsten Mal nicht verlassen kann. Spätestens jetzt lohnt sich ein Plan für die Migration auf eine unterstützte Version. Auch PHP 8.2 läuft am 31. Dezember 2026 aus. Welche Versionen noch unterstützt werden, steht auf php.net/supported-versions.php.
Quellen
- php.net: Security advisory vom 21. Oktober 2026
- GHSA-w8hw-w9fx-j79w (CVE-2026-109618)
- GHSA-6wmf-4rv5-p3rp (CVE-2026-109619)
- php.net: Unterstützte Versionen
Passende Leistungen: PHP-Migration Symfony-Wartung