Conseil sur $_GET

lorie63 -  
 lorie63 -
Bonjour,

J'aimerai demandé quelques conseil en terme de sécurité dans un programme PHP!!

il s'agit d'un exercice, je dois dire si c'est bien ou pas , ce qui a changé etc.

<?php

// Le login et le pass se trouvent dans le $_GET.
$result = $db->query("select * from users where login=" . $_GET["login"]) ;

if ($result->num_rows > 0)
{
list($login, $pass) = $result->fetch_row() ;

if ($pass == $_GET["pass"])
{
// Suite de l'appli...
}
else
{
echo "Le mot de passe n'est pas le bon." ;
}
}
else
{
echo "L'utilisateur n'existe pas." ;
}

?>

Deja je trouve que le $_GET n'est pas adapté pour récupérer le mot de passe. Le mieux serait d'utiliser POST pour pas qu'on voit les mot de passe dans l'url. Ensuite, il y a un risque d'injection sql, donc il serait preferabe de faire quelque traitement sur le login et mot de passe avant de les utiliser avec la base de données. mais quel genre de traitement pour vérifier le contenu??

2 réponses

nEm3sis Messages postés 722 Statut Membre 113
 
Deja je trouve que le $_GET n'est pas adapté pour récupérer le mot de passe. Le mieux serait d'utiliser POST pour pas qu'on voit les mot de passe dans l'url.
je suis d'accord

Ensuite, il y a un risque d'injection sql, donc il serait preferabe de faire quelque traitement sur le login et mot de passe avant de les utiliser avec la base de données. mais quel genre de traitement pour vérifier le contenu??
mysql_real_escape_string
0
Nabla's Messages postés 20731 Statut Contributeur 3 194
 
0
lorie63
 
ok merci pr lé conseils.
0