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

Langage PHP Discussion :

Se protéger des injections sql


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 18
    Par défaut Se protéger des injections sql
    Bonjour,

    l'un de mes sites a été victime d'un piratage, par injection d'une requête php.
    ça ne m'était jamais arrivé auparavant, je cherche donc une solution pour sécuriser tout ça.

    l'injection a permis d'accéder aux identifiants de connexions de la base de donnée.

    ma question est donc la suivante :
    si je remplace ma page de connexion par un htacces htpasswd, cela permettra donc de ne plus donner l'accès à la base de donnée des identifiants. est-ce que cela sera suffisant ?

    dois-je revoir d'autres pages dans mon admin aussi ?

    d'avance merci

  2. #2
    Membre chevronné Avatar de hariman
    Homme Profil pro
    Développeur Java, Android
    Inscrit en
    Janvier 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations professionnelles :
    Activité : Développeur Java, Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2008
    Messages : 200
    Par défaut
    Bonjour,

    Utilise la fonction mysql_real_escape_string() sur les valeurs obtenues à partir d'un formulaire. Cela permet d'éviter l'insertion de codes sql dans les valeurs d'un formulaire.

  3. #3
    Membre confirmé
    Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2011
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : Guinée

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 112
    Par défaut
    Exemples

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //connexion à la base donnée
    	$connexion=mysql_connect("localhost", "root", "" )or die("cannot connect" );
    	mysql_select_db("basedugenie" )or die("cannot select DB" );
    	mysql_query("SET NAMES 'utf8'" );
     
    $pseudo=mysql_real_escape_string($_POST["Pseudo"]);
    		$email=mysql_real_escape_string($_POST["Email"]);
    		$motdep=mysql_real_escape_string($_POST["pwd1"]);

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Par défaut
    Il vaut mieux éviter les fonctions mysql_* désormais, préferez à la place PDO ou mysqi, et utilisez des requêtes préparées. Zéro risque d'injection dans ce cas.

    Et pour nettoyer ou valider les données au besoin, utilisez les filters.

Discussions similaires

  1. Le moteur de recherche Google utilisé pour des injections SQL
    Par Hinault Romaric dans le forum Sécurité
    Réponses: 11
    Dernier message: 21/11/2013, 14h32
  2. Réponses: 15
    Dernier message: 08/09/2010, 15h33
  3. Se protéger des injections javascript
    Par christophetd dans le forum Langage
    Réponses: 5
    Dernier message: 23/01/2009, 07h26
  4. Script pour protéger les formulaires PHP de l'injection SQL
    Par thebay dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 15/05/2007, 16h23

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