Prérequis:

  • Avoir des connaissances de base sur le web
  • Définition

    La faille XSS est une faille web côté client, classée dans le top 10 du classement de l’OWASP. C’est une faille consistant à injecter du code Javascript dans une page web. Cette faille permet par exemple de modifier le comportement d’une page ou un vol de cookies entre autres… On peut distinguer trois types de XSS:

  • XSS Stockée (Stored XSS)
  • XSS Volatile (Reflected XSS)
  • XSS Basée sur le DOM (DOM Based XSS)
  • Introduction aux 3 types de XSS

    Dans cette partie je vais vous faire une courte introduction à chaque type de XSS, pour plus de détails, allez voir mes autres articles sur le sujet.

    XSS Stockée (Stored XSS)

    La XSS Stockée est un type de XSS où le script injecté est stocké en base de données et affiché aux autres utilisateurs. Par exemple une page de forum. Ce type de XSS peut être très dangereux car tant que la base de données n’est pas modifiée, tous les utilisateurs vont subir l’attaque. Concernant l’exploitation, c’est une exploitation classique avec des balises <script>

    XSS Volatile (Reflected XSS)

    La XSS est considérée comme volatile lorsque le script malicieux se trouve dans un parametre de l’url. Comme par exemple une fonction “Rechercher” qui aurait un parametre “?search=xss” L’avantage de cette XSS est de pouvoir cibler un utilisateur en particulier en lui envoyant notre url piégée. Comme pour la XSS Stockée c’est une exploitation classique.

    XSS Basée sur le DOM (DOM Based XSS)

    Ce type de XSS est un peu particulier car il ne nécessite pas l’intervention du serveur. Cette XSS est possible lorsque l’entrée utilisateur se retrouve directement dans le code Javascript, ce qui nous permet donc de modifier le code Javascript au lieu d’en ajouter comme nous le faisions avec les autres XSS. Comme par exemple une page de jeu codée en Javascript où il faut trouver un nombre aléatoire. L’exploitation est différente que les 2 autres car elle ne nécessite pas de balises vu que nous agissons directement sur le code.