TLS是目前使用最广泛的加密技术。但是由于历史原因,邮件协议并没有直接使用TLS协议,而是通过STARTTLS进行协商。STARTTLS可用于SMTP、POP3、TMAP等邮件通信协议,将传输过程从明文升级为加密连接,无需使用单独的通信加密端口。STARTTLS的引入增加了复杂性,并引入了潜在的攻击方法,例如命令注入。在8月11日至13日举行的第30届USENIX安全研讨会上,研究人员在不同的STARTTLS实现中发现了40个未修复的安全漏洞,约320,000台邮件服务器受到命令注入攻击。攻击者可以利用这些安全漏洞进行中间人攻击,伪造邮件客户端内容,窃取相关凭证信息。该漏洞影响多个主流电子邮件客户端,包括AppleMail、Gmail、MozillaThunderbird、ClawsMail、Mutt、Evolution、Exim、Mail.ru、SamsungEmail、Yandex和KMail电子邮件客户端。攻击过程需要恶意方修改邮件客户端与邮件服务器之间的连接,并拥有该账户在邮件服务器上的登录凭证。在提交新电子邮件或访问现有电子邮件之前,电子邮件客户端必须使用用户名和密码进行身份验证。对于这些连接,必须严格执行通过STARTTLS到TLS的转换,因为安全降级会泄露用户名和密码,从而使攻击者可以完全访问电子邮件帐户。在另一种情况下,攻击者还可以伪造邮件内容。通过在TLS握手之前向服务器消息中插入额外的内容以响应STARTTLS命令,客户端被诱骗处理服务器命令,就好像它是加密连接的一部分一样。研究人员将这种攻击称为响应注入(responseinjection)。IMAP协议定义了电子邮件客户端通过TCP/IP连接从电子邮件服务器检索电子邮件的标准。PREAUTH是一个响应,指示连接已通过外部方法进行身份验证。恶意攻击者可以通过发送PREAUTH消息来绕过IMAP中的STARTTLS实现,以防止连接升级并强制客户端使用未加密的连接。研究人员分析了SMTP、POP3和IMAP中的STARTTLS,开发了包含100多个测试用例的半自动化测试工具集EAST,涵盖了STARTTLS移除、命令和响应注入、修改攻击、UI欺骗攻击等主要关注点研究的是邮件发送和邮件检索的机密性和完整性。通过分析28个客户端和23台服务器,研究人员发现了40多个STARTTLS漏洞,攻击者可以利用这些漏洞发起邮件欺骗、凭证窃取等攻击。28个客户端中只有3个没有任何STARTTLS相关的安全问题,23个测试服务器中只有7个没有发现任何安全问题。研究人员扫描互联网后发现,超过320,000台电子邮件服务器(约占2%)受到命令注入攻击的影响。与STARTTLS相比,隐式TLS更安全。研究人员建议用户将电子邮件客户端配置为使用配置了隐式TLS(分别为端口465、995和993)的SMTP、POP3和IMAP,以默认提供TLS功能。本文翻译自:https://thehackernews.com/2021/08/dozens-of-starttls-related-flaws-found.html
