DKIM密钥受2008年Debian OpenSSL漏洞影响的发现
作者使用其工具badkeys扫描DKIM密钥,发现大量主机仍受16年前(2008年)的Debian OpenSSL漏洞(CVE-2008-0166)影响。这使得攻击者能够伪造这些主机的DKIM签名,从而绕过DMARC检查发送欺诈邮件。受影响的域名包括cisco.com、oracle.com、github.com等知名企业。
漏洞规模与影响
通过扫描Tranco Top 100万域名列表,作者在355,055个包含有效RSA密钥的DKIM TXT记录中,发现了855个易受攻击的记录(约占0.24%)。其中777个记录使用了完全相同的密钥,这意味着实际只有22个独特的易受攻击密钥。绝大多数相同的密钥来自同一家公司Cakemail。作者尝试披露时遭遇沟通障碍,但该公司似乎已更换密钥。其他受影响的组织也已被通知。
漏洞持续存在的原因分析
一个可能的原因是DKIM没有强制密钥轮换机制。由于Debian OpenSSL漏洞在2006年引入、2008年修复,而DKIM规范(RFC 4871)发布于2007年,许多公司可能在2007年配置了DKIM记录后便从未更改过这些易受攻击的密钥。
关键发现:BIMI标准存在严重安全缺陷
文章重点揭露了BIMI(品牌标识消息指示器)标准的安全问题。BIMI允许企业为邮件显示徽标,通常需要购买昂贵的证书(验证徽标证书,VMC)。
- 无加密绑定:规范中,BIMI证书与DKIM密钥之间没有密码学上的连接。只要攻击者能用有效的DKIM签名签署邮件(例如,通过控制的脆弱私钥),邮件就会自动获得BIMI处理并显示徽标,完全无需拥有或出示VMC。
- 实例演示:作者以entrust.com(BIMI证书销售商之一)为例。该域名存在一个使用有漏洞的Debian OpenSSL版本生成的1024位RSA DKIM密钥,其私钥是公开可破解的。使用这个私钥签名邮件,因为entrust.com配置了默认的BIMI记录,Gmail等支持BIMI的服务就会显示其公司徽标。
- 规范缺陷:BIMI规范本身被指出存在“显而易见的安全设计缺陷”,许多关键安全实现细节被描述为“在其他地方”或“在其他文件中”解释,但并未指明这些地方在哪里。
其他问题与检查建议
- 除了Debian漏洞,作者还发现一些密钥长度过短(如512位)的RSA密钥,更容易被破解。
- 作者建议不要实施BIMI,因为基于现有规范无法安全实现。
- 文章提供了使用
badkeys工具(版本≥0.0.11)检查自身DKIM密钥是否受影响的方法,可直接扫描区域文件或DKIM DNS记录。
结论
该研究揭示了电子邮件安全生态中的长期问题:数年未更新的脆弱加密密钥依然存在,并因BIMI等新标准的糟糕安全设计而放大了风险。DKIM生态系统中大量使用低于安全标准的1024位RSA密钥也值得关注。