Comment prévenir les attaques de type XSS (Cross Site Scripting) tout en permettant une entrée HTML

J'ai un site internet qui permet d'entrer en HTML par le biais d'un De TinyMCE riche éditeur de contrôle. Son but est de permettre aux utilisateurs de formater le texte à l'aide de HTML.

Cet utilisateur a entré le contenu est ensuite retournée à d'autres utilisateurs du système.

Cependant, cela signifie que quelqu'un pourrait insérer du code JavaScript dans le code HTML afin d'effectuer une attaque XSS sur les autres utilisateurs du système.

Quelle est la meilleure façon de filtrer code JavaScript à partir d'une chaîne HTML?

Si j'effectue une Expression Régulière pour vérifier <SCRIPT> les balises c'est un bon début, mais un méchant pourrait encore se joindre JavaScript pour la onclick attribut d'une balise.

Est-il un moyen infaillible de script tout code JavaScript, tout en laissant le reste de l'HTML intacte?

Pour mon application, j'utilise C#

Cela dépend du serveur bout de la langue que vous utilisez?
dans mon cas particulier, je suis en utilisant asp.net/C#
double possible de Désinfection d'entrée HTML

OriginalL'auteur Peter Bridger | 2011-08-11