EximBDAT严重漏洞可导致内存损坏和代码执行攻击

admin 2026-05-16 06:14:52 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: Exim邮件传输代理曝出严重释放后使用漏洞CVE-2026-45185(Dead.Letter),影响4.97至4.99.2版本,攻击者可通过TLS连接中发送close_notify告警后继续传输BDAT数据触发内存损坏,导致远程代码执行。该漏洞仅影响使用GnuTLS编译的版本,建议用户立即升级至4.99.3版本修复。 综合评分: 85 文章分类: 漏洞分析,威胁情报,应用安全,网络安全,漏洞预警


cover_image

Exim BDAT 严重漏洞可导致内存损坏和代码执行攻击

Ravie Lakshmanan Ravie Lakshmanan

代码卫士

2026年5月14日 12:04 北京

在小说阅读器读本章

去阅读

  聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士

开源的邮件传输代理 (MTA) Exim 发布安全更新,修复了影响某些配置的一个严重漏洞 (CVE-2026-45185),它可导致内存损坏和潜在的代码执行后果。

Exim 为类 Unix 系统设置,用于接收、路由和交付邮件。该漏洞被称为 “Dead.Letter”,是位于 Exim 二进制文件传输 (BDAT) 消息主体解析中的一个释放后使用漏洞,在 GnuTLS 处理 TLS 连接时触发。

Exim 在今天发布的一份安全公告中提到,“当客户端在邮件正文传输完成之前发送 TLS close_notify 告警时,随后在同一 TCP 连接上以明文形式发送最后一个字节时,该漏洞会在 BDAT 命令处理邮件正文的处理过程中触发。这一系列操作会导致Exim在TLS会话关闭过程中,向一个已被释放的内存缓冲区写入数据,从而引发堆内存损坏。攻击者仅需建立TLS连接,并使用CHUNKING(BDAT)SMTP扩展即可实施攻击。”

该漏洞影响从4.97版本到4.99.2版本(含)的所有Exim版本。但需要注意的是,只有使用 USE_GNUTLS=yes 编译的版本才受影响,即依赖OpenSSL等其它TLS库的构建版本不受影响。自主网络安全测试平台XBOW的安全实验室负责人Federico Kirschbaum于2026年5月1日发现并报告该漏洞,之后获得致谢。

Kirschbaum解释称:“在TLS关闭过程中,Exim会释放TLS传输缓冲区——但一个嵌套的BDAT接收包装器仍可能处理后续传入的字节,并最终调用 ungetc(),该函数会将一个字符(\n)写入已释放的内存区域。这一个字节的写入会落在Exim分配器的元数据上,破坏分配器的内部结构;攻击者随后利用这种损坏来获取更进一步的攻击原语。”

研究员所在公司将该漏洞描述为 Exim 迄今发现过的“最高质量的漏洞之一”,并补充说,触发该漏洞几乎不需要服务器端进行任何特殊配置。这一漏洞已在 4.99.3 版本中得到修复。建议所有用户尽快升级。目前没有能够解决该漏洞的缓解措施。Exim 指出:“修复方案确保了在活跃的 BDAT 传输过程中收到 TLS close 通知时,输入处理栈会被彻底复位,从而防止使用悬空指针。”

这并非 Exim 首次曝出严重的释放后使用漏洞。早在 2017 年底,Exim 就曾修补过 SMTP 守护进程中的一个释放后使用漏洞(CVE-2017-16943,CVSS 评分9.8)。未经身份验证的攻击者可利用该漏洞,通过特殊构造的 BDAT 命令实现远程代码执行,进而控制邮件服务器。

开源卫士试用地址:https://oss.qianxin.com/#/login

代码卫士试用地址:https://sast.qianxin.com/#/login


推荐阅读

Exim 严重漏洞绕过150万台邮件服务器上的安全过滤器

数百万台Exim 服务器被曝严重缺陷,可导致攻击者以根权限远程执行命令

开源邮件传输代理 Exim 易遭 RCE 和 DoS 攻击 用户应立即修复

原文链接

https://thehackernews.com/2026/05/new-exim-bdat-vulnerability-exposes.html

题图:Pixabay License

本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

    觉得不错,就点个 “在看” 或 “赞” 吧~


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:代码卫士 Ravie Lakshmanan Ravie Lakshmanan《Exim BDAT 严重漏洞可导致内存损坏和代码执行攻击》

评论:0   参与:  0