La falsification de requête inter-sites (CSRF) est une vulnérabilité de sécurité où un site malveillant trompe un utilisateur pour qu'il soumette des données de formulaire à un serveur légitime à son insu. Cela se produit parce que le navigateur envoie automatiquement le cookie de session de l'utilisateur avec chaque requête, permettant aux attaquants d'exploiter la session authentifiée de la victime.
Le mécanisme de défense génère un jeton aléatoire unique stocké dans la session. Chaque formulaire soumis par le serveur légitime inclut ce jeton dans un champ d'entrée caché. Lors de la réception d'une soumission de formulaire, le serveur vérifie le jeton par rapport au stockage de session. Si les jetons ne correspondent pas, la requête est rejetée. Django fournit par défaut une protection CSRF intégrée lorsque le middleware de session est actif.