POP/IMAP/SMTP 如何(不)安全

信息安全 加密 电子邮件 pgp smtp
2021-09-05 17:35:25

我正在对基本的电子邮件安全做出一些假设,并且我想确认或澄清其中的一些要点,以确保我了解全局。请纠正我的错误:

这个问题的答案提供了一些见解,但并未涵盖我正在寻找的所有内容。

这一切都假设一个传统的电子邮件服务,使用桌面或移动客户端,通过 POP 或 IMAP 和 SMTP(忽略 webmail)访问。

假设我正在检索消息 - 我的客户端应用程序将我的用户名和密码传递给 POP 服务器,该服务器对我进行身份验证并发回消息。如果我没有使用 SSL/TLS,那么整个对话,包括消息和凭据,都是纯文本的。任何观察网络流量的人都可以拦截整个事情。如果我使用 SSL,那么整个对话都是安全的,即使在公共网络上也是如此。我有这个权利吗?

我的理解是,当我的服务器与其他人的服务器通信时,传统消息是不安全的——因此消息本身在服务器之间传输时很可能容易受到攻击,但至少使用 SSL,我的电子邮件密码是安全的。

如果我理解,PGP 或类似的意思是消息本身是加密的,所以只要我和收件人的私钥是安全的,其他人就无法阅读该消息。但这只是信息,对吧?不是 IMAP/SMTP/POP 连接?这意味着如果我对消息使用 PGP,但与 SMTP 的非 SSL 连接,我仍然会发送纯文本用户名和密码进行身份验证。

基本上,我试图理解为什么电子邮件提供商会拒绝为 POP/IMAP/SMTP 连接提供 SSL/TLS - 一个特定的提供商说他们不这样做,因为电子邮件本质上是不安全的,所以 SSL 实际上并不做任何事情来保护您,他们建议 PGP 用于真正安全的电子邮件。我想争辩说,虽然 SSL 可能不是端到端的消息保护,但它至少可以保护我的凭据并在其大部分旅程中保护我的消息(我到 SMTP 服务器,以及 POP 服务器到收件人假设他们正在使用 SSL 连接)。

我的一切都直截了当吗?

4个回答

要回答您的问题:

  • 如果您使用 SSL/TLS 访问您的电子邮件,无论是 POP 还是 IMAP,那么任何人都很难仅通过分析流量来破译电子邮件的文本。那就是说一些大公司,例如我曾经工作过的一家律师事务所,有一台服务器位于我们和互联网之间,去掉了 SSL,所以答案是肯定的,说你是安全的。

  • 此外,如果您访问后该消息仍位于电子邮件服务器上,那么您的电子邮件提供商可能会被贿赂/强迫将其移交。当然 GPG 确实解决了这个问题。您也可以要求您的电子邮件提供商删除您通过 POP 下载的邮件,尽管您必须相信他们能够并且愿意安全地删除邮件。

  • 使用 SSL,当使用您的电子邮件密码登录时,根据我在第 1 点中提到的附带条件,您的密码无法通过拦截您的计算机和电子邮件服务器之间的通信来轻松读取。

  • 您对 PGP 的理解在很大程度上是正确的。如果使用您的公钥编码的消息发送给您,那么只有您破解您的私钥的人才能阅读它。发件人的私钥无关紧要,因为他无法使用它来解码发给您的消息。如果您的电子邮件密码是以纯文本形式发送的,尽管您完全正确地认为它可能会被拦截,并且有人可以访问您的电子邮件或冒充您以您的名义发送它们。如果您一直使用 PGP 对所有消息进行加密和签名,而其他人也为您做同样的事情,那么这将保护您的消息内容。

  • 我无法想象为什么电子邮件提供商不想提供 SSL 超出纯粹的懒惰。这些天您甚至可以获得免费证书!大多数免费的网络邮件提供商都提供 SSL,例如 Gmail,您是否考虑过使用它们?

假设我正在检索消息 - 我的客户端应用程序将我的用户名和密码传递给 POP 服务器,该服务器对我进行身份验证并发回消息。如果我没有使用 SSL/TLS,那么整个对话,包括消息和凭据,都是纯文本的。

不一定_ SMTP、POP 和 IMAP 都可以支持多种身份验证机制,其中一些是加密的(例如,CRAM-MD5、GSSAPI)。在Non-plaintext authentication下查看一个很好的列表通过这种方式,即使实际邮件不是,您的凭据在网络上也可能是安全的。

如果我使用 SSL,那么整个对话都是安全的,即使在公共网络上也是如此。我有这个权利吗?

是的你是。但是,正如您引用的线程中所指出的那样,邮件涉及许多跃点。您可以保护客户端到邮件存储服务器,但邮件从发件人的客户端到您的邮件存储的路径不能证明是安全的,除非您使用端到端加密机制。

基本上,我试图理解为什么电子邮件提供商会拒绝为 POP/IMAP/SMTP 连接提供 SSL/TLS

因为它们便宜、懒惰,而且在他们还是孩子的时候,没有人必须在自行车上戴头盔。

我想争辩说,虽然 SSL 可能不是端到端的消息保护,但它至少可以保护我的凭据并在其大部分旅程中保护我的消息(我到 SMTP 服务器,以及 POP 服务器到收件人假设他们正在使用 SSL 连接)。

是的,尤其是在这些凭据可能对其他方面有用的情况下,例如在该提供商处管理您的帐户。

我的一切都直截了当吗?

本质上,是的。

不过,我建议您与您的供应商争论这件事是在浪费时间。如果他们不想提供 SSL,请寻找其他提供商。这可能是你可以投的唯一一个他们真正会听的投票。

这个问题已经得到了很好的回答。但是,值得看一下从发件人的传出 SMTP 服务器到收件人的传入 MX 服务器的传递。这种传送通常使用STARTTLS来加密 SMTP 连接。使用STARTTLS,连接以纯文本开始,如果双方都支持,则连接升级为 SSL/TLS 连接。但是,SMTP 存在固有问题,STARTTLS这使得主动攻击者可以执行 MITM 攻击。有关更多信息,请参阅本文

正如本线程中所提到的,SSL 保护您仅在 pop 服务器和您的机器之间传输时收到的电子邮件,以及您仅在您的机器和服务器 smtp 之间传输时发送的电子邮件。

正如 Stryfe 所说,一旦发送电子邮件到达 SMTP 服务器,没有证据表明其余的传输是安全的,直到收件人的 POP 服务器。收件人方面也是如此,收件人计算机和电子邮件服务器之间的路径不安全;例如,考虑 pop/imap 服务器在内部并且 IT 团队可以查看的情况。

至于提到几次的 PGP;尝试过,PGP 在企业中有 Outlook、thunderbird、gmail 和智能手机用户,根本不容易设置。有像 CryptoMailer(http://www.thegreenbow.com/cryptomailer)这样可靠的替代品,尽管这个更容易设置和使用。