Les injections XSS

Mon dernier billet s’intéressait aux attaques des sites Web par injections SQL. Ces attaques visent à prendre possession du site en modifiant les requêtes SQL vérifiant l’authentification de l’utilisateur qui se connecte. Elles peuvent être plus dévastatrices en altérant la base de données des comptes utilisateurs voire même en altérant le serveur hébergeant le SGBD.

Un autre type d’attaque par injection vise principalement les utilisateurs afin de prendre possession de leurs données personnelles. Cette technique, appelée le XSS, pour Cross Site Scripting, permet à un pirate de :

  • Exécuter un script malveillant dans un navigateur Web client
  • Insérer des balises <script>, <object>, <applet>, <form>, <embed>, <iframe>, <a>…
  • Voler des informations de session Web et des cookies d’authentification
  • Accéder à l’ordinateur client

Considérons une page Web dans laquelle un utilisateur peut saisir ses informations personnelles, comme son login, son adresse email et un texte libre. Ce genre de page se trouve sur les forums de discussion par exemple.

Il n’y a aucune raison, a priori, de tester le contenu du texte libre. Seulement, ce qu’on oublie parfois, c’est que ce texte sera affiché, tel quel, dans la liste des réponses de chaque utilisateur du forum.
Si ce texte est un script Javascript, par exemple, l’affichage de ce texte dans la liste des réponses du forum déclenchera l’exécution de ce script. Le serveur ne subit, apparemment, aucune altération. Seul l’utilisateur, qui navigue sur la page contenant la liste des réponses du forum, sera affecté.
Prenons comme exemple de script :

<script>document.location.replace…</script>

L’utilisateur qui navigue sur le forum sera automatiquement redirigé sur un autre site. Cet autre site peut être visuellement identique et peut demander à l’utilisateur de s’authentifier à nouveau, ce qui va permettre au pirate de voler l’identifiant et le mot de passe de cet utilisateur.

Conclusion

La règle de base à suivre est donc de ne jamais faire confiance aux données saisies par un utilisateur. Toute entrée doit être considérée comme malicieuse et donc doit être testée avant sa sauvegarde dans la base de données du site.

Thierry ALBAIN

0 Responses to “Les injections XSS”



  1. Laisser un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s




Mises à jour Twitter

Erreur : Twitter ne répond pas. Veuillez patienter quelques minutes avant d'actualiser cette page.

Entrer votre adresse e-mail pour vous inscrire a ce blog et recevoir les notifications des nouveaux articles par e-mail.

Rejoignez 29 autres abonnés

Catégories

Statistiques

  • 64 124 hits

%d blogueurs aiment cette page :