Shop-Sicherheit

PHP2Shell Lösung für Onlineshops: WooCommerce, Shopware & Magento jetzt absichern

Von Marvin de Vries · · Lesezeit ca. 9 Minuten

PHP2Shell Lösung für WooCommerce, Shopware und Magento

Fast jeder selbst betriebene Onlineshop in Deutschland läuft auf PHP. Genau dort sitzen die beiden kritischen Lücken mit dem Namen „PHP2Shell“. Angreifer können darüber ohne Kundenkonto oder Admin-Login Code auf dem Shop-Server ausführen, mit direktem Zugriff auf Bestellungen, Kundendaten und den Checkout. Die Lösung ist verfügbar. Dieser Beitrag zeigt, wie Sie Ihren Shop absichern, ohne unnötig Umsatz zu verlieren.

Was ist bei PHP passiert?

Am 20. Oktober 2026 kündigte das PHP-Projekt ein außerplanmäßiges Sicherheitsupdate an, nachdem Details zu zwei Lücken vorzeitig öffentlich geworden waren. Am 21. Oktober 2026 erschienen die Patches. Die erste Lücke (CVE-2026-109618) betrifft die Art, wie PHP reagiert, wenn einer Anfrage der Speicher ausgeht: Halb fertige interne Daten werden beim Aufräumen fälschlich als gültig behandelt. Die zweite (CVE-2026-109619) lässt Reste einer Anfrage im Speicher zurück, die eine spätere Anfrage im selben PHP-Prozess wiederverwendet.

Beides lässt sich laut PHP-Team aus der Ferne und ohne Anmeldung ausnutzen. CERT-EU, die Cybersicherheitsstelle der EU, empfiehlt sofortiges Patchen und, wo das nicht geht, betroffene Anwendungen vom Netz zu nehmen. Erste Proof-of-Concepts sind im Umlauf, Cloudflare meldete erste Angriffe.

Welche Shopsysteme sind von PHP2Shell betroffen?

Entscheidend ist nicht die Shopsoftware, sondern die PHP-Version darunter. Ein vollständig aktuelles WooCommerce auf einem ungepatchten PHP ist angreifbar.

PHP2Shell nach Shopsystem (Stand: 22.10.2026)
ShopsystemBetroffen?Wer muss handeln?
WooCommerce (WordPress)Ja, bei ungepatchtem PHPHoster bzw. Server-Admin. WordPress-Auto-Updates patchen PHP nicht
Shopware 5 / 6Ja, bei ungepatchtem PHPServer-Admin, Agentur oder Managed-Hoster
Magento 2 / Adobe Commerce (selbst gehostet)Ja, bei ungepatchtem PHPServer-Admin oder Agentur
JTL-Shop, OXID, Gambio, PrestaShopJa, bei ungepatchtem PHPServer-Admin oder Hoster
Adobe Commerce Cloud, Shopware SaaSPlattform-seitigAnbieter; Bestätigung einholen
ShopifyKein eigenes PHPEigene PHP-Zusatzsysteme (Apps, Landingpages, Middleware) prüfen

Gefährdet sind außerdem oft vergessene Systeme rund um den Shop: Warenwirtschafts-Schnittstellen, PIM-Systeme, Feed-Generatoren, Gutschein- oder Landingpage-Server und alte Staging-Shops. Das höchste Risiko sieht das PHP-Team bei Apache mit mod_php, betroffen sind aber auch PHP-FPM, php-cgi, FrankenPHP und LiteSpeed.

Warum Onlineshops besonders gefährdet sind

  • Wertvolle Daten: Namen, Adressen, Bestellhistorien und Zugangsdaten zu Zahlungs- und Versanddienstleistern liegen auf oder hinter dem Shop-Server.
  • Checkout-Skimming: Wer Code ausführen kann, kann unbemerkt Skripte in den Checkout einschleusen, die Zahlungsdaten mitlesen.
  • Upload-Funktionen: Viele Shops nehmen Dateien oder große Formulare an (Retouren, Bewertungen, Importe). Genau solche Anfragen spielen bei CVE-2026-109618 eine Rolle.
  • Ausfall kostet Umsatz: Ein vom Netz genommener Shop verkauft nicht. Darum lohnt es sich, das Update geplant, aber schnell umzusetzen.

Anleitung: PHP2Shell im Onlineshop beheben

Die einzige vollständige PHP2Shell-Lösung ist ein gepatchtes PHP. So setzen Sie das im Shop-Betrieb sauber um.

Schritt 1: Alle Shop-Systeme und PHP-Versionen erfassen

Erfassen Sie Live-Shop, Staging, Schnittstellenserver und Nebensysteme. Prüfen Sie jeweils die PHP-Version, die der Webserver ausliefert. php -v auf der Kommandozeile kann abweichen.

# PHP-FPM-Version (Debian/Ubuntu, Beispiel PHP 8.3)
php-fpm8.3 -v

# Installierte PHP-Pakete
dpkg -l | grep -E '^ii\s+php'   # Debian/Ubuntu
rpm -qa | grep -E '^php'        # RHEL/AlmaLinux

Bei WooCommerce zeigt WooCommerce → Status → Systemstatus die PHP-Version, mit der die Website tatsächlich läuft.

Schritt 2: Wartungsfenster festlegen und Backup ziehen

Ein Patch-Update innerhalb desselben PHP-Zweigs (z. B. 8.3.x auf 8.3.36) ist in der Regel unkritisch und dauert nur Minuten. Legen Sie trotzdem ein vollständiges Backup von Dateien und Datenbank an und wählen Sie, wenn möglich, eine umsatzschwache Uhrzeit. Bei akuter Gefahr hat das Update aber Vorrang vor dem perfekten Zeitpunkt.

# Wartungsmodus aktivieren
bin/magento maintenance:enable                       # Magento 2
bin/console sales-channel:maintenance:enable --all   # Shopware 6
# WooCommerce: Wartungsseite über Webserver oder Wartungs-Plugin

Schritt 3: PHP aktualisieren

# Debian/Ubuntu
sudo apt update && sudo apt install --only-upgrade 'php*'

# RHEL/AlmaLinux/Rocky
sudo dnf upgrade 'php*'

# Docker
docker compose build --pull --no-cache && docker compose up -d

Bei Shared oder Managed Hosting übernimmt das Ihr Hoster. Lassen Sie sich schriftlich bestätigen, dass die Fixes für CVE-2026-109618 und CVE-2026-109619 aktiv sind.

Schritt 4: PHP-FPM, Webserver und Shop-Worker neu starten

Erst der Neustart lädt das neue PHP. Bei Shops gehören dazu auch Hintergrundprozesse, damit keine alten Binärdateien weiterlaufen.

sudo systemctl restart php8.3-fpm   # Version anpassen
sudo systemctl restart apache2      # bzw. httpd, lsws (LiteSpeed)

# Shopware 6: Message-Queue-Worker neu starten (z. B. per Supervisor)
sudo supervisorctl restart all

# Magento 2: Consumer/Cron laufen per CLI und starten beim nächsten Lauf neu

Schritt 5: Shop testen und Wartungsmodus beenden

Testen Sie Startseite, Suche, Warenkorb, Checkout mit einer Testbestellung, Kundenlogin und Backend. Prüfen Sie erneut die ausgelieferte PHP-Version.

bin/magento maintenance:disable                       # Magento 2
bin/console sales-channel:maintenance:disable --all   # Shopware 6

Schritt 6: Fix bei Distributionspaketen nachweisen

Linux-Distributionen spielen den Fix oft als Backport ein, ohne die Versionsnummer zu ändern. Prüfen Sie das Changelog:

apt changelog php8.3-fpm | grep -E 'CVE-2026-10961(8|9)'     # Debian/Ubuntu
rpm -q --changelog php-common | grep -E 'CVE-2026-10961(8|9)'  # RHEL/AlmaLinux

Schritt 7: Veraltete PHP-Versionen migrieren

Läuft Ihr Shop noch auf PHP 8.1 oder älter, gibt es vom PHP-Projekt kein offizielles Update mehr, nur Backports einiger Distributionen und minimale Quellcode-Patches. PHP 8.2 erreicht am 31.12.2026 sein Supportende. Ein Wechsel auf PHP 8.3 oder 8.4 erfordert bei älteren Shopware-, Magento- oder WooCommerce-Installationen häufig auch ein Update von Shopsoftware, Theme und Plugins. Prüfen Sie die Systemanforderungen Ihrer Shopversion und testen Sie den Umstieg auf einer Staging-Umgebung.

Notfallplan, wenn das Update warten muss

Wenn Sie heute nicht patchen können, ist ein Wartungsmodus auf Webserver-Ebene oder der Zugriff nur über VPN bzw. freigegebene IP-Adressen die sicherste Option. Ein Wartungsmodus innerhalb des Shops genügt dabei nicht, weil PHP trotzdem jede Anfrage verarbeitet und die Lücke greifen kann, bevor Shop-Code läuft.

Als zusätzliche Schadensbegrenzung nennt das PHP-Projekt unter anderem diese Einstellungen. Sie machen den Shop nicht sicher:

; php.ini oder FPM-Pool (als php_admin_value, nicht per ini_set oder .user.ini)
session.upload_progress.enabled = 0   ; CVE-2026-109619, bekannte Session-Pfade
fatal_error_backtraces = 0            ; nur PHP 8.5
post_max_size = 32M                   ; 8M, wenn der Shop keine Uploads braucht
upload_max_filesize = 24M             ; immer unter post_max_size
  • Anfragegröße, Formularfelder, Multipart-Teile und Header im Webserver oder Proxy begrenzen.
  • Fatale Fehler und Timeouts beheben, die von außen auslösbar sind, etwa in Import-, Upload- oder Callback-Routinen von Zahlungsanbietern.
  • Eine WAF wie Cloudflare vorschalten. Cloudflare bezeichnet seine Regeln selbst als Übergangslösung.

Nach jeder Änderung alle PHP-Worker neu starten.

Checkout und Kundendaten nach dem Patch prüfen

Das Update schließt die Tür, entfernt aber keine bereits eingeschleuste Hintertür. Prüfen Sie deshalb gezielt die Stellen, die Angreifer bei Shops bevorzugen:

  • Checkout-Seite: Im Browser (Entwicklertools → Netzwerk) prüfen, ob unbekannte Skripte oder Domains geladen werden.
  • Magento: Konfigurationsfelder für eigene Skripte im Kopf- und Fußbereich (z. B. design/head/includes, design/footer/absolute_footer in core_config_data) kontrollieren.
  • WooCommerce: Ordner wp-content/mu-plugins, neue Administratoren und ungewohnte Plugins prüfen.
  • Shopware: Theme-Dateien und Plugin-Verzeichnisse mit dem Stand im Git-Repository vergleichen.
  • Server: Neue PHP-Dateien seit dem 19.10.2026 suchen, etwa mit find /var/www -name "*.php" -newermt "2026-10-19", und Zugriffslogs auf auffällige POST-Anfragen prüfen.

Bei Verdacht: API-Schlüssel von Zahlungs-, Versand- und ERP-Schnittstellen sowie alle Passwörter erneuern, sauberes Backup einspielen, den Zahlungsdienstleister informieren und die Meldepflicht nach DSGVO prüfen.

Fazit: Schnell patchen, sauber testen, Checkout kontrollieren

PHP2Shell ist für Onlineshops ernst, aber beherrschbar. Die Lösung besteht aus drei Teilen: PHP aktualisieren und alle Prozesse neu starten, den Shop testen und anschließend prüfen, ob schon etwas eingeschleust wurde. Langfristig schützt vor allem ein Shop, der regelmäßig gewartet wird und nicht auf veralteten PHP-Versionen festhängt.

Als E-Commerce Agentur aus Hamburg entwickeln und betreuen wir seit 2011 Shops mit WooCommerce, Shopware und Magento. Wenn Sie Unterstützung beim Update, bei der Migration auf eine aktuelle PHP-Version oder bei der laufenden Betreuung Ihres Shops brauchen, sprechen Sie uns an.

Häufige Fragen zu PHP2Shell im Onlineshop

Wie behebe ich PHP2Shell in meinem Onlineshop?

Aktualisieren Sie PHP auf 8.5.12, 8.4.27, 8.3.36 oder 8.2.35 bzw. auf das gepatchte Distributionspaket, starten Sie PHP-FPM, Webserver und Shop-Worker neu und testen Sie den Checkout.

Ist mein WooCommerce-Shop betroffen, wenn WordPress aktuell ist?

Ja, sofern PHP nicht gepatcht ist. Die Lücke steckt in PHP. WordPress- und WooCommerce-Updates aktualisieren PHP nicht.

Sind Shopify-Shops betroffen?

Shopify-Händler betreiben kein eigenes PHP. Prüfen sollten Sie aber eigene PHP-Zusatzsysteme wie Schnittstellen, Landingpages oder Middleware.

Muss ich meinen Shop offline nehmen?

Nur wenn Sie nicht zeitnah patchen können. CERT-EU empfiehlt in diesem Fall, internetfähige Anwendungen bis zum Update vom Netz zu trennen. Ein Shop-interner Wartungsmodus reicht dafür nicht.

Muss ich nach PHP2Shell meine Kunden informieren?

Nur wenn es Hinweise auf einen tatsächlichen Zugriff auf personenbezogene Daten gibt. Dann sind die Meldepflichten der DSGVO zu prüfen, idealerweise mit Ihrem Datenschutzbeauftragten.

Funktioniert mein Shop nach dem PHP-Update noch?

Ein Patch innerhalb desselben PHP-Zweigs ist in der Regel kompatibel. Ein Wechsel auf einen neuen Zweig, etwa von 8.1 auf 8.3, sollte vorher auf einer Staging-Umgebung getestet werden.

Quellen

  • PHP-Projekt: Security advisory und Releases vom 21.10.2026, php.net
  • CERT-EU: Security Advisory 2026-018, cert.europa.eu
  • it-daily.net: „Behörde warnt vor PHP-Beben: Seiten notfalls vom Netz nehmen“, 21.10.2026, it-daily.net
  • heise online: „php2shell: Kritische Sicherheitslücken erlauben Codeeinschleusung in PHP“, heise.de
  • NCSC-NL: Liste betroffener Drittsoftware, github.com/NCSC-NL/php2shell
  • AlmaLinux: Backports und Paketversionen, almalinux.org

Alle Quellen abgerufen am 22. Oktober 2026. Dieser Beitrag wird bei neuen Erkenntnissen aktualisiert.

Marvin de Vries

Marvin de Vries ist Geschäftsführer von ADence und der E-Commerce Agentur Hamburg. Seit 2011 entwickelt und betreut er mit seinem Team Onlineshops auf WooCommerce, Shopware und Magento, vom Aufbau bis zum sicheren Betrieb. Marvin de Vries auf LinkedIn

Shop absichern lassen?

Im kostenlosen Erstgespräch klären wir, welche PHP-Version Ihr Shop nutzt und welche Schritte jetzt sinnvoll sind.