Vous n'êtes pas identifié(e).

#1 14/08/2013 10:12:07

icadedt
Membre

empecher les attaques par injection de code sql

bonjour,
quelles sont les bonnes pratiques pour eviter les injections de code sql ?

La fonction format peut elle limiter cela ?
EXECUTE format('UPDATE tbl SET %I = $1 WHERE cle = $2', nom_colonne)
   USING nouvellevaleur, clevaleur;

Merci d'avance

Hors ligne

#2 14/08/2013 21:18:42

gleu
Administrateur

Re : empecher les attaques par injection de code sql

Non, format ne protège en rien. Utiliser les fonctions quote_* (quote_literal, quote_ident, quote_null).


Guillaume.

Hors ligne

#3 15/08/2013 11:31:34

arthurr
Membre

Re : empecher les attaques par injection de code sql

Et dans l'idéal : utilisez un "PREPARE" puis "EXECUTE" avec le passage des paramètres dans le "EXECUTE" : http://docs.postgresql.fr/9.1/sql-prepare.html
La majorité des langages proposent cette possibilité

Hors ligne

Pied de page des forums