Bonjour,
Est il possible de faire ne injection SQL avec magic_quotes_gpc sur on ?
Si oui, avez vous un exemple concret ?
Merci d'avance ...
Version imprimable
Bonjour,
Est il possible de faire ne injection SQL avec magic_quotes_gpc sur on ?
Si oui, avez vous un exemple concret ?
Merci d'avance ...
magic_quotes_gpc ne protège pas contre l'injection SQL.
il ne fait que rajouter des backslash devant certains caractères.
Donc meme si magic_quotes_gpc est à 'on', il sera facile de fire une injection SQL si celle si est mal protégée :
ici, il faudrait encadrer $_GET['id'] par un intval par exemple si $_GET['id'] est un entierCode:mysql_query("SELECT * FROM tabe WHERE id=".$_GET['id']." AND admin=1");
sinon rien n'empêche de modifier la variable GET parCode:mysql_query("SELECT * FROM tabe WHERE id=".intval($_GET['id'])." AND admin=1");
et donc ignorer la fin de la requêteCode:1 --
tout dépend comment sont écrite les requêtes
Merci Seb33300 de ta réponse.
Quel est l'intérêt de forcer un SELECT ?Citation:
sinon rien n'empêche de modifier la variable GET par 1 --
Bon, ça c'est clair ...Citation:
tout dépend comment sont écrite les requêtes
En fait, je me suis mal exprimé.
Pour être plus clair, je vais donner un exemple :
Est il possible de faire une injection sql sur cette requête :
Dans le but de forcer un espace protégé....Code:
1
2
3
4
5 $sql = "SELECT * FROM users WHERE nom = '".mysql_real_escape_string($_POST['login'])."'" ... if ( mysql_num_rows($sql) == 1 ) { if ( $row['motdepasse'] == md5($_POST['mot_de_passe']) ) { Alors c'est OK