PROJET AUTOBLOG


Sebsauvage-Shaarli

source: Sebsauvage-Shaarli

⇐ retour index

Une faille dans la Freebox v6 | Korben

vendredi 4 janvier 2013 à 15:37
[korben.info]
Hé ouais... les jetons dans les formulaires. C'est con hein, mais c'est indispensable pour se protéger des attaques de type CSRF (Cross site request forgery).

Et croyez-moi, pratiquement *AUCUN* site ne le fait (J'ai déjà piégé des modos de CCM avec ça. Assez poilant.)

Pourtant c'est assez facile de protéger ses applis. Si ça vous intéresse, jetez un coup d'œil aux sources de Shaarli: Il y a 2 petites fonctions php qui génèrent et contrôlent les tokens attachés à la session (getToken() et tokenOk()). C'est très simple. (C'est opensource: vous pouvez réutiliser ces fonctions.)

Le principe est d'inclure un token dans tout formulaire qui agit sur les données (getToken()), et lors du traitement de ces formulaires de s'assurer qu'ils contiennent un token valide (tokenOk()). Un attaquant ne pourra pas générer de token valide, et votre appli rejettera la requête (Dans Shaarli, je fais juste un die("Wrong token.");)