Stored XSS
hackingDéfinition
Le Stored XSS, ou Cross-Site Scripting persistant, est une variante de la vulnérabilité XSS dans laquelle le code JavaScript malveillant injecté par un attaquant est enregistré durablement côté serveur, typiquement en base de données via un champ de formulaire insuffisamment filtré, un commentaire, un profil utilisateur ou un message dans une messagerie applicative, puis exécuté automatiquement dans le navigateur de chaque utilisateur qui consulte ultérieurement la page ou le contenu infecté, sans nécessiter d'action spécifique supplémentaire de la victime au-delà de la consultation normale de la page. Cette caractéristique distingue fondamentalement le Stored XSS du Reflected XSS, où le payload malveillant doit être réinjecté à chaque exploitation via un lien spécialement construit envoyé à la victime : une fois stockée, la charge malveillante touche potentiellement l'ensemble des utilisateurs de la plateforme sans effort répété de l'attaquant, un facteur d'échelle qui rend le Stored XSS particulièrement dangereux sur les plateformes multi-utilisateurs, réseaux sociaux, forums, systèmes de gestion de contenu ou applications collaboratives. L'impact typique inclut le vol de cookies de session permettant l'usurpation de compte, la redirection vers des sites de phishing, ou l'exécution d'actions non désirées au nom de la victime. La prévention repose sur l'échappement systématique des sorties et une Content Security Policy stricte limitant les sources de scripts exécutables, en complément de la validation des entrées.
Description
Le Stored XSS est un XSS persistant où le payload malveillant est stocké en base de données et exécuté pour chaque visiteur consultant la page infectée. Contrairement au Reflected XSS, aucune interaction directe de la victime avec un lien malveillant n'est nécessaire.
Exploitation
Un commentaire contenant stocké dans un forum vole les sessions de tous les visiteurs. Les plateformes multi-utilisateurs (CMS, forums, ticketing) sont particulièrement exposées.
Défense
- Encoder systématiquement toutes les données en sortie dans le contexte HTML approprié
- Valider et sanitiser les entrées riches avec des bibliothèques spécialisées (DOMPurify)
- Déployer une CSP stricte bloquant les scripts inline et les ressources externes non autorisées
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h