Le CSRF (Cross-Site Request Forgery) (ou attaque par falsification de requête intersite) est une attaque côté client qui pousse un utilisateur authentifié sur un site web à exécuter une action non désirée sur ce site, à son insu.
En clair, un pirate utilise la session déjà ouverte de la victime pour effectuer des actions frauduleuses sans que celle-ci ne s’en rende compte.
L’utilisateur est connecté sur banque.com avec un cookie de session valide.
Il visite ensuite un site malveillant hacker.com.
Ce site contient un code HTML comme :
<img src="https://banque.com/virement?to=hacker&montant=1000" />
Le navigateur enverra la requête GET vers banque.com/virement en y joignant automatiquement le cookie de session valide.
Conséquence : la banque croira que c’est bien l’utilisateur légitime qui demande un virement, et le transfert sera exécuté.
Depuis environ 2020, les navigateurs modernes appliquent automatiquement la politique suivante sur les cookies si le serveur ne spécifie rien :
SameSite=Lax
<img>, <form>, etc.).En résumé : même sans protection CSRF spécifique, un site bénéficie déjà d’une protection efficace grâce à SameSite=Lax.