Reicht Markdown (mit strip_tags) aus, um XSS-Angriffe zu stoppen?

Ich arbeite an einer Webanwendung, mit der Benutzer kurze Beschreibungen von Elementen in einem Katalog eingeben können. Ich erlaube Markdown in meinen Textbereichen, damit Benutzer HTML-Formatierungen vornehmen können.

Meine Textbereinigungsfunktion entfernt alle Tags von jedem eingegebenen Text, bevor er in die Datenbank eingefügt wird:

public function sanitizeText($string, $allowedTags = "") {
    $string = strip_tags($string, $allowedTags);

    if(get_magic_quotes_gpc()) {
        return mysql_real_escape_string(stripslashes($string));
    } else {
        return mysql_real_escape_string($string);
    }
}

Im Wesentlichen speichere ich in der Datenbank nur Markdown - kein anderes HTML, auch kein "grundlegendes HTML" (wie hier bei SO) ist zulässig.

Wird das Zulassen von Abschriften Sicherheitsrisiken bergen? Kann Markdown XSSed sein, obwohl es keine Tags hat?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage