web-dev-qa-db-fra.com

Quelles sont les étapes de Gmail, Yahoo! Mail et Hotmail prennent pour empêcher l'écoute clandestine sur le courrier électronique?

Je voudrais savoir ce qui se passe lorsqu'un e-mail est envoyé à partir de services de messagerie Web publics Gmail, Yahoo ou Hotmail?

Je ne comprends pas les protocoles de messagerie en détail, mais pour autant que je sache, le trafic de messagerie n'est pas chiffré et les messages sont transmis sur de nombreux serveurs de messagerie (en texte brut) avant d'atteindre leur serveur de destination. Cependant, cela a été remis en question récemment par d'autres personnes, et leur point de vue était que si l'un des grands fournisseurs est utilisé, les e-mails sont cryptés et il n'y a pas lieu de s'inquiéter de la sécurité.

Savez-vous s'ils ont raison à ce sujet et les e-mails sont-ils modérément sécurisés? Je vous remercie!

34
luben

Une session SMTP entre deux serveurs de messagerie peut-être être cryptée, mais uniquement si les deux extrémités la prennent en charge et si les deux extrémités choisissent de l'utiliser. Donc, si vous envoyez des messages de Gmail à example.net, alors Google ne pourra crypter que si example.net est prêt et disposé. Pour cette raison, vous ne pouvez pas faire confiance à la messagerie pour être même modérément sécurisée au niveau de la couche transport. (La seule méthode sûre de bout en bout consiste à crypter vos e-mails à l'aide de S/MIME ou PGP, mais les personnes avec lesquelles vous échangez des e-mails doivent également être intégrées ... tout comme les serveurs de messagerie).

Quant à savoir si les trois grands effectuent des STARTTLS opportunistes, je n'en ai vu aucune preuve, mais je passe moins de temps à lire les journaux de mon serveur de messagerie qu'auparavant. Et s'ils le sont, ils ne représentent toujours que la moitié de chaque connexion SMTP qu'ils établissent et ne peuvent garantir l'utilisation du cryptage.

Mise à jour:

Je viens de tester les hôtes MX pour gmail.com, yahoo.com et hotmail.com. Seul gmail annonce STARTTLS, c'est-à-dire que seul gmail serait prêt à crypter la session SMTP si l'autre partie le voulait.

J'ai testé gmail sortant en envoyant du courrier à un serveur que je possède et en regardant le fil; Google profite en effet de STARTTLS s'il est proposé et crypte la transaction SMTP lorsqu'un utilisateur de gmail envoie du courrier. Accessoires à Google.

En ce qui concerne "l'envoi" du cryptage des e-mails: Google 1, Yahoo 0, Microsoft 0.


Selon les commentaires ci-dessous, si vous voulez les tester vous-même, c'est très simple:

  1. Déterminer les hôtes MX (Mail eXchangers) pour le domaine
  2. Telnet au port 25 sur l'un d'eux
  3. Tapez "ehlo yourhostname.domain.com"
  4. Si vous ne voyez pas "250-STARTTLS" comme l'une des réponses, ils ne prennent pas en charge le cryptage opportuniste.

Comme ça:

$ Host -t mx yahoo.com
yahoo.com mail is handled by 1 mta5.am0.yahoodns.net.
yahoo.com mail is handled by 1 mta7.am0.yahoodns.net.
yahoo.com mail is handled by 1 mta6.am0.yahoodns.net.
$ telnet mta5.am0.yahoodns.net 25
Trying 66.196.118.35...
Connected to mta5.am0.yahoodns.net.
Escape character is '^]'.
220 mta1315.mail.bf1.yahoo.com ESMTP YSmtpProxy service ready
ehlo myhost.linode.com
250-mta1315.mail.bf1.yahoo.com
250-8BITMIME
250-SIZE 41943040
250 PIPELINING
quit
221 mta1315.mail.bf1.yahoo.com
Connection closed by foreign Host.
$

En guise de remarque, Yahoo fermera la connexion si vous ne faites pas d'ehlo tout de suite. J'ai dû couper et coller mon ehlo parce que le taper prenait trop de temps.

PLUS DE MISE À JOUR:

Depuis janvier 2014, Yahoo est en train de crypter - je viens de tester (comme ci-dessus) et de vérifier. Cependant, à la fois The Register et Computerworld signalent que les subtilités de la configuration SSL (telles que Perfect Forward Secrecy) laissent beaucoup à désirer comme implémenté par Yahoo.

MÊME PLUS À JOUR:

Google inclut désormais les données de cryptage SMTP dans leur section Transparence du rapport sur la sécurité des e-mails . Ils partagent leurs données sur qui d'autre est prêt à crypter, et vous pouvez consulter les premiers chiffres et interroger des domaines individuels.

Addendum:

@SlashNetwork souligne qu'il est possible de configurer un serveur de messagerie pour exiger que TLS soit négocié avant l'échange de courrier. C'est vrai, mais pour citer la documentation Postfix :

Vous pouvez imposer l'utilisation de TLS, de sorte que le serveur SMTP de Postfix annonce STARTTLS et n'accepte aucun courrier sans cryptage TLS, en définissant "smtpd_tls_security_level = encrypt". Selon la RFC 2487, cela NE DOIT PAS être appliqué dans le cas d'un serveur SMTP Postfix référencé publiquement. Cette option est désactivée par défaut et ne doit être utilisée que rarement.

Maintenant, le monde est plein d'implémentations qui violent les RFC, mais ce genre de chose - par exemple, quelque chose qui peut casser la fonctionnalité requise de routine comme accepter des rebonds et du courrier pour le maître de poste - est probablement plus susceptible d'avoir des conséquences négatives.

Une meilleure solution que les passerelles de messagerie autorisent souvent est l'imposition de exigences TLS sur une base de politique par domaine . Par exemple, il est généralement possible de dire "Exiger TLS avec un certificat valide signé par Entrust lorsque vous parlez à example.com". Cela est généralement mis en œuvre entre des organisations qui font partie de la même société mère mais qui ont une infrastructure différente (pensez: acquisitions) ou des organisations ayant une relation commerciale (pensez: ACME, Inc. et leur centre de support téléphonique externalisé). Cela a l'avantage de garantir que les sous-ensembles spécifiques de courrier dont vous vous souciez sont cryptés, mais ne rompt pas l'architecture ouverte (acceptée par qui que ce soit par défaut) de la messagerie SMTP.

Addendum ++

Google a annoncé le gmail va percoler des informations sur la sécurité si le chemin du courrier sort au lecteur . Ainsi, ces étapes de cryptage en arrière-plan seront portées à la connaissance de l'utilisateur un peu plus.

(Probablement ne se soucie toujours pas de la provenance du certificat; juste un indicateur de cryptage des bits).

53
gowenfawr

Il y a trois points dans la chaîne que vous devez considérer: le transport entre les serveurs de messagerie (par exemple entre Google et example.org), le transport entre les serveurs de messagerie et les clients, et les serveurs de messagerie eux-mêmes.

Le trafic entre les serveurs de messagerie peut ou non être chiffré; vous ne devriez pas vous y fier, et AFAIK, il n'y a aucun moyen de l'imposer à partir du client.

Le trafic entre les clients et les serveurs de messagerie peut ou non être chiffré; si vous vous connectez via SSL (via une interface Web ou SMTP), votre extrémité de la chaîne est sécurisée, mais vous ne pouvez rien dire sur le destinataire. Inversement, si vous êtes le destinataire, vous pouvez récupérer le courrier en toute sécurité, mais si l'expéditeur (ou n'importe qui dans le CC/BCC) ne fait pas de même, alors il y a votre fuite.

Et enfin, il y a les serveurs de messagerie eux-mêmes. Si quelqu'un les pirate, ou les ingénieurs sociaux se frayent un chemin et que le serveur de messagerie stocke le contenu non crypté, alors vous n'avez plus de chance.

TL; DR: à moins que vous ne contrôliez toute la chaîne (les clients et tous les serveurs de messagerie impliqués), ce qui n'est pratiquement jamais le cas, la seule façon d'envoyer des e-mails avec une sécurité fiable est de crypter et décrypter localement, en utilisant quelque chose comme PGP.

11
tdammers

Il y a deux questions différentes ici:

  1. Le système de messagerie permet-il de lui envoyer des e-mails via un canal crypté et d'envoyer des e-mails via un canal crypté lorsque le serveur de messagerie du destinataire le prend en charge?.
  2. Le système de messagerie électronique crypte-t-il le contenu d'une boîte aux lettres lors de son affichage au propriétaire.

gownfawr traite bien (1).

Gmail ne crypte pas par défaut pour (2) donc lors de la visualisation de votre courrier, par défaut, cela se fait via HTTPS, donc un snooper ne pourra pas observer gmail envoyer le courrier à votre navigateur. Je crois que les autres n'ont pas encore suivi la suite. (Divulgation complète, je travaille pour Google).

Gmail est configuré pour utiliser le paramètre "Toujours utiliser https" par défaut, ...

"Rendre votre messagerie Web plus sécurisée" contient des instructions pour éviter les lectures en texte brut d'une boîte aux lettres pour un certain nombre de grands fournisseurs de messagerie Web, mais je ne peux pas garantir qu'elle est à jour.

10
Mike Samuel

Vous pouvez tester par vous-même en utilisant les sites Web mentionnés à Test de la configuration STARTTLS du serveur SMTP . Assurez-vous de tester à la fois la réception et l'envoi.

2
MrBrian