J'aide un web-master à supprimer les spam de forum, mais maintenant tous par les proxy, vu qu'on a supprimé les plages des pays concernés.
Comme les proxy suppriment l'en-tête de l'expéditeur, j'aimerais savoir si quelqu'un connait le moyen de trouver l'origine dans le paquet ip.
Je sais que l'on peut le faire avec des programmes très spéciaux, qui coutent "les yeux de la tête"e;e;e;, mais n'y a t-il pas une autre méthode ou des programmes free/shreware qui le permettent ?
La plus part le pourrait si les codes de validation des adresses e-mail n'étaient pas aussi mal foutus et si plus de gens connaissaient la signification du '+' dans une adresse e-mail.
Petite clarification : il n'y a pas de « signification du '+' dans une adresse e-mail », il y a juste une configuration de certains MTA, par défaut ou facilement accessible, qui donne un sens particulier au '+'.
Vi, au temps pour moi, j'ai été un trop vite en rédaction. D'autant plus que la RFC 3696 autorisant les caractères non alphanumériques, tels que le "+" justement, cette signification n'a finalement jamais été officialisée.
-- 17/06/1969 - 18/01/2011
Repose en paix mon amour :'(
Nicolas George n'était pas loin de dire :
La plus part le pourrait si les codes de validation des adresses
e-mail n'étaient pas aussi mal foutus et si plus de gens connaissaient
la signification du '+' dans une adresse e-mail.
Petite clarification : il n'y a pas de « signification du '+' dans une
adresse e-mail », il y a juste une configuration de certains MTA, par défaut
ou facilement accessible, qui donne un sens particulier au '+'.
Vi, au temps pour moi, j'ai été un trop vite en rédaction. D'autant
plus que la RFC 3696 autorisant les caractères non alphanumériques,
tels que le "+" justement, cette signification n'a finalement jamais
été officialisée.
La plus part le pourrait si les codes de validation des adresses e-mail n'étaient pas aussi mal foutus et si plus de gens connaissaient la signification du '+' dans une adresse e-mail.
Petite clarification : il n'y a pas de « signification du '+' dans une adresse e-mail », il y a juste une configuration de certains MTA, par défaut ou facilement accessible, qui donne un sens particulier au '+'.
Vi, au temps pour moi, j'ai été un trop vite en rédaction. D'autant plus que la RFC 3696 autorisant les caractères non alphanumériques, tels que le "+" justement, cette signification n'a finalement jamais été officialisée.
-- 17/06/1969 - 18/01/2011
Repose en paix mon amour :'(
Gloops
Stéphane Catteau a écrit, le 13/03/2013 15:22 :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
La question étant, "comment ne pas me faire spammer mon forum", le cryptage n'apporte pas le moindre début de réponse.
C'est vrai que j'ai élargi peut-être un peu abusivement. La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Avec comme sous-entendu qu'a priori un responsable de forum cherche à être crédible, donc que si il peut éviter ce style de dérapage, i l fait ce qu'il faut.
Je dis la base de données, donc en sous-entendant que le piratage soit passé par trouver la chaîne de connexion, en supposant d'entrée de jeu qu'on avait évité de publier en clair les adresses des participants s ur le forum. Sinon, évidemment, il n'y a plus besoin de se casser la têt e.
Stéphane Catteau a écrit, le 13/03/2013 15:22 :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
La question étant, "comment ne pas me faire spammer mon forum", le
cryptage n'apporte pas le moindre début de réponse.
C'est vrai que j'ai élargi peut-être un peu abusivement.
La question que je cherchais à traiter était, "une fois qu'on a
encouragé les participants à fournir leur adresse e-mail pour pouvoir
écrire sur le forum, comment éviter de se faire pirater la base de
données, pour éviter que le lendemain les participants reçoivent du spam
sur l'adresse e-mail qu'ils viennent de fournir ?"
Avec comme sous-entendu qu'a priori un responsable de forum cherche à
être crédible, donc que si il peut éviter ce style de dérapage, i l fait
ce qu'il faut.
Je dis la base de données, donc en sous-entendant que le piratage soit
passé par trouver la chaîne de connexion, en supposant d'entrée de jeu
qu'on avait évité de publier en clair les adresses des participants s ur
le forum. Sinon, évidemment, il n'y a plus besoin de se casser la têt e.
La question étant, "comment ne pas me faire spammer mon forum", le cryptage n'apporte pas le moindre début de réponse.
C'est vrai que j'ai élargi peut-être un peu abusivement. La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Avec comme sous-entendu qu'a priori un responsable de forum cherche à être crédible, donc que si il peut éviter ce style de dérapage, i l fait ce qu'il faut.
Je dis la base de données, donc en sous-entendant que le piratage soit passé par trouver la chaîne de connexion, en supposant d'entrée de jeu qu'on avait évité de publier en clair les adresses des participants s ur le forum. Sinon, évidemment, il n'y a plus besoin de se casser la têt e.
Gloops
Nicolas George a écrit, le 12/03/2013 19:49 :
Ouh, là, non, jamais de la vie. La crypto, c'est vraiment très traî tre. À moins de s'y connaître très bien, écrire son propre programme de chiffrement, c'est synonyme d'écrire son propre programme plein de tr ous.
C'est mieux de s'en procurer un tout prêt, alors ?
Mon raisonnement, c'était que si on utilise quelque chose de tout prê t, un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la tête ?
Nicolas George a écrit, le 12/03/2013 19:49 :
Ouh, là, non, jamais de la vie. La crypto, c'est vraiment très traî tre. À
moins de s'y connaître très bien, écrire son propre programme de
chiffrement, c'est synonyme d'écrire son propre programme plein de tr ous.
C'est mieux de s'en procurer un tout prêt, alors ?
Mon raisonnement, c'était que si on utilise quelque chose de tout prê t,
un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la
tête ?
Ouh, là, non, jamais de la vie. La crypto, c'est vraiment très traî tre. À moins de s'y connaître très bien, écrire son propre programme de chiffrement, c'est synonyme d'écrire son propre programme plein de tr ous.
C'est mieux de s'en procurer un tout prêt, alors ?
Mon raisonnement, c'était que si on utilise quelque chose de tout prê t, un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la tête ?
Gloops
Gloops a écrit, le 14/03/2013 13:46 :
Stéphane Catteau a écrit, le 13/03/2013 15:22 :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
à supposer qu'un mot de passe soit écrit dedans, bien entendu.
Gloops a écrit, le 14/03/2013 13:46 :
Stéphane Catteau a écrit, le 13/03/2013 15:22 :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
à supposer qu'un mot de passe soit écrit dedans, bien entendu.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les chaînes de production dans _Les temps modernes_ ?
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court, évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera pas.
La deuxième bonne réponse, c'est de ne pas stocker les données dont tu n'as pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mail de confirmation contenant un lien pour activer le compte, eh bien tu ne stocke pas l'adresse mail du tout : tu envoies le mail de confirmation avec le lien, tu encodes dans le lien les données authentifiées dont tu auras besoin, et tu oublier l'adresse mail immédiatement.
Gloops , dans le message <khsgs2$qlk$1@nntp.pasdenom.info>, a écrit :
Les chaînes de connexion notamment.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser
régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les
chaînes de production dans _Les temps modernes_ ?
La question que je cherchais à traiter était, "une fois qu'on a
encouragé les participants à fournir leur adresse e-mail pour pouvoir
écrire sur le forum, comment éviter de se faire pirater la base de
données, pour éviter que le lendemain les participants reçoivent du spam
sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court,
évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera
pas.
La deuxième bonne réponse, c'est de ne pas stocker les données dont tu n'as
pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mail de
confirmation contenant un lien pour activer le compte, eh bien tu ne stocke
pas l'adresse mail du tout : tu envoies le mail de confirmation avec le
lien, tu encodes dans le lien les données authentifiées dont tu auras
besoin, et tu oublier l'adresse mail immédiatement.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les chaînes de production dans _Les temps modernes_ ?
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court, évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera pas.
La deuxième bonne réponse, c'est de ne pas stocker les données dont tu n'as pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mail de confirmation contenant un lien pour activer le compte, eh bien tu ne stocke pas l'adresse mail du tout : tu envoies le mail de confirmation avec le lien, tu encodes dans le lien les données authentifiées dont tu auras besoin, et tu oublier l'adresse mail immédiatement.
Gloops
Nicolas George a écrit, le 14/03/2013 13:55 :
Gloops , dans le message <khsh0s$qlk$, a écrit :
C'est mieux de s'en procurer un tout prêt, alors ?
Oui.
Mon raisonnement, c'était que si on utilise quelque chose de tout pr êt, un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
En crypto bien conçue, la sécurité repose totalement sur la clef, et absolument pas sur l'algorithme.
A priori, si on dit qu'il faut crypter la chaîne de connexion dans le fichier de config, c'est qu'on part du principe qu'un pirate va réussir à lire le fichier de config (première anomalie à la base, mais admettons). Où est-ce qu'on mettrait bien la clef pour qu'elle, au moins, échappe au pirate ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la tête ?
Ah, c'est vrai qu'on a dit existant, on n'a pas dit payant :)
Nicolas George a écrit, le 14/03/2013 13:55 :
Gloops , dans le message <khsh0s$qlk$2@nntp.pasdenom.info>, a écrit :
C'est mieux de s'en procurer un tout prêt, alors ?
Oui.
Mon raisonnement, c'était que si on utilise quelque chose de tout pr êt,
un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
En crypto bien conçue, la sécurité repose totalement sur la clef, et
absolument pas sur l'algorithme.
A priori, si on dit qu'il faut crypter la chaîne de connexion dans le
fichier de config, c'est qu'on part du principe qu'un pirate va réussir
à lire le fichier de config (première anomalie à la base, mais
admettons). Où est-ce qu'on mettrait bien la clef pour qu'elle, au
moins, échappe au pirate ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la
tête ?
C'est mieux de s'en procurer un tout prêt, alors ?
Oui.
Mon raisonnement, c'était que si on utilise quelque chose de tout pr êt, un pirate avait eu tout loisir d'étudier comment ça fonctionne ?
En crypto bien conçue, la sécurité repose totalement sur la clef, et absolument pas sur l'algorithme.
A priori, si on dit qu'il faut crypter la chaîne de connexion dans le fichier de config, c'est qu'on part du principe qu'un pirate va réussir à lire le fichier de config (première anomalie à la base, mais admettons). Où est-ce qu'on mettrait bien la clef pour qu'elle, au moins, échappe au pirate ?
Par ailleurs, est-ce qu'il y a moyen que ça ne coûte pas les yeux de la tête ?
Ah, c'est vrai qu'on a dit existant, on n'a pas dit payant :)
Gloops
Nicolas George a écrit, le 14/03/2013 14:00 :
Gloops , dans le message <khsgs2$qlk$, a écrit :
Les chaînes de connexion notamment.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fo u, comme les chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouv oir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
Merci :)
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court, évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera pas.
Moyennant quoi, la question reste entière ...
La deuxième bonne réponse, c'est de ne pas stocker les données do nt tu n'as pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mai l de confirmation contenant un lien pour activer le compte, eh bien tu ne st ocke pas l'adresse mail du tout : tu envoies le mail de confirmation avec le lien, tu encodes dans le lien les données authentifiées dont tu aur as besoin, et tu oublier l'adresse mail immédiatement.
Ah, là, effectivement, c'est une piste intéressante.
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix messages (dans un débat ça ne paraît pas être le bout du monde), ça oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'i l ne va pas se lasser ?
Nicolas George a écrit, le 14/03/2013 14:00 :
Gloops , dans le message <khsgs2$qlk$1@nntp.pasdenom.info>, a écrit :
Les chaînes de connexion notamment.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser
régulièrement, comme des chaînes de vélo ? Ça rend Charlot fo u, comme les
chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
La question que je cherchais à traiter était, "une fois qu'on a
encouragé les participants à fournir leur adresse e-mail pour pouv oir
écrire sur le forum, comment éviter de se faire pirater la base de
données, pour éviter que le lendemain les participants reçoivent du spam
sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
Merci :)
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court,
évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera
pas.
Moyennant quoi, la question reste entière ...
La deuxième bonne réponse, c'est de ne pas stocker les données do nt tu n'as
pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mai l de
confirmation contenant un lien pour activer le compte, eh bien tu ne st ocke
pas l'adresse mail du tout : tu envoies le mail de confirmation avec le
lien, tu encodes dans le lien les données authentifiées dont tu aur as
besoin, et tu oublier l'adresse mail immédiatement.
Ah, là, effectivement, c'est une piste intéressante.
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix
messages (dans un débat ça ne paraît pas être le bout du monde), ça
oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à
chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'i l
ne va pas se lasser ?
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fo u, comme les chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouv oir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Ah, ça c'est une bonne question.
Merci :)
La bonne réponse, évidemment, c'est de ne pas se faire pirater tout court, évidemment. Mais ça, on ne peut jamais être totalement sûr que ça n'arrivera pas.
Moyennant quoi, la question reste entière ...
La deuxième bonne réponse, c'est de ne pas stocker les données do nt tu n'as pas besoin. Si tu as besoin de l'adresse mail juste pour envoyer un mai l de confirmation contenant un lien pour activer le compte, eh bien tu ne st ocke pas l'adresse mail du tout : tu envoies le mail de confirmation avec le lien, tu encodes dans le lien les données authentifiées dont tu aur as besoin, et tu oublier l'adresse mail immédiatement.
Ah, là, effectivement, c'est une piste intéressante.
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix messages (dans un débat ça ne paraît pas être le bout du monde), ça oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'i l ne va pas se lasser ?
Nicolas George
Gloops , dans le message <khsjpf$rdj$, a écrit :
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
C'est une option. Mais répondre à la question serait utile ?
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix messages (dans un débat ça ne paraît pas être le bout du monde), ça oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'il ne va pas se lasser ?
Euh, gnî ? Le mail de confirmation sert à activer le compte ; une fois que le compte est activé, il n'y a plus besoin de mail.
Gloops , dans le message <khsjpf$rdj$1@nntp.pasdenom.info>, a écrit :
C'est quoi, des « chaînes de connexion » ? Il faut les graisser
régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les
chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
C'est une option. Mais répondre à la question serait utile ?
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix
messages (dans un débat ça ne paraît pas être le bout du monde), ça
oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à
chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'il
ne va pas se lasser ?
Euh, gnî ? Le mail de confirmation sert à activer le compte ; une fois que
le compte est activé, il n'y a plus besoin de mail.
C'est quoi, des « chaînes de connexion » ? Il faut les graisser régulièrement, comme des chaînes de vélo ? Ça rend Charlot fou, comme les chaînes de production dans _Les temps modernes_ ?
Il faut rire ?
C'est une option. Mais répondre à la question serait utile ?
Bien sûr, l'inconvénient, c'est que si dans un fil on envoie dix messages (dans un débat ça ne paraît pas être le bout du monde), ça oblige à fournir son adresse mail dix fois, pour cliquer sur un lien à chaque fois. Le correspondant ne recevra pas de spam, après est-ce qu'il ne va pas se lasser ?
Euh, gnî ? Le mail de confirmation sert à activer le compte ; une fois que le compte est activé, il n'y a plus besoin de mail.
Stéphane Catteau
Gloops devait dire quelque chose comme ceci :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
Traduction littérale d'un "connection's strings" trouvé quelque part ? Tu parles des trucs du genre "/login.php?user=blabla&password=blibli" (je simplifie à l'extrème évidement) ? Si oui, un bon vieux hash MD5 et hop. Normalement tu n'as même pas besoin d'un grain de sel à ce niveau là.
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Voir la réponse de Nicolas George. Après, si tu as besoin de conserver l'adresse e-mail, c'est autre chose et cela dépend des raisons pour lesquelles tu veux la conserver. Si c'est parce que l'adresse sert de login, il suffit que tu la stockes sous forme d'un hash. Elle restera utilisable pour sa fonction de login, mais ne sera pas exploitable si ta base de donnée est compromise. Attention toutefois, là tu dois utiliser un grain de sel, parce que MD5 est de plus en plus fragilisé par les collisions connues. Il reste irreversible (l'adresse e-mail est donc protégée), mais il serait alors possible de pirater le compte en utilisant une valeur de collision pour s'identifier, ce qui n'est pas possible si tu utilise un grain de sel. Si c'est parce que tu veux pouvoir envoyer un mail en cas de perte du mot de passe, ou que tu veux pouvoir contacter la personne pour d'autres raisons, là c'est beaucoup plus compliqué. La seule chose que tu puisses faire, c'est de blinder ta base de données et séparer le plus possible les adresses e-mail des autres données. Par exemple avoir une table contenant les infos des comptes utilisateurs et une autre table (dans une autre base de données se serait l'idéal) contenant les adresses e-mail (tu fais ensuite le lien entre les deux graces à un champ ID). De cette façon s'il y a une faille sur ton site qui permet de faire un dump SQL de la table accédée, les adresses e-mails seront protégées. Elles seront aussi plus à l'abris en cas de faille permettant de faire une injection SQL. Et si tu peux carrément les mettres sur une autres base de données elles devraient être largement à l'abris, bien qu'elles restent vulnérables en cas d'injection SQL bien pensée. Une autre possibilité, perverse, est de doubler les données. C'est-à-dire que tu as bien un champ "adresse e-mail" dans la table contenant les données utilisateurs, mais avec des données aléatoires. Le pirate croira avoir a faire à des données cryptées et ne cherchera pas les vraies données qui sont situées dans une autre table.
Avec comme sous-entendu qu'a priori un responsable de forum cherche à être crédible, donc que si il peut éviter ce style de dérapage, il fait ce qu'il faut.
Oui enfin bon quoi. Il y a un an et demi, un jeu en ligne français affichant plusieurs millions d'utilisateurs s'est fait trouer par une injection SQL qui a dumpé toutes ses données clients. Et tous les comptes utilisateurs se sont retrouvé vulnérables parce que les identifiants étaient stockés sous forme de hash MD5 sans grain de sel. Et ce n'est, hélas, qu'un exemple parmis des centaines d'autres.
Je dis la base de données, donc en sous-entendant que le piratage soit passé par trouver la chaîne de connexion, [...]
Pourquoi il se casserait la tête à faire ça ? Il suffit qu'il ouvre un compte valide avec une adresse hotmail qu'il a créé et consulté via un proxy anonymisant. Il se connecte légitimement et profite ensuite des failles du site.
-- 17/06/1969 - 18/01/2011
Repose en paix mon amour :'(
Gloops devait dire quelque chose comme ceci :
Mais crypter quoi ? :/
Les chaînes de connexion notamment.
Traduction littérale d'un "connection's strings" trouvé quelque part ?
Tu parles des trucs du genre "/login.php?user=blabla&password=blibli"
(je simplifie à l'extrème évidement) ?
Si oui, un bon vieux hash MD5 et hop. Normalement tu n'as même pas
besoin d'un grain de sel à ce niveau là.
La question que je cherchais à traiter était, "une fois qu'on a
encouragé les participants à fournir leur adresse e-mail pour pouvoir
écrire sur le forum, comment éviter de se faire pirater la base de
données, pour éviter que le lendemain les participants reçoivent du spam
sur l'adresse e-mail qu'ils viennent de fournir ?"
Voir la réponse de Nicolas George. Après, si tu as besoin de conserver
l'adresse e-mail, c'est autre chose et cela dépend des raisons pour
lesquelles tu veux la conserver.
Si c'est parce que l'adresse sert de login, il suffit que tu la
stockes sous forme d'un hash. Elle restera utilisable pour sa fonction
de login, mais ne sera pas exploitable si ta base de donnée est
compromise. Attention toutefois, là tu dois utiliser un grain de sel,
parce que MD5 est de plus en plus fragilisé par les collisions connues.
Il reste irreversible (l'adresse e-mail est donc protégée), mais il
serait alors possible de pirater le compte en utilisant une valeur de
collision pour s'identifier, ce qui n'est pas possible si tu utilise un
grain de sel.
Si c'est parce que tu veux pouvoir envoyer un mail en cas de perte du
mot de passe, ou que tu veux pouvoir contacter la personne pour
d'autres raisons, là c'est beaucoup plus compliqué. La seule chose que
tu puisses faire, c'est de blinder ta base de données et séparer le
plus possible les adresses e-mail des autres données.
Par exemple avoir une table contenant les infos des comptes
utilisateurs et une autre table (dans une autre base de données se
serait l'idéal) contenant les adresses e-mail (tu fais ensuite le lien
entre les deux graces à un champ ID). De cette façon s'il y a une
faille sur ton site qui permet de faire un dump SQL de la table
accédée, les adresses e-mails seront protégées. Elles seront aussi plus
à l'abris en cas de faille permettant de faire une injection SQL. Et si
tu peux carrément les mettres sur une autres base de données elles
devraient être largement à l'abris, bien qu'elles restent vulnérables
en cas d'injection SQL bien pensée.
Une autre possibilité, perverse, est de doubler les données.
C'est-à-dire que tu as bien un champ "adresse e-mail" dans la table
contenant les données utilisateurs, mais avec des données aléatoires.
Le pirate croira avoir a faire à des données cryptées et ne cherchera
pas les vraies données qui sont situées dans une autre table.
Avec comme sous-entendu qu'a priori un responsable de forum cherche à
être crédible, donc que si il peut éviter ce style de dérapage, il fait
ce qu'il faut.
Oui enfin bon quoi. Il y a un an et demi, un jeu en ligne français
affichant plusieurs millions d'utilisateurs s'est fait trouer par une
injection SQL qui a dumpé toutes ses données clients. Et tous les
comptes utilisateurs se sont retrouvé vulnérables parce que les
identifiants étaient stockés sous forme de hash MD5 sans grain de sel.
Et ce n'est, hélas, qu'un exemple parmis des centaines d'autres.
Je dis la base de données, donc en sous-entendant que le piratage soit
passé par trouver la chaîne de connexion, [...]
Pourquoi il se casserait la tête à faire ça ? Il suffit qu'il ouvre un
compte valide avec une adresse hotmail qu'il a créé et consulté via un
proxy anonymisant. Il se connecte légitimement et profite ensuite des
failles du site.
Traduction littérale d'un "connection's strings" trouvé quelque part ? Tu parles des trucs du genre "/login.php?user=blabla&password=blibli" (je simplifie à l'extrème évidement) ? Si oui, un bon vieux hash MD5 et hop. Normalement tu n'as même pas besoin d'un grain de sel à ce niveau là.
La question que je cherchais à traiter était, "une fois qu'on a encouragé les participants à fournir leur adresse e-mail pour pouvoir écrire sur le forum, comment éviter de se faire pirater la base de données, pour éviter que le lendemain les participants reçoivent du spam sur l'adresse e-mail qu'ils viennent de fournir ?"
Voir la réponse de Nicolas George. Après, si tu as besoin de conserver l'adresse e-mail, c'est autre chose et cela dépend des raisons pour lesquelles tu veux la conserver. Si c'est parce que l'adresse sert de login, il suffit que tu la stockes sous forme d'un hash. Elle restera utilisable pour sa fonction de login, mais ne sera pas exploitable si ta base de donnée est compromise. Attention toutefois, là tu dois utiliser un grain de sel, parce que MD5 est de plus en plus fragilisé par les collisions connues. Il reste irreversible (l'adresse e-mail est donc protégée), mais il serait alors possible de pirater le compte en utilisant une valeur de collision pour s'identifier, ce qui n'est pas possible si tu utilise un grain de sel. Si c'est parce que tu veux pouvoir envoyer un mail en cas de perte du mot de passe, ou que tu veux pouvoir contacter la personne pour d'autres raisons, là c'est beaucoup plus compliqué. La seule chose que tu puisses faire, c'est de blinder ta base de données et séparer le plus possible les adresses e-mail des autres données. Par exemple avoir une table contenant les infos des comptes utilisateurs et une autre table (dans une autre base de données se serait l'idéal) contenant les adresses e-mail (tu fais ensuite le lien entre les deux graces à un champ ID). De cette façon s'il y a une faille sur ton site qui permet de faire un dump SQL de la table accédée, les adresses e-mails seront protégées. Elles seront aussi plus à l'abris en cas de faille permettant de faire une injection SQL. Et si tu peux carrément les mettres sur une autres base de données elles devraient être largement à l'abris, bien qu'elles restent vulnérables en cas d'injection SQL bien pensée. Une autre possibilité, perverse, est de doubler les données. C'est-à-dire que tu as bien un champ "adresse e-mail" dans la table contenant les données utilisateurs, mais avec des données aléatoires. Le pirate croira avoir a faire à des données cryptées et ne cherchera pas les vraies données qui sont situées dans une autre table.
Avec comme sous-entendu qu'a priori un responsable de forum cherche à être crédible, donc que si il peut éviter ce style de dérapage, il fait ce qu'il faut.
Oui enfin bon quoi. Il y a un an et demi, un jeu en ligne français affichant plusieurs millions d'utilisateurs s'est fait trouer par une injection SQL qui a dumpé toutes ses données clients. Et tous les comptes utilisateurs se sont retrouvé vulnérables parce que les identifiants étaient stockés sous forme de hash MD5 sans grain de sel. Et ce n'est, hélas, qu'un exemple parmis des centaines d'autres.
Je dis la base de données, donc en sous-entendant que le piratage soit passé par trouver la chaîne de connexion, [...]
Pourquoi il se casserait la tête à faire ça ? Il suffit qu'il ouvre un compte valide avec une adresse hotmail qu'il a créé et consulté via un proxy anonymisant. Il se connecte légitimement et profite ensuite des failles du site.