Umgehen des HTML Sanitizers in Shopware 6.5: Ein Workaround

Willkommen zu unserem Blogbeitrag über das Umgehen des HTML Sanitizers in Shopware! In diesem Artikel zeigen wir dir einen Workaround, um den Sanitizer zu umgehen und bestimmten HTML-Code zu erlauben. Beachte jedoch, dass dieser Beitrag nur für Nutzer eines self-hosted Shops relevant ist. Für Cloud Shops gibt es derzeit keine Möglichkeit zur Umsetzung.

Mit der Einführung von Shopware Version 6.5 wurde ein HTML Sanitizer implementiert, um unsicheren HTML-Code zu entfernen und somit die Sicherheit, Zuverlässigkeit und Benutzerfreundlichkeit des Editors zu verbessern. Der Sanitizer sorgt dafür, dass potenziell gefährlicher Code entfernt wird. Er bereinigt auch Styles und Attribute, um eine konsistente und korrekte Darstellung des Codes auf verschiedenen Plattformen und Browsern sicherzustellen.

Manchmal kann es jedoch erforderlich sein, bestimmten HTML-Code zu erlauben, der standardmäßig vom Sanitizer entfernt wird. Hier ist ein möglicher Workaround:

  1. Öffne die Datei z-shopware.yaml auf dem Server, auf dem Shopware installiert ist. Diese Datei befindet sich im Verzeichnis config/packages/. Beachte, dass die Datei standardmäßig nicht existiert. Du kannst jedoch eine Kopie der shopware.yaml im selben Verzeichnis erstellen, um das Hindernis zu umgehen.
  2. In der kopierten shopware.yaml (z-shopware.yaml) füge innerhalb des shopware-Schlüssels einen weiteren Schlüssel namens html_sanitizer: hinzu. Innerhalb dieses Schlüssels kannst du die gewünschten Tags und Attribute angeben, die vom Sanitizer nicht entfernt werden sollen.
  3. Hier ist ein Beispiel, um den img-Tag und die CSS-Attribute src, alt und style zur Whitelist hinzuzufügen:
shopware:
    html_sanitizer:
        sets:
            -   name: basic
                tags: [ "img" ]
                attributes: [ "src", "alt", "style" ]
                options:
                    - key: HTML.Trusted
                      value: true
                    - key: CSS.Trusted
                      value: true

Durch diese Konfiguration werden der img-Tag sowie die genannten CSS-Attribute als erlaubter Code festgelegt und nicht mehr vom Sanitizer entfernt.

Es ist wichtig zu beachten, dass das Umgehen des HTML Sanitizers potenzielle Sicherheitsrisiken mit sich bringen kann. Es besteht die Möglichkeit, dass unsicherer Code in den Editor gelangt und somit die Sicherheit deines Shops gefährdet wird. Führe daher solche Anpassungen mit Vorsicht durch und überprüfe den Code sorgfältig, um sicherzustellen, dass keine potenziell gefährlichen Inhalte zugelassen werden.

Wir weisen darauf hin, dass das Umgehen des HTML Sanitizers von Shopware eine fortgeschrittene Vorgehensweise ist und nicht für jeden Shopbetreiber empfohlen wird. Es liegt in deiner Verantwortung sicherzustellen, dass dein Shop und deine Benutzer vor möglichen Sicherheitslücken geschützt sind.

Wir hoffen, dass dieser Blogbeitrag hilfreich war und dir eine mögliche Lösung aufgezeigt hat, um bestimmten HTML-Code trotz des Sanitizers in Shopware zu erlauben.

Teile den Beitrag mit Freunden.