Problem #3082✓ GelöstOct 20, 2020 geöffnetvon Rukavina6-Reaktionen

XSS-Schwachstelle in der Live-Vorschau

Kurze Antwortvon artf2

Nun, wenn du GrapesJS nutzt und die Möglichkeit erlaubst, benutzerdefinierten HTML einzufügen, ja, Self-XSS ist möglich. Leider gibt es einige Probleme, die es mir nicht erlauben, das richtig zu behebenIch muss auf das DOM des iframes zugreifen, um innere Komponenten hinzuzufügen/aktualisieren, damit der Editor ohne '...

Lesen Sie die vollständige Antwort unten ↓

Frage

Version: 0.16.22

Kannst du den Fehler aus der Demo reproduzieren?

[x] Ja

Schritte:

  • Klicken Sie auf HTML importieren
  • Einfügen von '<img src="any_image_source.gif" onload="alert(1)"/>'
  • Der JS wird hingerichtet

Ein richtiges "Sandbox"-Attribut auf iframe könnte das Problem wahrscheinlich abmildern.

Antworten (3)

👍 Am hilfreichstenartfOct 23, 2020

Nun, wenn du GrapesJS nutzt und die Möglichkeit erlaubst, benutzerdefinierten HTML einzufügen, ja, Self-XSS ist möglich. Leider gibt es einige Probleme, die es mir nicht erlauben, das richtig zu behebenIch muss auf das DOM des iframes zugreifen, um innere Komponenten hinzuzufügen/aktualisieren, dam...

RukavinaOct 28, 2020

Du hast recht, wir dachten, 'sandbox="allow-same-origin"' würde den Zweck erfüllen, aber 'allow-scripts' ist auch nötig, und dann ist es, als würde man Sandbox gar nicht mehr verwenden. Was aber trotzdem hilfreich sein könnte, ist, eine Möglichkeit bereitzustellen, wie grapejs-Nutzer irgendwie die...

blinkybillFeb 7, 2021

Wenn du den Content Security Policy HTTP-Header verwendest, kannst du viele solche XSS-Probleme umgehen. aber es gibt im Moment ein Problem mit GrapesJS, nämlich dass es underscore.js verwendet, was eine Funktion mit "eval" beinhaltet, sodass man den CSP-Header nicht so sicher machen kann, wie er s...

Verwandte Fragen und Antworten

Führe die Forschung mit ähnlichen Themendiskussionen fort.

Kostenpflichtige Plugins, die diesem Problem entsprechen

Kuratiert nach Themen-Schlüsselwörtern und Label-Relevanz, damit Sie schneller liefern.

Alle Plugins anzeigen

Lade: Empfehlungen für kostenpflichtige Plugins...

Kostenlose Option

Überprüfen Sie die Open-Source-GrapesJS-Plugins auf GitHub Oder suchen Sie schnell in unserem kostenlosen Katalog.

Durchstöbere kostenlose Plugins →
Premium-Option

Premium-Plugins werden mit Support, regelmäßigen Updates und produktionsreifen Funktionen geliefert – das spart Tage an Integrationsarbeit.

Durchsuchen Sie Premium-Plugins →

Durchsuchen Sie Plugin-Kategorien

Springe direkt zu den Plugin-Kategorieseiten im Marktplatz.