27 Oct 2014

Les Failles de type CSRF

Les attaques de type Cross-Site Request Forgery (abrégées CSRF prononcées sea-surfing ou parfois XSRF) utilisent l’utilisateur comme déclencheur, celui-ci devient complice sans en être conscient. L’attaque étant actionnée par l’utilisateur, un grand nombre de systèmes d’authentification sont contournés.Cela consiste à se faire passer pour un utilisateur qui exécute une action (via un envoi de script ou d’image exécutant du code, etc…), il n’y a aucun contrôle qui est fait par rapport à l’authenticité de cet envoi de formulaire.

Pour se prémunir des attaques de type CSRF, le package ASP.NET MVC inclue des Helpers qui préviennent les attaques CSRF. Il suffit d’ajouter l’instruction “Html.AntiForgeryToken()” en dessous de chaque formulaire dans la page .aspx.

aspx

Et d’ajouter l’annotation “ValidateAntiForgeryToken” sur l’action appelée au niveau du contrôleur.

controleur

Pour vérifier que le patch est bien effectif, il suffit de contrôler la présence d’un input de type hidden avec un token au niveau de la source HTML.

sourcehtml

Les failles CSRF sont classées dans le top 10 des attaques les plus risquées par l’OWASP.

L’OWASP est une communauté travaillant sur la sécurité des applications web. Elle est reconnue aujourd’hui dans le monde de la sécurité des systèmes d’information.

owasp

Pour plus d’informations, vous pouvez lire cet article http://blog.stevensanderson.com/2008/09/01/prevent-cross-site-request-forgery-csrf-using-aspnet-mvcs-antiforgerytoken-helper/.

 

Share