Bonjour,
étudiant en ecole d'informatique je dois réaliser un exposé sur les injections Sql.
Pour cela je réalise un petit site avec des exemples et un code volontairement bourrés de failles.
Je bloque sur la modification d'un champs passé dans l'url
Url : http://localhost/failles/mapage?login=membre
Si je souhaite mettre par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <?php // on se connecte à MySQL $db = mysql_connect('localhost', 'root', ''); // on seléctionne la base mysql_select_db('failles',$db); $login= $_GET['login']; $count = 0; $q = mysql_query("SELECT PrenomMembre,NomMembre FROM membre WHERE LoginMembre ='$login'"); $result = mysql_fetch_assoc($q); //Ligne 69 $PrenomMembre = $result["PrenomMembre"]; $NomMembre = $result["NomMembre"]; echo '<strong><span style="color: #FF0000">Prénom : ' . $PrenomMembre .'</span></strong><br/>'; echo '<strong><span style="color: #FF0000">Nom : ' . $NomMembre .'</span></strong><br/>'; ?>
http://localhost/mapage?login=membre
il me retourne Prénom et Nom
Si je tente la faille
http://localhost/mapage?login=' UNION SELECT PasswordMembre FROM membre WHERE id=1
Je récupère l'erreur :
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given Ligne 69
Qu'est ce que je fais de mal ? ou il y a t-il quelques chose qui protège mon code contre mon grès ?
Merci
Partager