Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/07/2006, 11h52   #1
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Par défaut [Sécurité] Sécurité portable pour les données utilisées dans une requête

Bonjour.
Actuellement je suis en train de concevoir une application qui pourra fonctionner plusieurs type de SGBD. SqlServer et Mysql 4 et 5 par la suite Postgresql. Mon souci premier c'est déviter le plus possible le risque d'injection SQL de manière plus générique. Sous mysql c'étais simple (selon certain) il suffit d'utiliser mysql_real_escape_string mais si je suis sous SQL Server je ne sais pas si c'est judicieux de l'utiliser surtout qu'il se comporet un peut différement. Il y a aussi addslashes mais est-ce suffisant.
Quel est la meilleur alternative? Faire soit-même une fonction qui arrive a zapper tous élément suspect. (il faut que je puisse les référencer) ou utiliser malgré tous les fonctions proposé?
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2006, 12h00   #2
NoT
Membre confirmé
 
Inscription : février 2004
Messages : 237
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 237
Points : 261
Points : 261
Lut,

Le meilleur moyen de contrer les injections est de vérifier chaque valeur passée dans une requete, par rapport au type que tu attends, exemple t'as une variable $age qui provient d'un formulaire de saisi, avant de le faire communiquer avec ta base, vérifie bien que ce soit un entier. (fonction is_int() )

Wola
NoT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2006, 12h04   #3
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Oui pour ça je suis entierement daccord. mais il est possible que de controler que deux type pour ça. si c'est int ou boolean. le danger provient des chaines de caractères ou il faut que je puisse interdire certaine suite comme :
--
'
=
etc...
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2006, 13h58   #4
Membre chevronné
 
Inscription : mars 2005
Messages : 583
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 583
Points : 651
Points : 651
hello,

si tu fais ton appli avec php5, utilise PDO et les requetes préparées... elles protegent automatiquement les données. c'est pratique.

par contre avec php4 ca risque d'etre un peu plus compliqué.
Petibidon est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/07/2006, 14h48   #5
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Apparement c'est une extension mais le problème c'est que c'est application qui sera distribué donc je ne sais pas ou il sera installé et quel config donc je dois faire l'application avec le minimum d'élément exterieur à rajouter. Il faut que ça puisse fonctionner avec les config de base de php5.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h26.


 
 
 
 
Partenaires

Hébergement Web