Shopware absichern: 12 Punkte, die jeder Shop umsetzen sollte
Interaktive Checkliste: Haken setzen, Stand bleibt in Ihrem Browser. Die meisten erfolgreichen Angriffe auf Shops nutzen keine raffinierte Lücke, sondern schwache Passwörter, veraltete Versionen und fehlende Backups. Diese zwölf Punkte decken das ab, was ich bei jedem Shop als Erstes prüfe – unabhängig davon, ob Shopware 5 oder 6 läuft.
Zugänge: Punkte 1 bis 3
- 1. Starke, individuelle Admin-Passwörter. Jede Person bekommt einen eigenen Benutzer mit eigenem Passwort aus einem Passwort-Manager. Geteilte Logins wie „admin / Firma2024“ sind der häufigste Einstiegspunkt, den ich sehe. Ausgeschiedene Mitarbeiter und ehemalige Agenturen werden sofort entfernt.
- 2. Zwei-Faktor-Authentifizierung (2FA). Shopware 6 bringt nach meinem Stand keine native 2FA für die Administration mit; eine entsprechende Anfrage im Shopware-Feedback-Portal wurde 2026 mit Verweis auf geringe Nachfrage geschlossen. Es gibt Erweiterungen im Shopware Store und aus der Community, die 2FA für Admin-Benutzer nachrüsten. Prüfen Sie vor der Installation, ob das Plugin für Ihre Shopware-Version freigegeben ist. Wenn 2FA nicht möglich ist, wird Punkt 8 umso wichtiger.
- 3. Rollen und Rechte. Shopware 6 bietet unter Einstellungen > System > Benutzer & Berechtigungen eine Rechteverwaltung. Wer nur Bestellungen bearbeitet, braucht keinen Zugriff auf Plugins, Einstellungen oder Benutzer. Der Aufwand, Rollen einmal sauber anzulegen, ist gering – der Schaden durch einen kompromittierten Vollzugriff nicht.
Software aktuell halten: Punkte 4 bis 5
- 4. Updates und Sicherheitspatches. Shopware veröffentlicht Sicherheitsupdates in einer eigenen Kategorie seiner Dokumentation; die Lücken erscheinen zusätzlich als Advisories auf GitHub und Packagist. Bei Composer-Installationen zeigt
composer auditbekannte Lücken in allen installierten Paketen – auch in Abhängigkeiten wie Symfony oder Twig, die das Security-Plugin nicht abdeckt. Welche Shopware-Versionen überhaupt noch Sicherheitsupdates erhalten, finden Sie auf der Seite Versionen und Support-Ende. - 5. Das Shopware Security-Plugin. Für Shopware 6 stellt Shopware ein kostenloses Security-Plugin (
SwagPlatformSecurity) bereit, das Sicherheitsfixes in bestehende Installationen zurückportiert. Es gibt Plugin-Linien für 6.5, 6.6 und 6.7; die Linie für 6.4 wird nicht mehr gepflegt. Shopware empfiehlt, das Plugin auch auf aktuellen Versionen installiert, aktiviert und auf dem neuesten Stand zu halten. Zwei Einschränkungen: Es ersetzt keine Updates, und es verlängert nicht den Support abgelaufener Versionen. Installation per Composer:
composer require store.shopware.com/swagplatformsecurity bin/console plugin:refresh bin/console plugin:install --activate SwagPlatformSecurity bin/console cache:clear
Für Shopware 5 gilt: Die Entwicklung wurde Ende Juli 2024 eingestellt; seitdem gibt es laut Shopware keine aktiven Sicherheitsfixes mehr. Das frühere Shopware-5-Sicherheitsplugin ist damit keine dauerhafte Lösung: Laut Changelog im Store stammt die letzte Version 1.1.40 aus dem Juli 2023. Ein unabhängiger Anbieter (Safefive) bietet kostenpflichtige Weiterpflege an. Wer noch auf Shopware 5 ist, sollte den Umstieg planen – mehr dazu auf der Seite Shopware-5-Support.
Server und Konfiguration: Punkte 6 bis 9
- 6. Backups mit Wiederherstellungstest. Tägliche Backups von Datenbank und Dateien, aufbewahrt an einem anderen Ort als der Shop-Server. Entscheidend ist der Test: Einmal pro Quartal ein Backup auf einem Staging-System einspielen und prüfen, ob der Shop läuft. Ich habe mehr als einmal erlebt, dass das Backup existierte, aber unvollständig war.
- 7. Dateirechte und Umgebung. Der Webserver-Benutzer sollte nur dort schreiben dürfen, wo Shopware schreiben muss (
var/,public/media/,public/thumbnail/,files/); der Code selbst bleibt schreibgeschützt. Die.enventhält Datenbank-Zugangsdaten und darf nicht über den Webserver abrufbar sein. In der.envmussAPP_ENV=prodstehen – im Modusdevzeigt Shopware ausführliche Fehlerseiten mit Pfaden und Konfigurationsdetails, die Angreifern helfen. Ebenso gehörtAPP_DEBUGauf einem Produktivsystem nicht aktiviert. - 8. Admin-Zugang einschränken. Die Administration liegt bei Shopware 6 unter
/admin. Wenn Ihr Team von festen Standorten oder über VPN arbeitet, beschränken Sie den Pfad im Webserver auf diese IP-Adressen. Alternativ eine zusätzliche HTTP-Basic-Authentifizierung davor. Die API unter/apibrauchen Schnittstellen wie Warenwirtschaft oder Zahlungsanbieter – dort nicht pauschal sperren, sondern über Punkt 11 absichern. - 9. TLS und HSTS. Ein gültiges Zertifikat ist Standard; prüfen Sie zusätzlich, dass HTTP-Aufrufe auf HTTPS umgeleitet werden und der Header
Strict-Transport-Security(HSTS) gesetzt ist. HSTS sagt dem Browser, die Domain künftig nur noch verschlüsselt aufzurufen. Das verhindert, dass ein Angreifer im selben Netz die Verbindung auf HTTP herunterstuft. Werkzeuge wie der SSL-Test von Qualys zeigen Lücken in der Konfiguration.
Betrieb: Punkte 10 bis 12
- 10. Logs und Monitoring. Shopware schreibt nach
var/log/, der Webserver in seine eigenen Logs. Schauen Sie nicht erst bei Problemen hinein: Fehlgeschlagene Admin-Logins, 500er-Fehler und auffällige Aufrufe auf/adminoder/apisind Frühwarnzeichen. Ein einfaches Uptime-Monitoring ergänzt das – wenn der Shop nachts steht, erfahren Sie es nicht vom ersten Kunden. - 11. API-Zugänge und Integrationen. Jede Schnittstelle bekommt unter Einstellungen > System > Integrationen einen eigenen Zugang mit eigenem Schlüsselpaar und nur den Rechten, die sie braucht. Keine Integration sollte mit Administratorrechten laufen, wenn sie nur Bestellungen lesen muss. Zugänge nicht mehr genutzter Dienstleister werden gelöscht, nicht nur deaktiviert.
- 12. Plugins nur aus vertrauenswürdigen Quellen – und Sicherheitsmeldungen ernst nehmen. Erweiterungen aus dem Shopware Store durchlaufen eine Prüfung; ZIP-Dateien aus Foren oder von Drittanbietern ohne Quellcode-Einsicht tun das nicht. Jedes installierte Plugin ist Code, der mit vollen Rechten in Ihrem Shop läuft. Deaktivierte, aber installierte Plugins gehören deinstalliert. Und wenn Shopware ein Sicherheitsupdate ankündigt, ist das keine Nachricht für „nächsten Monat“: Lesen Sie, welche Versionen betroffen sind, prüfen Sie, ob das Security-Plugin den Fix liefert oder ein Update nötig ist, und setzen Sie das innerhalb weniger Tage um.
| Punkt | Aufwand | Wer |
|---|---|---|
| 1, 3, 11 – Benutzer, Rollen, Integrationen | Stunden | Shopbetreiber in der Administration |
| 2, 5, 12 – 2FA-Plugin, Security-Plugin, Plugin-Hygiene | Stunden | Entwickler oder Administrator |
| 4, 6 – Updates, Backups mit Test | laufend | Wartungsvertrag oder interner Admin |
| 7, 8, 9, 10 – Dateirechte, Admin-Schutz, TLS, Logs | einmalig plus Kontrolle | Hoster oder Administrator |
.env auf dem Produktivsystem ohne Backup und ohne Test auf Staging. Eine falsch gesetzte Regel sperrt schnell Zahlungs-Webhooks oder die eigene Warenwirtschaft aus – und das fällt erst auf, wenn Bestellungen fehlen.Häufige Fragen
Reicht das Security-Plugin, wenn ich nicht updaten kann?
Kurzfristig schließt es bekannte Lücken im Shopware-Code. Es deckt aber keine Lücken in Abhängigkeiten ab, manche Fixes erfordern laut Shopware ein echtes Update, und abgelaufene Versionen erhalten keine Plugin-Updates mehr. Es ist eine Brücke, kein Dauerzustand.
Woran merke ich, dass mein Shop kompromittiert wurde?
Typische Zeichen: unbekannte Admin-Benutzer oder Integrationen, veränderte Dateien außerhalb von Updates, fremde Scripte im Checkout, plötzlich fehlgeschlagene Zahlungen, Beschwerden über Phishing-Mails. Dann: Shop vom Netz, Backup sichern, Fachleute einbeziehen. Für solche Fälle gibt es meine Notfall-Seite.
Wie oft sollte ich diese Liste durchgehen?
Die Punkte 1, 3, 11 und 12 bei jedem Personal- oder Dienstleisterwechsel, Punkt 6 quartalsweise, alles andere einmal im Jahr und nach jedem größeren Update.
Wenn Sie Updates, Backups und Sicherheitsmeldungen nicht selbst im Blick behalten wollen, ist das genau der Inhalt eines Shopware-Wartungspakets.