Accueil > Glossaire Cybersécurité > CSRF 🔴 Attaque

CSRF 🔴 Attaque

Une attaque CSRF (ou Cross-Site Request Forgery) est une technique malveillante où un attaquant incite un utilisateur à exécuter, à son insu, des actions non désirées sur une application web à laquelle il est déjà authentifié. L’objectif est de détourner la confiance que l’application accorde à l’utilisateur, en exploitant les cookies de session ou les identifiants stockés dans le navigateur.

  • CATÉGORIE : 🔴 Attaque informatique
  • FRÉQUENCE : 🔥🔥🔥
  • DANGEROSITÉ :  💀💀💀
  • DIFFICULTÉ D’ÉRADICATION : 🧹🧹🧹

 


Google - Noto Color Emoji 15.0 (Animated) Fonctionnement

 

  1. Scénario typique :
    • L’utilisateur est connecté à un site (ex: banque en ligne, réseau social).
    • Il visite un site malveillant ou clique sur un lien piégé.
    • Ce lien déclenche une requête HTTP vers l’application cible, en utilisant les cookies de session de l’utilisateur.
    • L’application traite la requête comme légitime, car elle provient d’un navigateur authentifié.
  2. Exemple concret :
    <!-- Site malveillant : formulaire invisible déclenchant un virement bancaire -->
    <form action="https://banque.com/transfer" method="POST">
      <input type="hidden" name="montant" value="1000">
      <input type="hidden" name="compte" value="ATTACKER_ACCOUNT">
    </form>
    <script>document.forms[0].submit();</script>

    Si l’utilisateur est connecté à banque.com, la requête transfère 1000 € sans son consentement

 


📌 Conditions nécessaires

 

  • Authentification par cookies : l’application utilise des cookies pour gérer les sessions
  • Absence de protection CSRF : aucun jeton aléatoire (CSRF token) n’est exigé pour valider les requêtes sensibles
  • Requêtes prédictibles : les paramètres de l’action (ex: URL, champs de formulaire) sont devinables

 


🎯 Actions possibles via CSRF

 

  • Modification de mots de passe ou d’adresses e-mail
  • Publication de contenu indésirable (ex : réseaux sociaux)
  • Virements bancaires, achats non autorisés
  • Suppression de comptes ou de données

 


🛡️ Méthodes de protection

 

  1. CSRF Tokens :
    • Générer un jeton unique et aléatoire pour chaque formulaire ou requête.
    • Le serveur vérifie ce jeton avant d’exécuter l’action.
  2. SameSite Cookies :
    • Définir l’attribut SameSite=Strict ou Lax pour empêcher l’envoi de cookies dans des requêtes intersites.
  3. Vérification du Referer/Origin :
    • Vérifier que la requête provient du même domaine que l’application.
  4. Reconnaissance utilisateur :
    • Demander un mot de passe ou une 2FA pour les actions critiques.

 


🔍 Exemple 

 

  • En 2018, une vulnérabilité CSRF a été trouvée dans Drupal, permettant à des attaquants de modifier les paramètres d’administration.

⚠️ Différence entre CSRF vs XSS

 

  • CSRF : exploite la confiance d’un site envers l’utilisateur.
  • XSS : exploite la confiance d’un utilisateur envers un site (injection de code malveillant).

📊 Statistiques

 

  • OWASP : classée dans le Top 10 des risques web jusqu’en 2017, moins fréquente aujourd’hui grâce aux protections modernes.
  • Bug Bounty : les primes pour les failles CSRF varient entre 500 et 5000 €  selon la criticité.
Vers la ORSYS Cyber Academy : un espace gratuit dédié à la cybersécurité