Crypter le mot de passe de MySQL ou pas ?
Résolu
le_boss
Messages postés
168
Date d'inscription
Statut
Membre
Dernière intervention
-
le_boss Messages postés 168 Date d'inscription Statut Membre Dernière intervention -
le_boss Messages postés 168 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Tout est dans le titre, j'ai vaguement entendu parler de crypter le mot de passe de MySQL dans les sripts php, mais je me demande si c'est bien utile, puisque le code php n'est pas visible...
Pouvez-vous éclairer ma lanterne de newbie, svp ? ;-)
Merci
Tout est dans le titre, j'ai vaguement entendu parler de crypter le mot de passe de MySQL dans les sripts php, mais je me demande si c'est bien utile, puisque le code php n'est pas visible...
Pouvez-vous éclairer ma lanterne de newbie, svp ? ;-)
Merci
A voir également:
- Crypter le mot de passe de MySQL ou pas ?
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
12 réponses
pas la peine car le script pour accedez a ta base de donnée ce trouve sur ton serveur et donc il n'y a pas de donnée qui transite pas le web.
ton script s'execute sur le serveur et se connect a la base de donnée sur le serveur, et comme dit plus haut la source d'une page n'affiche pas le php donc n'affichera pas les infos pour ce connecter a ta BDD ;)
ton script s'execute sur le serveur et se connect a la base de donnée sur le serveur, et comme dit plus haut la source d'une page n'affiche pas le php donc n'affichera pas les infos pour ce connecter a ta BDD ;)
bonjour,
Il est toujours préferable de crypter un mot de passe lorsqu'il est stocké dans une base de données.
en php tu peux utiliser le MD5.
Il est toujours préferable de crypter un mot de passe lorsqu'il est stocké dans une base de données.
en php tu peux utiliser le MD5.
$motdepasse = MD5("le mot de passe en clair");
Slt,
moi aussi je me demandai l'interet de faire ça ....
Pour moi ça fai une protection en plus si jamais on arrive a accéder à ta base de données par exemple.
moi aussi je me demandai l'interet de faire ça ....
Pour moi ça fai une protection en plus si jamais on arrive a accéder à ta base de données par exemple.
Bah si c'est utile.
Un utilisateur malveillant peut récupérer les données transitant entre ton site et ta BD. Donc si tes données sont en clair, il pourra provoquer de gros dégats.
Alors que si tes données sont cryptées. Même si il les récupère, elles ne seront pas exploitables. ;)
Un utilisateur malveillant peut récupérer les données transitant entre ton site et ta BD. Donc si tes données sont en clair, il pourra provoquer de gros dégats.
Alors que si tes données sont cryptées. Même si il les récupère, elles ne seront pas exploitables. ;)
Attention, je parle ici du mot de passe que l'on insère dans la ligne de connexion à MySQL:
mysql_connect("tutu", "toto", "mot_de_passe_de_fou");
Je me fous pas mal qu'un éventuel pirate puisse lire le contenu de la BDD, de toute façon, le but est d'afficher ce contenu sur le site.
Ce que je veux éviter, c'est que le pirate puisse lire mon mot de passe dans la ligne ci-dessus, ce qui lui permettrait de faire tout ce qu'il veut à ma BDD.
mysql_connect("tutu", "toto", "mot_de_passe_de_fou");
Je me fous pas mal qu'un éventuel pirate puisse lire le contenu de la BDD, de toute façon, le but est d'afficher ce contenu sur le site.
Ce que je veux éviter, c'est que le pirate puisse lire mon mot de passe dans la ligne ci-dessus, ce qui lui permettrait de faire tout ce qu'il veut à ma BDD.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
"De toute façon mysql_connect prend un paramètre mot de passe en clair"
ben alors, pas de solution (hormis le SSL, mais ça je crois que je vais pas m'y lancer ^^) pour éviter que le premier apprenti pirate venu me hacke mon joli p'tit site ? sgnirffll
comment y font les sites sans SSL (et y en a des tas) pour pas se faire hacker leur truc, alors ?
ben alors, pas de solution (hormis le SSL, mais ça je crois que je vais pas m'y lancer ^^) pour éviter que le premier apprenti pirate venu me hacke mon joli p'tit site ? sgnirffll
comment y font les sites sans SSL (et y en a des tas) pour pas se faire hacker leur truc, alors ?
Un hack résulte rarement d'un manque de cryptage sur un site, mais plus souvent d'une faille dans la programmation PHP, ou dans la rigueur de programmation en général.
oki merci pour toutes vos réponses
m'en vais laisser mon mysql_connect tel quel et me gaffer à composer des scripts "secure" et les tester à fond avant la mise en production !
m'en vais laisser mon mysql_connect tel quel et me gaffer à composer des scripts "secure" et les tester à fond avant la mise en production !
T'as pas tout à fait tort de te poser la question.
Et de toutes façons, celui qui arrive à rentrer dans ton serveur peut rapatrier ce/ces fichiers pour trouver le mot de passe.
Donc ... inutile, à mon sens.
Et de toutes façons, celui qui arrive à rentrer dans ton serveur peut rapatrier ce/ces fichiers pour trouver le mot de passe.
Donc ... inutile, à mon sens.
La serveur Mysql n'est pas forcement sur la même machine que le serveur Web.
De toute façon mysql_connect prend un paramètre mot de passe en clair, il faudra donc le décrypter avant de lui passer. Donc comme il a déjà été dit, ca ne sert à rien de le crypter dans le script.
De toute façon mysql_connect prend un paramètre mot de passe en clair, il faudra donc le décrypter avant de lui passer. Donc comme il a déjà été dit, ca ne sert à rien de le crypter dans le script.
Dans mon cas, effectivement, la BDD est sur le même serveur que le site.
Mais je suis heureux d'apprendre que cela n'est pas forcément le cas... ça veut dire que si j'ai un hébergement gratuit un peu miteux qui ne met pas ou pas assez de BDD à disposition, je peux contourner le problème en faisant appel à des bases de données situées sur mon serveur web perso à la maison. (a moins que cela ne ralentisse trop le fonctionnement de mon site, qu'en pensez-vous ?)
Mais je suis heureux d'apprendre que cela n'est pas forcément le cas... ça veut dire que si j'ai un hébergement gratuit un peu miteux qui ne met pas ou pas assez de BDD à disposition, je peux contourner le problème en faisant appel à des bases de données situées sur mon serveur web perso à la maison. (a moins que cela ne ralentisse trop le fonctionnement de mon site, qu'en pensez-vous ?)
Oui ça ralentirai nécessairement car tes données passeraient deux fois par internet :
client <----> serveur web <----> serveur bd au lien d'une seule
, et en plus tu exposerais ton serveur de bd 'au monde'.
client <----> serveur web <----> serveur bd au lien d'une seule
, et en plus tu exposerais ton serveur de bd 'au monde'.
Si tu as un hebergement miteux comme tu dis, si quelqu'un fait peter ton serveur il aura acces aux fichiers, et donc a ton mot de passe mysql, meme si ta base est sur un autre serveur ^^
Et de toute façon c'est simple tu ne peux pas crypté le mot de passe dans la fonction mysql_connect, la seule solution que tu as c'est de crypté l'ensemble des données qui transitent en utilisant du https par exemple, mais bon si tu veux mon avis ca vaut pas le coup :)
Et de toute façon c'est simple tu ne peux pas crypté le mot de passe dans la fonction mysql_connect, la seule solution que tu as c'est de crypté l'ensemble des données qui transitent en utilisant du https par exemple, mais bon si tu veux mon avis ca vaut pas le coup :)
En résumé :
- Le code PHP n'est jamais visible du client (sauf erreur du développeur ou de l'admin du serveur)
- Le lien réseau entre serveur Web et serveur BD est soit inexistant (même machine) soit sur un réseau privé, soit le serveur BD n'accepte des connexions que des IP des serveurs web associés.
- Le code PHP n'est jamais visible du client (sauf erreur du développeur ou de l'admin du serveur)
- Le lien réseau entre serveur Web et serveur BD est soit inexistant (même machine) soit sur un réseau privé, soit le serveur BD n'accepte des connexions que des IP des serveurs web associés.