Question

Comme solution rapide temporaire pour atténuer le risque majeur tout en travaillant sur le correctif permanent de la vulnérabilité XSS dans une base de code très volumineuse, je recherche une liste noire de prévention XSS préexistante qui effectue un travail raisonnable de protection contre XSS. .

De préférence, un ensemble d'expressions régulières. Je connais de nombreuses feuilles de triche pour les tests et les tests de fumée, etc. Ce que je recherche, ce sont des expressions rationnelles pré-ajustées pour bloquer les attaques.

Je suis parfaitement conscient du fait que le meilleur moyen est sortie échappée ou si vous avez besoin d'un balisage de la part des utilisateurs pour utiliser la liste blanche. Cependant, compte tenu de la taille de la base de code, nous avons besoin de quelque chose en peu de temps pour réduire l’empreinte immédiate de la vulnérabilité et relever le niveau tout en travaillant sur la vraie solution.

Est-ce que quelqu'un est au courant d'un bon set?

Était-ce utile?

La solution

Je réalise que cela ne constitue peut-être pas une réponse directe à votre question, mais les développeurs ASP.NET qui se trouvent dans une situation similaire peuvent trouver cela utile:

Microsoft Bibliothèque de scripts anti-sites croisés version 1.5

  

Cette bibliothèque diffère de la plupart des bibliothèques d'encodage en ce qu'elle utilise le "ient principe d'inclusions " technique de protection contre les attaques XSS. Cette approche fonctionne en définissant d’abord un ensemble de caractères valide ou autorisé, puis en codant tout ce qui ne l’appartient pas (caractères non valides ou attaques potentielles). Le principe des inclusions offre un haut degré de protection contre les attaques XSS et convient aux applications Web à exigences de sécurité élevées.

Autres conseils

En voici un: http://ha.ckers.org/xss.html mais je ne sais pas si c'est complet.

CAL9000 est une autre liste où vous pourriez trouver quelque chose comme ça.

Vous n'êtes pas sûr d'utiliser PHP, mais vous devriez consulter HTMLPurifer . C'est extrêmement simple à utiliser. ajoutez simplement un appel à la méthode purify() où vous acceptez votre entrée ou que vous exportez. Son approche basée sur la liste blanche bloque toutes les attaques XSS contre lesquelles je l’ai testée.

La feuille de triche sur ha.ckers.org/xss.html n'est pas complète. Un de mes collègues a trouvé un ou deux qui ne sont pas là. RSnake liste la plupart des filtres regex que chaque chaîne d’attaque passe après. Utilisez-en quelques-uns et fermez suffisamment de trous.

Ce serait un bon point de départ. Si rien d'autre, pour savoir quel genre de choses que vous devez rechercher.

Utilisez-le comme point de départ et assurez-vous que les scripts que vous écrivez échappent suffisamment de caractères pour que toutes les attaques manquées par vos listes noires soient rendues anodines. À quoi sert l'injection xss si aucun navigateur ne la rend?

En réalité, échapper assez des bons personnages fait presque tout ici. Il est assez difficile d’injecter XSS dans un script qui transforme chaque & Lt; dans un < et échappe à " dans ".

Si vous exécutez Apache, vous pouvez utiliser mod_security pour combler certaines lacunes. Au moins, il vous fournirait un outil (la console ou un fichier journal ordinaire ) pour surveiller le trafic et réagir avant qu'il ne soit trop tard. En outre, gotroot.com contient quelques règles intéressantes pour les applications Web.

Encore une fois, je ne sais pas vraiment quel genre de trous vous fermez.

Ce que vous voulez, c'est un système de détection d'intrusion (IDS). Si vous utilisez PHP, il existe PHPIDS . Il est maintenu et testé par une excellente communauté de hackers. Ils ont lancé toutes sortes de choses pour améliorer les filtres, bien au-delà de la liste originale de Rsnake. Il y avait aussi un port .NET quelque part, ne sachant pas s'il est toujours maintenu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top