Jelly/JS-Interpolation (Härtung der Instanzsicherheit)

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 1 Minute Lesedauer
  • Verwenden Sie die Eigenschaft glide.ui.jelly.js_interpolation.protect, um sicherzustellen, dass JavaScript-Code, der auf einer Jelly-Seite ausgeführt werden soll, mithilfe der Jelly-Interpolation vor der Einschleusung geschützt ist.

    Wenn Sie die Eigenschaft auf „ true“ festlegen, durchläuft eine Anwendung eine Jelly-Skriptstruktur (verschachtelt). Es umschließt potenziell gefährliche Jelly-Ausdrücke mit einem Filter, der:
    • Codiert aus Sicherheitsgründen ein Escape-Zeichen für die Ergebnisse, oder
    • Wenn ihre Sicherheit nicht garantiert werden kann, generiert eine SecurityException, da der Ausdruck, der ausgewertet wurde, ein mögliches Sicherheitsproblem darstellt.

    Weitere Informationen

    Attribut Beschreibung
    Eigenschaftsname glide.ui.jelly.js_interpolation.protect
    Konfigurationstyp Systemeigenschaften (/sys_properties_list.do)
    Konfigurieren Sie im Instanz-Sicherheitszentrum Ja
    Zweck Zur Abwehr von Angriffen mit böswilliger Codeausführung, die mit Jelly Injection auftreten können.
    Empfohlener Wert True
    Funktionale Auswirkung (Hoch) Diese Eigenschaft ermöglicht eine bestmögliche Schätzung, ob ein Ausdruck in Anführungszeichen gesetzt ist. Möglicherweise wird ein berechtigter Ausdruck falsch angegeben. In diesem Fall muss ein Ausdruck möglicherweise manuell als sicher markiert werden.
    Sicherheitsrisiko Die (mittel) JEXL-Injektion ist eine für Now Platform eindeutige Form der Eingabeinjektion, die sowohl zu websiteübergreifender Anforderungsfälschung als auch zu Codeausführung führen kann. Durch das vollständige Deaktivieren des Schutzes können möglicherweise viele P1-Sicherheitsschwachstellen geöffnet werden.
    Workaround

    Um einen Ausdruck manuell als sicher zu markieren, fügen Sie dem Jelly-Ausdruck das SAFE-Präfix hinzu:

    ${SAFE:sysparm_input};

    Das blinde Hinzufügen von SAFE zu jedem Ausdruck ist die falsche Herangehensweise, da dies zu einer Sicherheitsschwachstelle führen kann.
    • Fügen Sie einem Ausdruck nur dann SAFE hinzu, wenn Sie garantieren können, dass der Ausdruck keine Eingaben vom Client enthält.
    • Wenn dies der Fall ist, kann ein böswilliger Client die Auswertung von privilegiertem JavaScript verursachen.
    Referenzen Jelly Tags

    Strenge Sicherheitseinstellungen

    Weitere Informationen zum Hinzufügen oder Erstellen von Systemeigenschaften finden Sie unter Add a system property.