w33d1f0 Posted February 10, 2005 Share Posted February 10, 2005 Je voulais savoir si le magic_quotes_gpc à ON (ds php.ini) protégeait à 100% des attaques par injection mysql ? A priori si le ' est slashé plus moyen de faire l'injection, ce qu'on ajoute étant pris pour suite de la variable et non pa comme la suite de la requête, mais je me demandais s'il n'etait pa possible de "déslashe" (ou débackslashé serait + correct). Pour le cas ou le serveur à les magic_quotes_gpc sur off, g vu qu'il fallait utiliser la fonction mysql_real_escape_string() pour du code sure, description sur : http://www.nexen.net/docs/php/annotee/func...cape-string.php Voil c tout. Link to comment Share on other sites More sharing options...
Compte_supprime_49771 Posted February 11, 2005 Share Posted February 11, 2005 Pour le cas ou le serveur à les magic_quotes_gpc sur off, g vu qu'il fallait utiliser la fonction mysql_real_escape_string() pour du code sure, description sur :http://www.nexen.net/docs/php/annotee/func...cape-string.php Comme il est dit au niveau de la partie "Meilleure pratique", de ce lien, considère toujours que les magic quotes sont off, et utilise une petite fonction type la quote_smart() qu'ils donnent... (oublie pas de te connecter au serveur MySQL, *avant* d'utiliser la fonction 'mysql_real_escape_string') mais je me demandais s'il n'etait pa possible de "déslashe" (ou débackslashé serait + correct). Si tu parles d'un utilisateur qui pourrait passer outre le backslashage, non, c'est théoriquement impossible (sauf bug de PHP/MySQL, ou mauvaise utilisation de ta part); si tu veux toi-même, débackslasher une chaîne, t'as stripslashes() (http://www.nexen.net/docs/php/annotee/function.stripslashes.php). Link to comment Share on other sites More sharing options...
w33d1f0 Posted February 11, 2005 Author Share Posted February 11, 2005 Merci pour tes infos. A près test en effet même en utilisant stripslashes() dans l'injection, si le magic_quote est sur on l'attaque ne fonctionne pas. Mais je ne suis pas certain que le magic quote empêche tte injection je vais continuer a chercher un peu... Sinon c sur que l'utilisation de 'mysql_real_escape_string' semble etre le meilleur moyen pour securiser un code, afin de le rendre portable vers un serveur qui a le magic_quote à off... Link to comment Share on other sites More sharing options...
Compte_supprime_49771 Posted February 11, 2005 Share Posted February 11, 2005 A près test en effet même en utilisant stripslashes() dans l'injection, si le magic_quote est sur on l'attaque ne fonctionne pas.Mais je ne suis pas certain que le magic quote empêche tte injection je vais continuer a chercher un peu... Cherche pas trop longtemps quand même (enfin c'est bien de tester pour se rendre compte des choses... c'est pas un reproche ) Sinon c sur que l'utilisation de 'mysql_real_escape_string' semble etre le meilleur moyen pour securiser un code, afin de le rendre portable vers un serveur qui a le magic_quote à off... Absolument. Le jour où ton code arrivera sur un serveur sur lequel on ne pourra pas régler cette option, et quelle est désactivée, tu devras recoder cette partie, alors autant bien le faire dès le début... Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.