Piratage d'emails dans une base de données

WRInaute discret
Les internautes peuvent s'inscrire sur différentes lettres d'information sur mon site.
Je stocke leur email dans ma base de données.
Deux internautes m'ont récemment interpelés en affirmant qu'ils recevaient beaucoup de spam divers depuis leur inscription sur une des lettres d'info. Est-ce possible que des pirates ait accès à ma base de données et captent les emails contenus dedans ? :?:
 
WRInaute occasionnel
Y'a qqpart un problème de sécurité.
Sur le site avec un accès à ta base, a l'aspiration sur le forum ou sur tes formulaires.
 
WRInaute occasionnel
ROFL, oui j'espère pour lui.

Quoi qu'il y a pas si longtemps que cela, Leclerc envoyait encore une mailing list avec tout les inscrits en CC :)
 
WRInaute passionné
Leonick a dit:
tes lettres d'information, tu les envoies bien en BCC ?
Ce serait marrant =)
Mais oui, tu peux t'être fait pomper ta base de données, ça arrive fréquemment, après peut-être que tes users ne sont pas inscrit qu'à ton site avec cette adresse email.
 
WRInaute discret
Voici le header :
Code:
     $headers ='From: "Auto"<econo-ecolo@econo-ecolo.org>'."\n";
     $headers .='Reply-To: econo-ecolo@econo-ecolo.org'."\n";
     $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
     $headers .='Content-Transfer-Encoding: 8bit';

Est-ce que vous savez comment sécuriser la base de données ?
 
WRInaute passionné
econo-ecolo a dit:
Est-ce que vous savez comment sécuriser la base de données ?
Ton header m'a l'air normal, au niveau de la base de données, pour la sécurisé, c'est pas si simple.
Pour ma part j'utilise des petits scripts et je ne stocks pas les emails en clair, par exemple
plop@plop.net devient (dans ma base)
pl(2/3 caractères ici)op@plop.(un array de correspondance)
En tout cas c'est possiblement une injection SQL, tu dois utiliser mysql_real_escape_string partout, pour tes SELECT/INSERT/UPDATE.
Si tu utilises un CMS donne nous le nom, ou regarde sur google si des exploit ont été trouvés recherche de type "exploit nom_du_cms email" ou "exploit nom_du_cms sql injection".
 
WRInaute discret
Mes lettres d'info gérées par un CMS ne semblent pas être piratées. Il s'agit d'une nouvelle lettre d'info que j'ai fait moi-même.

Il s'agit de 2 internautes sur 200. Par contre, je ne sais pas si les autres ne m'ont rien dit...

C'est une bonne idée :
plop@plop.net devient (dans ma base)
pl(2/3 caractères ici)op@plop.(un array de correspondance)

J'ai regardé sur un manuel php sur internet la fonction "mysql_real_escape_string", mais je n'y comprend pas grand chose. Est-ce que vous avez des exemples d'utilisation ?

Merci.
 
WRInaute passionné
Pour mysql_real_escape_string c'est "assez simple"
Tout ce que tu mets dans ta base de données doit être échappé :
Code:
$sql = 'INSERT INTO users (username, password) VALUES (' . $_POST['username'] . ', ' . $_POST['password'] .');';
devient
Code:
$sql = 'INSERT INTO users (username, password) VALUES (' . mysql_real_escape_string($_POST['username']) . ', ' . mysql_real_escape_string($_POST['password'] . '));';

(à vérifié tappé sur le forum).
Le principe est d'empêcher l'insertion de "mauvais" caractères, mais bon, si tu es sur un CMS, il ne devrait pas y avoir de soucis.
 
WRInaute passionné
non, ça sécurise un peu les entrés, mais il y a 1000 et une façon de pirater un site web et rien n'est infaillible.
 
Discussions similaires
Haut