最后更新:2021-10-31 10:54
| 导读 | STATLS是一种明确的通信协议扩展,允许明确的通信链接成为直接加密链接(使用SSL或TLS加密),而不需要另一个专用端口来加密通信,即机会加密。 |
STATLS是一种明确的通信协议扩展,允许明确的通信链接成为直接加密链接(使用SSL或TLS加密),而不需要另一个专用端口来加密通信,即机会加密。
电子邮件客户端与服务器之间的连接支持两种类型的 TLS 保护: 隐性 TLS, 它从一开始就加密连接, 并运行在不同端口; STATLS, 它提供了将当前未加密的连接升级到 TLS 的手段 。

STARTTLS有时被视为一种机会加密模式, 只有当 TLS 安全可用时才给予它。 这很容易降低级别。 然而, 目前的电子邮件客户通常要求STARTTLS 强制实施, 而未加密的谈话在启用时不可行 。
我们在《STARTTLS》中发现了40多个漏洞,我们的结论是,这些弱点非常普遍,我们建议尽可能避免使用STARTTLS。

我们假定中线人(MitM)攻击者有能力改变电子邮件客户与提供者电子邮件服务器之间的联系。
要窃取登录文档, 请使用指令输入 SMTP 和 IMAP 。
2011年,Postfix开发商Wietse Venema报告说,在实施STARTLS方面出现了差距,使输入者能够将其视为加密连接命令的一部分。 这是通过使用STARTLS命令向同一TCP服务器发送额外命令来实现的。
我们发现,尽管自2011年以来就已知道这一差距,但这一差距仍然相对普遍。 迄今为止,已经确定了15个易变的实现情景,扫描中的2%邮件服务器显示了这一差距。
使用SMTP和IMAP协议,这种指令注射可能被用来窃取文件。
侵犯者可以发出认证命令,然后开始发送(SMTP)或存储(IMAP)电子邮件,受害者提交的登录表将保存在侵犯者可以访问的电子邮件中。
交叉协议攻击也可以使用指令注射,用邮件服务器的证书发送 HTTPS 内容。
包括假邮箱内容。
我们发现了一种响应注入攻击,这与电子邮件客户程序中的订单注入相似。 这种脆弱性影响到许多受欢迎的邮件客户,包括苹果邮件、Mozilla Thunderbird、Claws Mail和Mutt。
我们可以在 TLS 握手之前将服务器指令插入服务器信件, 客户端将将其视为加密连接的一部分, 可以用来歪曲邮箱的内容 。
降低 IMAP 连接带宽的带宽, 以从 REFERRAL 和 REFERRAL 获取文件 。
使用 IMAP 协议, 服务器可以使用 PREAUTH 命令告诉客户端它在第一个电文中已被认证。 但是, 协议限制在经认证的状态中使用 STARTS 命令 。 因此, 如果客户端应用程序接受 PREAUTH, 它无法执行 STARTS 命令 。
中位攻击者可以利用它来阻止STATLS更新连接,迫使客户使用未加密连接。 我们注意到,许多其他电子邮件客户应用程序同样容易出现同样的缺陷。
如果加上 IMAP 登录引用和邮箱引用,使服务器能够引导客户登录到另一个 IMAP 服务器上,这一漏洞就更加严重了。 攻击者利用 PREAUTH 屏蔽加密连接, 可能利用引用迫使客户将文件传送到侵略者控制的服务器上。 不幸的是, 许多客户不支持查询功能 。
总结
研究发现的所有弱点都依赖于不安全连接向安全连接的过渡,这在TLS中是隐含的,因此不受这些袭击的影响。 因此,我们认为隐藏的TLS比STARTTLS更安全。
我们因此强调,STATLS总是增加至少一个额外的连接,所以隐藏的TLS通常比STTLS表现更好。
安全影响
我们认为,这项工作中描述的袭击很难广泛实施,而且大部分被用于有针对性的袭击。 因此,你应该总是更新软件,并设置电子邮件客户只使用隐藏的TLS。
安全建议
电子邮件客户
如果可行,使用者应检查和设置其电子邮件客户使用SMTP、POP3和IMAP,即某些邮件服务供应商,特别是微软和苹果,不支持SMTP/Submission隐藏的TLS。我们敦促客户允许其邮件服务供应商提供更安全的隐藏TLS替代品。
软件开发商
电子邮件服务器和客户程序都应默认提供隐藏的 TLS 。 从长远看,软件开发者可能选择根本不执行STARTLS, 简化代码, 设置对话框和文件 。
我们建议,所有STARTLS支持方案都应在服务器和客户方进行清理,因为应用程序必须核实任何未加密数据都不会作为加密连接的一部分处理。 IMAP应用程序必须确保它们不允许与STARTLS结合使用PREAUTH,并且它们可以使用可进行应用测试的东东工具包。
邮件服务器管理员
检查您正在使用的所有支持协议的隐藏 TLS 支持的服务器, 并考虑在可行的情况下为 IMAP、 POP3 和 SMTP 提供被禁止的 STARTLS 。
如果您必须支持STARTLS, 请使用建议的工具为所有支持的协议输入错误测试服务器。 如果服务器软件容易应用, 安全升级应迅速应用 。
常见问题
这对STARTLS很危险吧?
STARTTLS 有两个“ 模型 ” 、 “ 机会模型 ” 和 “ 强制模型 ” 。 在提交新邮件或访问现有邮件之前, 电子邮件客户端必须使用用户名和密码进行认证。 对于这些连接, 必须严格执行通过STARTTLS向 TLS的过渡, 因为降级将披露用户名和密码, 并允许侵犯者完全访问电子邮件账户 。
如何对正在使用的软件进行脆弱性测试?
我们为测试电子邮件客户和服务器提供了东东工具箱。
使用我们的指令注射测试器测试电子邮件服务器的指令注射非常简单。 伙计们, 我不知道你们在说什么。 Sh( 开发) 和 TLS- Attacker/ TLS- Scanner 都在找指令注射 。
使STARTLS或类似系统能够生效的其他协定是否受到影响?
我们希望看到其他基于裁武条约的协定,如XMPP、FTP、IRC或LDAP,也存在类似的差距。 因此,我们建议尽可能避免STARTLS,并尽可能采用隐藏的TLS。
邮件服务器通信( MTA 到 MTA) 如何处理?
通常情况下,电子邮件服务器之间的STATLS只能防止被动攻击,并容易受到诸如STARTTLS等主动攻击。 Linux以这种方式学习。
本文由 在线网速测试 整理编辑,转载请注明出处。