XML-Markup mit Escape-Zeichen versehen
Verwenden Sie die Eigenschaft glide.ui.escape_text, um Escape-Zeichen für XML-Werte auf Parser-Ebene zu erzwingen, bevor sie an den Browser des Clients übertragen werden.
- & ->
& - < -->
< - > -->
> - „ -->
“ - ' -->
' - / -->
/
Beispiel: <![CDATA[<script> alert('XSS-Angriff');</script> ]]>
Escaping: <script>alert('XSS Attack');</script>
Stellen Sie sicher, dass die Eigenschaft glide.ui.escape_text in der Tabelle „sys_properties“ vorhanden und auf „true“ festgelegt ist.
Weitere Informationen
| Attribut | Beschreibung |
|---|---|
| Eigenschaftsname | glide.ui.escape_text |
| Konfigurationstyp | Systemeigenschaften (/sys_properties_list.do) |
| Kategorie | Validierung, Bereinigung und Codierung |
| Zweck | Durch das Escaping von XML wird sichergestellt, dass Browser das in nicht vertrauenswürdige Daten eingebettete schädliche JavaScript nicht analysieren und als JavaScript ausführen.
|
| Empfohlener Wert | Wahr |
| Sicherheitsrisikobewertung | 8.8 |
| Funktionale Auswirkung | (Mittel) Diese Fehlerkorrektur erzwingt die XML-Codierung auf XML-Parser-Ebene in der Benutzeroberfläche. Dadurch werden die codierten Ergebnisse für den Benutzer gerendert, was sich je nach Instanzbenutzerinteraktion mit den resultierenden Daten auf die Funktionalität auswirken kann. |
| Sicherheitsrisiko | (Hoch) Die Eingabevalidierung muss in der Anwendung erfolgen, um sich gegen websiteübergreifende Skripting-Angriffe zu schützen. Diese Angriffe ermöglichen die Ausführung fremder Skripts in der Benutzersitzung im Kontext des angemeldeten Browsers. Angreifer können damit Sitzungsinformationen und vertrauliche Daten stehlen. |
| Workaround | Nachdem Sie diese Eigenschaft auf truefestgelegt haben, wird das Rendern der HTML-Tags in der Katalogelementbeschreibung oder im Hilfetext der Katalogelementvariablen angehalten. Möglicherweise können Sie die HTML-Formatierung für einige Felder nicht verwenden. Wenn jedoch die Eigenschaft glide.ui.escape_text deaktiviert ist, wird allen JEXL-Ausdrücken ein Ausgabe-Encoder vorangestellt:
oder
|