protéger contre CSRF avec token sans session ?

Eléphant du PHP | 92 Messages

30 janv. 2012, 21:13

Bonjour,
J'ai un formulaire... assez "sécurisé" par un filtre (filter_input) et de fonctions PHP ( stripslashes ; strip_tags et mysql_real_escape_string).
Cependant, ce formulaire est accessible à tout le monde donc sans mots de passe cela veut dire qu'il n'y pas de SESSION!!!
On utilise aussi un certificat de SSL...

Je me demande comment je peux le protéger contre les attaques des failles CSRF... puisque je ne peux pas utiliser un jeton/token en raison de ne pas avoir une session... :?:

ViPHP
ViPHP | 2287 Messages

30 janv. 2012, 21:56

Bonjour,

Des CSRF sans sessions ? C'est un formulaire de délation pour le FBI ? :shock:

Tu peux utiliser des sessions sans mettre en oeuvre d'identification login/mot de passe (ce n'est qu'une utilisation possible d'une session, pas obligatoire). Tu peux donc avoir un token sur le formulaire.

Sinon, tu peux aussi mettre en oeuvre une vérification du referer (contraignante et moyennement fiable) et/ou passer ton formulaire en POST s'il ne l'est pas déjà (ces deux mesures n'offrent pas de garantie de protection, mais peuvent contribuer à renforcer le formulaire).
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphant du PHP | 92 Messages

31 janv. 2012, 16:00

Merci Calimero,

Je vais voir comment je peux utiliser des sessions sans avoir le module d'identification...

Bonne journée