MudGuard: XSS bei generierten Inhalten in HTML

Beitrag lesen

Hi,

Ausgangssituation: ich weise via JavaScript FETCH requests mein PHP Script an, Daten in eine JSON zu schreiben, bzw. Daten aus der JSON Datei zu laden.

Ursprünglich sah meine Lösung vor, vor Speicherung in die JSON Datei sämtliche Inputs zu reinigen:

// PHP
function sanitizeStr(string $str): string {
    return trim(htmlspecialchars($str ?? '', ENT_QUOTES, 'UTF-8'));
}

falsche Methode. JSON ist nicht HTML, hier wäre Javascript-String-Behandlung nötig - sofern das nicht schon die Methode zur Erzeugung des json macht.

Die Behandlung der Zeichen für HTML (also <>& -> &lt;&gt;&amp;)muß erfolgen, wenn die Daten in die HTML-Elemente geschrieben werden.

cu,
Andreas a/k/a MudGuard