Crmgo Blog

PHP2Shell: Kritische Schwachstellen in PHP (CVE-2026-109618, CVE-2026-109619) — Sofort auf 8.5.12, 8.4.27, 8.3.36, 8.2.35 aktualisieren

PHP2Shell: Kritische Schwachstellen in PHP (CVE-2026-109618, CVE-2026-109619) — Sofort auf 8.5.12, 8.4.27, 8.3.36, 8.2.35 aktualisieren

Am 21. Oktober 2026 veröffentlichte PHP Notfallupdates 8.5.12, 8.4.27, 8.3.36 und 8.2.35. Sie beheben zwei kritische Sicherheitslücken (CVSS 9.2), die eine Remote-Code-Ausführung ohne Authentifizierung auf PHP-FPM, mod_php, php-cgi, FrankenPHP und LiteSpeed ermöglichen.

PHP2Shell: Kritische Schwachstellen in PHP (CVE-2026-109618, CVE-2026-109619) — Sofort auf 8.5.12, 8.4.27, 8.3.36, 8.2.35 aktualisieren

Am 21. Oktober 2026 hat das PHP-Team dringende Sicherheitsupdates PHP 8.5.12, 8.4.27, 8.3.36 und 8.2.35 veröffentlicht. Sie schließen zwei kritische Schwachstellen, die eine unauthentifizierte Remote-Codeausführung ermöglichen: CVE-2026-109618 und CVE-2026-109619. Beide haben eine Bewertung von CVSS v4.0 9.2. In den Medien werden sie zusammen als PHP2Shell bezeichnet.

Was ist passiert

Beide Schwachstellen hängen damit zusammen, dass PHP den Speicher in einem beschädigten Zustand zurücklassen kann, wenn eine Anfrage fehlerhaft endet:

  • CVE-2026-109618 (GHSA-w8hw-w9fx-j79w): RCE durch Speicherbeschädigung bei Speichermangel (OOM). Wenn eine Anfrage im ungünstigen Moment das memory_limit erreicht, bleiben die internen Daten der Anfrage nur teilweise initialisiert. Beim Aufräumen der Anfrage kann PHP sie für korrekt halten. Auf Apache mit mod_php lässt sich der Angriff mit einer unauthentifizierten Anfrage noch vor der Ausführung des Anwendungscodes auslösen. Laut der PHP Foundation wurde die vollständige Remote-Codeausführung mit Standardeinstellungen demonstriert. Bei PHP-FPM wurde RCE über Codepfade der Anwendung bestätigt.
  • CVE-2026-109619 (GHSA-6wmf-4rv5-p3rp): RCE durch „veralteten" globalen Zustand. Ein fataler Fehler im ungünstigen Moment kann einen internen Zustand hinterlassen, der auf bereits freigegebenen Speicher der vorherigen Anfrage verweist. Die nächste Anfrage im selben Worker kann diesen Speicher nutzen (Use-after-free). Folgen: Offenlegung von Daten aus dem Speicher, Absturz des Workers und Codeausführung.

Wen betrifft es

Laut dem PHP-Team sind alle PHP-Installationen, die Webanfragen bedienen, gefährdet: PHP-FPM, Apache mit mod_php, php-cgi, FrankenPHP und LiteSpeed. Das höchste Risiko besteht bei mod_php.

Betroffene Versionen (laut AWS-Bulletin):

  • PHP 8.5.0–8.5.11: behoben in 8.5.12
  • PHP 8.4.0–8.4.26: behoben in 8.4.27
  • PHP 8.3.0–8.3.35: behoben in 8.3.36
  • PHP 8.2.0–8.2.34: behoben in 8.2.35
  • PHP 8.1 und älter werden vom PHP-Projekt nicht mehr unterstützt. Das PHP-Sicherheitsteam hat minimale Backports des Quellcodes für 7.4, 8.0 und 8.1 veröffentlicht. Prüfen Sie auch die Updates Ihrer Distribution oder Ihres LTS-Anbieters.

Die Korrekturen sind auch in den Test-Build PHP 8.6.0 RC4 eingeflossen.

Wie ernst ist das

PHP läuft auf den meisten Websites weltweit, darunter WordPress, Joomla, Drupal, Laravel und Symfony. Laut BleepingComputer hat Cloudflare bereits vor der Veröffentlichung der Patches erste Angriffsversuche festgestellt und vorübergehende WAF-Regeln ausgerollt. Das britische NCSC hat dazu aufgerufen, sofort zu aktualisieren oder gefährdete Systeme vorübergehend abzuschalten. Die PHP-Entwickler betonen, dass es keine vollwertigen Umgehungslösungen gibt: Zuverlässig schützt nur das Update.

Was jetzt zu tun ist

  1. Prüfen Sie die PHP-Version. Führen Sie in der Konsole php -v aus. Für den Webserver kann die Version abweichen, prüfen Sie sie daher über phpinfo() oder im Hosting-Panel. Für FPM führen Sie php-fpm -v aus (oder zum Beispiel php-fpm8.3 -v).
  2. Aktualisieren Sie auf 8.5.12, 8.4.27, 8.3.36 oder 8.2.35. Installieren Sie unter Linux die aktualisierten Pakete Ihrer Distribution (die Distributionen haben die Patches vorab erhalten), zum Beispiel apt update && apt upgrade oder dnf upgrade php*.
  3. Starten Sie alle Worker von PHP-FPM, Apache und anderen SAPIs neu. Bauen Sie Docker-Images neu und stellen Sie sie erneut bereit.
  4. Wenn Sie PHP 8.1 oder älter verwenden, planen Sie die Migration auf einen unterstützten Zweig. Beachten Sie außerdem, dass der Support für PHP 8.2 am 31. Dezember 2026 endet.

Vorübergehende Maßnahmen, falls ein sofortiges Update nicht möglich ist (sie verringern nur das Risiko, beseitigen es aber nicht):

  • Für CVE-2026-109618: Setzen Sie memory_limit=-1 über php_admin_value, damit die Anwendung diesen Wert nicht ändern kann. Reduzieren Sie post_max_size auf 8M (oder auf 32M, falls Datei-Uploads erforderlich sind). Begrenzen Sie Größe und Komplexität der Anfragen auf Ebene des Webservers oder Proxys.
  • Für CVE-2026-109619: Setzen Sie session.upload_progress.enabled=0 in der php.ini oder in der FPM-Pool-Konfiguration und starten Sie die Worker neu. Unter PHP 8.5 setzen Sie zusätzlich fatal_error_backtraces=0.

Quellen

Wir aktualisieren Ihr Projekt auf die neue PHP-Version

Das Team von CRM Go aktualisiert Kundenprojekte auf die aktuellen geschützten PHP-Versionen. Wir prüfen die Code-Kompatibilität, aktualisieren Abhängigkeiten und Frameworks, testen das Projekt und stellen das Update ohne Ausfallzeit der Website bereit. Wenn Sie nicht sicher sind, ob Ihr Server bereits vor PHP2Shell geschützt ist, schreiben Sie uns, und wir helfen Ihnen.

Hinweis: Dieser Beitrag kann KI-unterstützt erstellt und anschließend redaktionell geprüft worden sein. Verantwortlich: Dmytro Lomaka, Kaltenkirchen.