IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Questions de securité des insertions [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    sans
    Inscrit en
    Avril 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Avril 2017
    Messages : 12
    Par défaut Questions de securité des insertions
    Bonjour

    J ai lu tout et son contraire sur la securisation des bdd.
    J ai lu qu il fallait impérativement utiliser quote() pour PDO pour les strings alors que j ai lu aussi que si la requête était préparée, cela été inutile.

    Actuellement j utilise les htmlentities() et les requêtes préparée du style $stmt->bindParam(':ThreadId', $threadid, PDO:: PARAM_INT);.

    Est-ce suffisant ? Que pourriez vous me conseiller ?

    merci de vos réponses

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si tes valeurs sont passées comme paramètres de la requête préparée, alors il ne faut ni quote() ni htmlentities().
    Au passage, dans la doc PHP il est bien recommandé d'utiliser des paramètres plutôt que qote().
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    sans
    Inscrit en
    Avril 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Avril 2017
    Messages : 12
    Par défaut
    Merci d avoir pris le temps de me répondre.

    En fait c est de htmlspecialchars() que je voulais parler et non de htmlentities().

    J'ai lu que l on devait utiliser parce que si j insère '<script>alert('oui');</script>' sans cette fonction c est ce qui est dans la bdd alors que si j utilise htmlspecialchars() c est '&lt;script&gt;alert('ici')&lt;/script&gt' que j ai dans ma bdd...

    merci de ta patience

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    htmlspecialchars() ne doit être utilisé qu'au moment de l'affichage.
    Pas de l'enregistrement en BDD.

    Quant aux balises non voulus, à toi de faire le nettoyage avant (strip_tags,.....).

  5. #5
    Membre averti
    Homme Profil pro
    sans
    Inscrit en
    Avril 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Avril 2017
    Messages : 12
    Par défaut
    merci pour ces précisions

  6. #6
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    Salut,

    Citation Envoyé par jreaux62 Voir le message
    Quant aux balises non voulus, à toi de faire le nettoyage avant (strip_tags,.....).
    Attention quand même, strip_tags casse les chaînes UTF-8.

    C'est très simple : tout mais alors absolument tout ce qui est destiné à l'affichage doit passer par la moulinette htmlspecialchars().
    Aucune exception !

    Tu peux te permettre de garder en base les valeurs brutes (très fortement conseillé) à condition d'avoir la certitude que tout sera échappé au rendu.

  7. #7
    Membre averti
    Homme Profil pro
    sans
    Inscrit en
    Avril 2017
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Avril 2017
    Messages : 12
    Par défaut
    merci pour cette précision mais une dernière question : ça veut dire quoi casser la chaine UTF-8 ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment faire des inserts massivement et rapidement ?
    Par JYves dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 09/08/2006, 10h57
  2. [VBA-E] Question à propos des checkbox
    Par Timfg dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 26/04/2005, 15h09
  3. Question a propos des modulos
    Par barthelv dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 24/03/2005, 15h56
  4. [IB6] mon serveur crash apres des insert en série...
    Par Rmotte dans le forum Débuter
    Réponses: 11
    Dernier message: 27/05/2004, 14h53
  5. Réponses: 9
    Dernier message: 29/07/2003, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo