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 :

Infos de connexion mysql en clair dans fonction PHP


Sujet :

PHP & Base de données

Vue hybride

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

    Informations forums :
    Inscription : Décembre 2008
    Messages : 57
    Par défaut Infos de connexion mysql en clair dans fonction PHP
    Bonjour à tous !

    Une question pour les experts...

    Je développe un site dont les données sont contenues dans plusieurs bases mysql en parallèle. En effet, lorsqu'un utilisateur s'inscrit, une base de donnée lui est attribuée.

    Lorsque l'utilisateur se connecte sur le site, j'ai besoin d'ouvrir une connexion à la base de données qui lui est attribuée et donc de récupérer les infos de connexion à cette base de données.

    J'ai fait cette fonction en PHP. Ce qui implique que toutes les infos de connexion à toutes les bases de données figurent en clair dans cette fonction PHP.

    Mes questions :
    Est-ce bien raisonnable sur le plan de la sécurité du site et des données utilisateur ?
    Peut-on crypter ces infos de connexion ?
    Y-a-t'il un meilleur moyen ?

  2. #2
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Par défaut
    Bonjour,

    Réservé aux experts ?

    Le code PHP est un code serveur traduit en un code client par le serveur.

    Au retour, tu obtiens du HTML pour l'affichage...

    Un code PHP ne peut pas être lu par un client. Où se situe ton problème ?

    Sauf si la personne a accès au FTP, je ne vois pas trop.

    Après, tu peux mettre les clefs de connexion dans un fichier différent mais bon...
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 57
    Par défaut
    Je sais tout ça, mais je travaille sur un site basé sur un CMS, donc je ne maîtrise pas vraiment les éventuels trous de sécurité.

    La question est : si quelqu'un de mal intentionné parvient à cracker le site, pourra-t'il avoir accès à toutes les infos de connexion de toutes les bases de données ?
    Et question subsidiaire : est-il possible de protéger ces infos de connexion de façon fiable, en les cryptant ou autre ?

  4. #4
    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
    Il y a plusieurs cas :
    - ton pirate s'introduit dans ton espace d'administration : il n'a pas pour autant accès aux fichiers php, par contre tu as peut etre dans cet espace, une interface pour gérer les mots de passe des utilisateurs donc c'est cuit.

    - ton pirate s'introduit sur ton FTP : il a alors effectivement accès aux fichiers avec les informations de connexion.
    La seule solution contre ça est de pouvoir placer les fichiers en dehors de l'arborescence du site (en supposant que ton ftp ne donne pas accès à tout le serveur evidemment).

    - Sur la plupart des hebergeurs communs, le compte est le meme pour le FTP et pour la base de donnée, tu es donc foutu dans le cas précédent de toute facon.

    Un mot de passe doit de toute facon exister en clair quelque part, on peut juste le chiffrer pendant son trajet sur internet pour qu'il ne soit pas écouté : c'est le rôle de SSL et en particulier pour toi mysql_ssl.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 57
    Par défaut
    Merci pour ces infos.

    En fait, si je comprends bien :
    - la vulnérabilité de mon site dépend grandement de celle du CMS que j'utilise
    - pour éviter qu'un pirate ayant réussi à cracker le cms puisse accéder à mes mots de passe, il faut les placer sur un autre hébergement, si possible pas sur le même serveur (je suis en mutualisé).

    La gestion des mots de passe par le cms ne m'inquiète pas trop, car le pirate ne pourra accéder qu'à la bdd du cms, qui ne contient rien d'autre que les données de connexion à la partie du site gérée par le cms (la partie "publique").
    En effet, la partie "espace privé" de l'utilisateur est certes supportée par le cms pour l'affichage, mais relève d'un développement propriétaire fait pour séparer les deux mondes.

    Question subsidiaire :
    est-ce que le fait de placer toutes les bdd sur un autre hébergement (chez le même hébergeur, mais pas sur le même serveur) augmente la sécurité des données ?

  6. #6
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Par défaut
    Citation Envoyé par Lamanne Voir le message
    pour éviter qu'un pirate ayant réussi à cracker le cms puisse accéder à mes mots de passe, il faut les placer sur un autre hébergement, si possible pas sur le même serveur (je suis en mutualisé).
    Non.
    Sur un même serveur mais pas en accès direct au ftp.

    Par exemple

    ./racine
    ./mesFichiersConnexion
    ./monSite
    Avec le ftp qui pointe vers monSite.

    Citation Envoyé par Lamanne Voir le message
    est-ce que le fait de placer toutes les bdd sur un autre hébergement (chez le même hébergeur, mais pas sur le même serveur) augmente la sécurité des données ?
    Non.

    Si la personne accède à tes fichiers de connexion, c'est la même chose. Elle perdra 5 secondes le temps de lancer la connexion vers la BdD appropriées voilà tout.
    *Si la réponse vous convient, n'oubliez pas le tag
    *Exprimez vous dans un français correct; on prend le temps de vous lire, prenez le temps de bien écrire.
    *Et comment on interprète votre code? N'oubliez pas la balise!

    *Pour une mise en page simple avec des divs.
    *Pour faire des formulaires xHTML CSS.

Discussions similaires

  1. passer tableau en reference dans fonction PHP
    Par ju0123456789 dans le forum Langage
    Réponses: 4
    Dernier message: 02/12/2008, 15h59
  2. [Spip] INCLURE dans fonction PHP
    Par nicolas.pissard dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 29/09/2008, 15h16
  3. [MySQL] Problème de syntaxe avec variable utilisée dans fonction PHP et MySQL
    Par redvivi dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 19/03/2008, 21h07
  4. insérer classe javascript dans fonction php
    Par noname_971 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/03/2008, 11h28
  5. [PHP-JS] Probleme de Javascript dans fonction php
    Par alllo dans le forum Langage
    Réponses: 10
    Dernier message: 24/06/2007, 19h21

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