« Faille CSRF » : différence entre les versions

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 4 : Ligne 4 :
= Introduction =
= Introduction =
= Les sessions =
= Les sessions =
* Stocke l’état d’un client sur un site web
* Identification de la session avec des cookies
* Sessions sauvegardées côté serveur

= Faille CSRF =
= Faille CSRF =



Version du 25 novembre 2018 à 14:03

Auteurs : Victor BASSET et Vincent PEILLEX

Introduction

Les sessions

  • Stocke l’état d’un client sur un site web
  • Identification de la session avec des cookies
  • Sessions sauvegardées côté serveur

Faille CSRF

Explication

La faille CSRF ("Cross site request forgery") qui, si l’on essaie de donner une définition en français, signifie Falsification de requête inter-sites. Elle cherche à faire exécuter des actions directement sur l’ordinateur de la victime à son insu. Cette faille est compatible avec n'importe quel site, pour peu que vous y soyez connecté. Elle demande à celui qui l'exploite de connaître les liens utilisés par la victime.

Attaquer la victime en mettant la requête illégitime dans un mail :

Mail-16.png

Attaquer la victime en mettant lançant la requête depuis un site malveillant :

Site-7.png

Les risques

Le risque est inhérent au site visité par la victime puisque le CSRF consiste à effectuer des opérations sur un site sans le consentement de l’utilisateur et à son insu.

Voici trois exemples d’opérations qui étaient possibles par un attaquant sur des sites ou produits connus et vulnérables :

  • opérations à l’insu de l’utilisateur sur un site bancaire (par exemple, virement d’argent vers un autre compte) ;
  • changement de la configuration du routeur WiFi de la victime (via l’interface d’administration web accessible en réseau local) ;
  • changement de la configuration d’un webmail (notamment, l’ajout de filtres pour transmettre automatiquement les courriels reçus à une autre adresse).

Le risque principal est donc l’usurpation d’identité et l’exécution d’actions malveillantes sur un site.

Comment s'en protéger

Le CSRF est une attaque contre les visiteurs d’un site et non contre le site lui-même.

Les moyens de protection pour les développeurs servent donc à protéger leurs utilisateurs.

La façon la plus répandue étant l'utilisation d'un jeton unique qui sera vérifié à chaque modification.

Site touché

  • The Netflix website in 2006 had numerous vulnerabilities to CSRF, which could have allowed an attacker to perform actions such as adding a DVD to the victim's rental queue, changing the shipping address on the account, or altering the victim's login credentials to fully compromise the account.
  • The online banking web application of ING Direct was vulnerable to a CSRF attack that allowed illicit money transfers.
  • Popular video website YouTube was also vulnerable to CSRF in 2008 and this allowed any attacker to perform nearly all actions of any user.
  • McAfee was also vulnerable to CSRF and it allowed attackers to change their company system.

Sources

https://openclassrooms.com/fr/courses/2091901-protegez-vous-efficacement-contre-les-failles-web/2863569-la-csrf

https://www.cert.ssi.gouv.fr/information/CERTA-2008-INF-003/

https://www.leblogduhacker.fr/sandbox/csrf.php?#.W-gXIXVKgqo

https://en.wikipedia.org/wiki/Cross-site_request_forgery#Example_and_characteristics