XML-Markup mit Escape-Zeichen [aktualisiert in Security Center 1,3]

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 1 Minute Lesedauer
  • Verwenden Sie glide.ui.escape_textEigenschaft zum Erzwingen des Escape-Vorgangs von XML-Werten auf Parser-Ebene, bevor sie an den Browser des Clients übertragen werden.

    Site-übergreifendes Skripting tritt auf, wenn ein Angreifer schädliches JavaScript in einen Einstiegspunkt einschleppt. Die Plattform/Anwendung kann das schädliche JavaScript nicht mit einem Escape-Zeichen versehen, bevor es zur Ausführung an den Browser des Opfers übertragen wird. Das Escape-Zeichen in diesem Kontext bedeutet Folgendes:
    • & --> &
    • < --> <
    • > --> >
    • " --> "
    • ' --> '
    • / --> /

    Beispiel: alert('XSS Attack');]]>

    Escape-Zeichen: <script>Alert('XSS-Angriff');</script>

    Stellen Sie sicher, dass glide.ui.escape_textEigenschaft ist in der Tabelle „sys_properties“ vorhanden und auf „wahr“ festgelegt.

    Warnung:
    Dies ist eine Safe-Harbor-Eigenschaft, d. h. der Wert kann nicht geändert werden, nachdem er geändert wurde. Sie kann nicht rückgängig gemacht werden.

    Weitere Informationen

    Attribut Beschreibung
    Eigenschaftsname glide.ui.escape_text
    Konfigurationstyp Systemeigenschaften (/sys_properties_list.do)
    Kategorie Validierung, Bereinigung und Codierung
    Zweck Durch das Escape-XML wird sichergestellt, dass Browser das in nicht vertrauenswürdige Daten eingebettete schädliche JavaScript nicht analysieren und als JavaScript ausführen.
    • Ein böswilliger Anwender kann einen XSS-Angriff versuchen, um entweder die Sitzung anderer Anwender zu übernehmen oder den Anwender zu einer böswilligen Website umzuleiten.
    • Die NOW Platform enthält Code zum Sichern von Cookies, das Escape-Zeichen hängt jedoch davon ab, dass diese Eigenschaft auf festgelegt ist Wahr .
    Empfohlener Wert wahr
    Sicherheitsrisikobewertung 8.8
    Funktionale Auswirkung Diese Korrektur erzwingt die XML-Codierung auf der XML-Parser-Ebene auf der Anwenderoberfläche. Rendert die codierten Ergebnisse für den Anwender, was sich basierend auf der Interaktion des Instanzanwenders mit den resultierenden Daten auf die Funktionalität auswirken kann.
    Sicherheitsrisiko (Hoch) die Eingabevalidierung muss in der Anwendung erfolgen, um sich vor siteübergreifenden Skripting-Angriffen zu schützen. Diese Angriffe ermöglichen die Ausführung fremder Skripts in einer Anwendersitzung im Kontext des angemeldeten Browsers. Angreifer können sie verwenden, um Sitzungsinformationen und vertrauliche Daten zu stehlen.
    Workaround

    Nachdem Sie diese Eigenschaft auf festgelegt haben Wahr , Das Rendern der HTML-Tags in der Katalogelementbeschreibung oder im Hilfetext der Katalogelementvariablen wird beendet. Möglicherweise können Sie für einige Felder keine HTML-Formatierung verwenden.

    Wenn jedoch glide.ui.escape_textEigenschaft ist aktiviert, allen JEXL-Ausdrücken wird ein Ausgabencoder vorangestellt:

    $⁠{JS:Expression}

    $⁠{HTML:Expression}

    oder

    $⁠{JS,HTML:Expression}