zestedesavoir / zds-site

Cœur du projet technique de Zeste de Savoir
https://zestedesavoir.com
Other
270 stars 161 forks source link

Chiffrer les adresses emails dans la base de données #3603

Closed DevHugo closed 8 years ago

DevHugo commented 8 years ago

Bonjour,

Faudrait faire une étude pour voir si c'est possible de chiffrer les emails dans la base de donnée. Sachant qu'on ne peut pas modifier l'objet Userde Django, mais on pourrait laisser le champs vide "email" de l'objet User et se créer un champ "email_criffre" dans l'objet Profile qui lui serait chiffré.

L'implémentation du chiffrement et déchiffrement dans une base de donnée est trés simple grâce aux deux librairies: django-extension (on l'utilise déjà) et Keyczar (Google) et opensource.

Source:

Un tutoriel pour chiffrer les champs d'une base de donnée

SpaceFox commented 8 years ago

Quitte à chiffrer des bouts de la BDD (pour éviter les fuites en cas d'accès à la base je suppose ?) autant chiffrer aussi les MP.

Cela dit, concrètement j'ai un peu de mal à voir l'intérêt : y a-t-il un scénario dans lequel l'attaquant aurait accès à la base sans avoir accès à la clé de chiffrement, sachant qu'on a un seul serveur ?

DevHugo commented 8 years ago

Quitte à chiffrer des bouts de la BDD (pour éviter les fuites en cas d'accès à la base je suppose ?) autant chiffrer aussi les MP.

Oui, c'était pour éviter les fuites en cas d'accès à la base. On peut aussi chiffrer les MP, faudrait faire attention à ne pas faire trop régresser les performances. Faut trouver un compromis, chiffrer les mp sur demande utilisateur ?

y a-t-il un scénario dans lequel l'attaquant aurait accès à la base sans avoir accès à la clé de chiffrement, sachant qu'on a un seul serveur ?

Comme ça, ce soir, non. Le seul que je vois qui est pourri, c'est que l'attaquant aurait accès qu'au serveur mysql et l'utilisateur mysql. C'est qui peu de chance de se passer. Faudrait qu'il exploite une faille uniquement dans mysql, et qu'il arrive pas augmenter les privilèges. Il serait sacrément mauvais le monsieur.

Si l'attaquant arrive à être root, ça sert strictement à rien de chiffrer. On est d'accord.

SpaceFox commented 8 years ago

Pour les performances, j'imagine (peut-être à tord ?) qu'un bon système de chiffrement serait capable de tirer partie des extensions AES des processeurs (je viens de vérifier, présentes chez OVH comme chez Gandi). Auquel cas les performances ne sont probablement plus un problème.

Pour le scénario d'attaque, c'est surtout une question de priorité de la fonctionnalité ; dans l'état ça me paraît être une bonne idée.

gustavi commented 8 years ago

Comme d'hab @DevHugo ça serait bien d'en parler sur les forums quand c'est une proposition comme ça.

gustavi commented 8 years ago

Et please, on ne crypte par, on chiffre. http://www.bortzmeyer.org/cryptage-n-existe-pas.html

DevHugo commented 8 years ago

Je reconnais mon erreur, j'ai utilisé le mot "crypté" à mauvais escient une fois en fin de message lors de l'édit pour préciser que j'était d'accord avec Spacefox. Il était une heure trente du mat, et la fatigue à fait son effet.

Juste pour dire, l'article que tu cite n'est pas du tout une référence et est même partiellement faux. Je vais juste te laisser réfléchir pourquoi cet article est partiellement faux. Essaye de comprendre l'expression " 'forger' un message", une autre aide Digital signature forgery.

gustavi commented 8 years ago

Alors :

Le seul dictionnaire où on le retrouve c'est le Larousse et la Larousse c'est bien une grosse merde, tout le monde le sait.

Toute personne qui se respecte sait que « crypter » n'existe pas. Point.

GerardPaligot commented 8 years ago

C'est pas le lieu pour débattre sur cette question.

DevHugo commented 8 years ago

Ok, on arrête cette discussion.

Toute personne qui se respecte sait que « crypter » n'existe pas. Point.

Nope. D'ailleurs je connait un chercheur en crypto qui te dirait le contraire. Y'a des arguments pour comme des arguments contre. C'est pas aussi blanc ou noir.

Nodraak commented 8 years ago

Chiffrer les mails c'est une feature cool, mais n'est ce pas un peu overkill ? KISS.

Je pense que ça ne vaut pas le coup : comme dit plus haut, si un attaquant est root ça ne servira strictement à rien. Et une fuite de la bdd seule me semble asser improbable.

gustavi commented 8 years ago

À discuter sur le forum.

DevHugo commented 8 years ago

Avant de proposer, faut être sur de ce qu'on peut faire avant de savoir ce que l'on veut faire. Si c'est utile ou pas, je parle, juste de faire une étude au départ, pour voir si on avait les ressources matérielles pour le faire et si j'en avait, faire un benchmark de ce qu'on peut chiffrer ou pas. Ça sert à rien de demander un avis, si on sait même pas si on a les ressources, ni c'est utile ou pas.

gustavi commented 8 years ago

Justement, le forum est fait pour ça.