cs_destiny
Messages postés249Date d'inscriptionjeudi 17 février 2005StatutMembreDernière intervention29 août 2011
-
24 févr. 2009 à 15:41
marcelolipi
Messages postés91Date d'inscriptionmercredi 15 novembre 2006StatutMembreDernière intervention25 juillet 2011
-
18 avril 2009 à 16:53
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 24 févr. 2009 à 21:28
C'est ce qu'il y a de plus simple, mais de plus sécuritaire, car c'est encore faillible comme système si tu te fies seulement au session. La seul façon que ça soit vraiment sécuritaire c'est d'utiliser des tokens dans ton formulaire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Arto_8000
Messages postés1044Date d'inscriptionlundi 7 mars 2005StatutMembreDernière intervention13 juillet 20107 25 févr. 2009 à 04:39
Un token c'est un paramètre que tu rajoutes dans ton formulaire pour t'assurer que c'est bien l'utilisateur qui a fait l'action.
Exemple :
page1.php
<?php
session_start();
$_SESSION['token'] = md5(rand(1,100000000));
?>
<form action="page2.php" method="POST">
">
... et le reste de ton formulaire
</form>
page2.php
<?php
session_start();
if (isset($_POST['token']) && $_POST['token'] == $_SESSION['token']) {
// Le token est bon, on peut continuer //
}
?>
Dans la page 1, on définit le token qui devrait être retransmit à la deuxième page par le client, la valeur de ce token est aléatoire pour rendre impossible le fait de savoir cette valeur d'avance. Ainsi, la requête doit absolument passer par ton site et l'utilisateur doit absolument faire le click sur ton site pour pouvoir continuer.
C'est le moyen le plus efficace pour t'assurer que l'utilisateur est passé via ton site et qu'il ne s'agit pas d'attaque de type CSRF.
marcelolipi
Messages postés91Date d'inscriptionmercredi 15 novembre 2006StatutMembreDernière intervention25 juillet 2011 18 avril 2009 à 16:53
salut
pour ce ki a été du post initial je pense qu'il faut chercher dans les les variables serveur
$_SERVER mais bon pour le momment personnellement je n'y connais pas grand chose.