Attaques et menaces
Cross-Site Scripting (XSS)
Aussi appelé: XSS
Définition
Vulnérabilité web permettant à un attaquant d'injecter des scripts malveillants dans des pages consultées par d'autres utilisateurs, exécutés dans leur navigateur sous l'origine du site.
Le Cross-Site Scripting (XSS) survient lorsqu'une application web inclut des entrées non fiables dans ses réponses sans échappement ni sanitization corrects, permettant l'exécution de JavaScript contrôlé par l'attaquant dans le navigateur de la victime. Les trois grandes classes sont le XSS réfléchi (charge envoyée dans une requête puis renvoyée), le XSS stocké (charge persistée côté serveur, par exemple dans un commentaire) et le XSS basé sur le DOM (faille côté client). Un XSS réussi peut détourner des sessions, voler des jetons, défigurer des pages, diffuser des malwares ou enchaîner avec SSRF et CSRF. Les défenses comprennent un output encoding sensible au contexte, une Content-Security-Policy stricte, les moteurs de templates du framework, des cookies HTTPOnly et SameSite et la validation des entrées.
Exemples
- Une charge XSS stockée dans un message de forum dérobe les cookies de session de chaque utilisateur qui lit le fil.
- Un XSS réfléchi dans un paramètre de recherche exécute le JavaScript de l'attaquant via un lien piégé.
Termes liés
Cross-Site Request Forgery (CSRF)
Attaque web qui force le navigateur d'un utilisateur authentifié à envoyer des requêtes non désirées vers un site vulnérable, déclenchant des actions sans son consentement.
Content Security Policy (CSP)
Content Security Policy (CSP) — definition coming soon.
Détournement de session
Attaque qui prend le contrôle de la session authentifiée d'une victime en volant ou en forgeant son identifiant de session, pour agir comme l'utilisateur sans ses identifiants.
Input Validation
Input Validation — definition coming soon.
Output Encoding
Output Encoding — definition coming soon.
OWASP Top 10
OWASP Top 10 — definition coming soon.