Nicht php.net · Nicht NVD · Nicht CISA

PHP-Sicherheitslücken-Tracker

Inoffizielles Briefing zu Sicherheitslücken in PHP

English简体中文日本語DeutschFrançaisNederlandsEspañol

Sicherheitswarnung

PHP2Shell: PHP aktualisieren. Nur das behebt die Lücke vollständig.

CVE-2026-109618 und CVE-2026-109619 sind kritische Schwachstellen in PHP selbst, die Remote-Code-Ausführung ohne Authentifizierung erlauben. Das PHP-Projekt hat am 21. Oktober 2026 Updates für die unterstützten Zweige 8.2 bis 8.5 veröffentlicht. Starten Sie PHP nach dem Update neu. Eine Firewall ersetzt das Update nicht.

Schritte zur Behebung

Abhilfe

PHP2Shell beheben: PHP aktualisieren und Worker neu starten

PHP-Projekt, AWS und CISA sind sich im operativen Punkt einig: Nur ein Upgrade behebt CVE-2026-109618 und CVE-2026-109619 vollständig. Die Befehle unten zeigen die übliche Form dieser Arbeit. Paketversionen hängen vom Hinweis Ihrer Distribution ab. Eine CLI, die eine gepatchte Version ausgibt, beweist nicht, dass der Pool hinter Ihrer Website mit dieser Binärdatei neu gestartet wurde.

Zuletzt aktualisiert

Zielversionen

Quell-Tarballs und Windows-Builds finden Sie auf der PHP-Downloadseite. Laut php.net haben Linux-Distributionen und LTS-Anbieter die Patches vor dem öffentlichen Release erhalten, daher ist das Distributionspaket oft der richtige Weg. Derselbe Hinweis sagt, das ehrenamtliche Remi-Repository (rpms.remirepo.net) habe die Updates am 21. Oktober nicht, und rät dessen Nutzern zu Distributionspaketen oder eigenem Build.

Debian, Ubuntu und andere apt-Systeme

Debian hat Fixes veröffentlicht: DLA-4848-1 (Debian LTS) für Debian 12 bookworm, php8.2 8.2.35-1~deb12u1, und DSA-6574-1 für Debian 13 trixie, php8.4 8.4.27-1~deb13u1. Der Security-Tracker führt die Builds der Basis-Suite (bookworm php8.2 8.2.32-1~deb12u1, trixie php8.4 8.4.24-1~deb13u1) als verwundbar; der Fix kommt also nur an, wenn die Security-Suite in Ihren Paketquellen steht. Am 22. Oktober führte der Tracker testing (forky) php8.4 8.4.26-1 weiterhin als verwundbar.

Aktualisieren Sie die Metadaten und installieren Sie die tatsächlich veröffentlichten PHP-Pakete. Die Namen folgen dem Minor-Zweig (php8.3-fpm, php8.3-cli, php8.3-common sowie das Apache-Modulpaket bei mod_php). Liegt die Kandidatenversion noch unter dem Fix, warten Sie auf die Distribution, nicht auf eine fehlende Option.

Beispielhafter apt-Ablauf für die 8.3-Pakete. Prüfen Sie, ob die Kandidatenversion 8.3.36 oder neuer ist, bevor Sie fertig sind.
sudo apt-get update
apt-cache policy php8.3-cli php8.3-fpm php8.3-common
sudo apt-get install --only-upgrade php8.3-cli php8.3-fpm php8.3-common
php8.3 -v
# Web SAPI, not just the CLI:
php-fpm8.3 -v
sudo systemctl restart php8.3-fpm
# If Apache loads mod_php, restart Apache as well:
sudo systemctl restart apache2

RHEL, Alma, Rocky, Fedora: dnf oder yum

Beispielhafter dnf-Ablauf. Auf älteren Derivaten folgt yum update php php-fpm php-cli derselben Idee. Für die Versionsangabe gilt das Errata des Herstellers.
sudo dnf clean expire-cache
sudo dnf update php php-cli php-fpm php-common
php -v
php-fpm -v
sudo systemctl restart php-fpm
# mod_php under httpd:
sudo systemctl restart httpd

Docker und andere Images

Neu bauen und neu ausrollen. Ein neues Basis-Image zu ziehen, bewirkt nichts, bis der Workload, der Verkehr bedient, ersetzt ist. Offizielle Image-Tags folgen meist der PHP-Version; prüfen Sie auf Docker Hub, ob der Tag existiert, bevor Sie ihn festlegen. Google Clouds Hinweis zu Cloud Run und GKE ist derselbe: das ausgerollte Image neu bauen, außer bei einem serverlosen Basis-Image, das Google laut eigener Aussage selbst ersetzt.

Gepatchten Tag festlegen, neu bauen und den Dienst austauschen. Der apache-Tag ist das offizielle Image im mod_php-Stil; nutzen Sie die Variante, die Sie bereits verwenden.
FROM php:8.3.36-fpm
# or: php:8.3.36-apache, php:8.4.27-fpm, php:8.2.35-fpm, php:8.5.12-cli

# then, on the host:
# docker pull php:8.3.36-fpm
# docker build -t your-app:php2shell-fix .
# redeploy and confirm the running container's PHP version

cPanel

  1. Aktualisieren Sie cPanel selbst, damit EasyApache einen gepatchten PHP-Build anbietet. Menüs ändern sich; maßgeblich ist die cPanel-Dokumentation.
  2. Öffnen Sie in WHM EasyApache 4 und stellen Sie eine PHP-Version auf oder über dem Fix des Zweigs bereit. Im MultiPHP Manager weisen Sie Domains eine PHP-Version zu.
  3. Nehmen Sie öffentlich erreichbare Domains von Handlern mit PHP 8.1 oder älter, sofern Ihr Anbieter nicht bestätigt hat, dass der Build den Backport enthält.
  4. Starten Sie Apache und PHP-FPM über WHM neu, prüfen Sie die PHP-Version einer Domain und entfernen Sie temporäre Testseiten.

Plesk

  1. Installieren Sie Plesk- und Systempaket-Updates. Den aktuellen Klickpfad beschreibt die Plesk-Dokumentation.
  2. Prüfen Sie unter Tools & Einstellungen die Updates und die Liste der PHP-Handler. Die PHP-Einstellungen der Domain zeigen, welche Version ein Abonnement tatsächlich nutzt.
  3. Wählen Sie einen gepatchten Handler (8.2.35, 8.3.36, 8.4.27 oder 8.5.12 oder einen geprüften Anbieter-Build). Wenden Sie ihn zuerst auf öffentliche Websites an.
  4. Starten Sie den von Plesk genutzten PHP-Dienst neu und prüfen Sie die Version an der Domain, nicht nur am Panel-Host.

宝塔面板 (BT Panel)

Laut 宝塔-Hinweis vom 22. Oktober 2026 haben die Linux- und Windows-Panels 8.2.35, 8.3.36, 8.4.27 und 8.5.12 synchronisiert. Die nur für Linux angebotenen Pakete 7.4.34, 8.0.31 und 8.1.35 sind 宝塔-Builds, keine Releases des PHP-Projekts. Klickpfad und die unvollständige Windows-Einstellung stehen auf der BT-Panel-Seite.

mod_php im Vergleich zu PHP-FPM

Beide stehen auf der Risikoliste des PHP-Projekts. mod_php gilt als höchstes Risiko, weil der demonstrierte Pfad ohne Authentifizierung vor dem Anwendungscode greift. Ein Apache-Neustart lädt mod_php neu. PHP-FPM ist ein eigener Prozess: Starten Sie jeden Pool neu (systemctl restart php8.3-fpm oder die entsprechende Unit) und bedenken Sie, dass Pools eine eigene Binärdatei festlegen können. php im PATH Ihrer Shell kann ein anderer Build sein als der Pool. FrankenPHP, php-cgi und LiteSpeed nennt PHP als Webanfragen bedienend und damit betroffen; folgen Sie deren Upgrade-Anleitungen, statt anzunehmen, ein apt-Paket php-fpm decke sie ab.

Vorläufige Maßnahmen, laut PHP unvollständig

Nutzen Sie diese nur als Übergang, übernommen aus dem php.net-Hinweis. Sie verringern bestimmte Pfade und machen einen Host nicht sicher. Setzen Sie sie in php.ini oder in einer Pool- bzw. Apache-Einstellung auf Admin-Ebene (php_admin_value). ini_set() und verzeichnisweise .user.ini greifen laut PHP für den Session-Upload-Pfad zu spät.

CVE-2026-109618

CVE-2026-109619

Web Application Firewalls

Die CISA sagt, eine Web Application Firewall könne bis zum Update einen gewissen Schutz bieten. Cloudflare sagt, verwaltete Regeln für dieses Problem seien ab dem 21. Oktober 2026, 03:02 UTC, für Kunden mit kostenlosen und kostenpflichtigen WAF-Tarifen aktiv gewesen, noch unter Embargo mit der PHP Foundation und anderen entwickelt, und Kunden sollten trotzdem patchen. Eine Regel kann umgangen werden; Cloudflare beobachtete selbst, wie Angreifer Payloads anpassten. Behalten Sie die WAF, aber nutzen Sie sie nicht als Fix.

Nach dem Upgrade

Quellen

Externe Links verlassen diese Website. Wir hosten keinen Exploit-Code.

  1. News archive 2026: security advisory, 21 October 2026 — PHP project (php.net)
  2. PHP downloads — PHP project (php.net)
  3. Today’s PHP security release, and how we’re strengthening PHP security — The PHP Foundation
  4. Critical vulnerabilities in PHP require immediate patching (21 October 2026) — CISA
  5. Amazon Threat Intelligence identifies PHP2Shell exploitation prior to public disclosure in MadPot — AWS Security Blog
  6. Cloudflare deploys protections against php2shell vulnerability — Cloudflare
  7. Critical security issue affecting PHP — UK NCSC
  8. Notice: php2shell, critical PHP vulnerabilities (status as of 21 October 2026, 20:00 UTC) — Expel
  9. Responding to core PHP vulnerabilities CVE-2026-109618 and CVE-2026-109619 — Google Cloud
  10. php image on Docker Hub — Docker Official Images
  11. DLA-4848-1: php8.2 security update (Debian 12 bookworm) — Debian LTS
  12. DSA-6574-1: php8.4 security update (Debian 13 trixie) — Debian
  13. cPanel documentation — cPanel
  14. Plesk documentation — Plesk
  15. PHP 与 Node.js 紧急安全更新公告(更新于 2026-10-22) — 宝塔面板 (BT Panel)
  16. php2shell product-inventory notes — NCSC-NL