近期,来自Qualys的安全专家在OpenSMTPD中发现了一个被标记为CVE-2020-7247
的漏洞。OpenSMTPD是RFC 5321定义的服务器端SMTP协议的开源代码实现,此外还包括一些附加的扩展功能,可让一般机器与使用SMTP协议的其他系统交换电子邮件。
目前OpenSMTPD已被很多发行版Linux操作系统所集成,包括FreeBSD、NetBSD、Debian、Fedora和Alpine Linux。
CVE-2020-7247
涉及了本地权限提升和远程代码执行,可被远程攻击者用来在目标服务器上以root权限执行任意代码。
Qualys在发布的通告中表示:“Qualys发现了一个可导致权限升级的高危漏洞。目前最重要的是尽快升级你的配置。”
该公司还在Hacker News上详细讨论了该漏洞。
此次漏洞和smtp_mailaddr()
(负责验证发件人和收件人的电子邮件地址)函数有关,攻击者可通过向存在漏洞的服务器发送恶意的SMTP数据来利用这个漏洞。OpenSMTPD的维护者已发布该漏洞的安全补丁,并敦促用户尽快升级。
安全专家还指出,此次攻击代码有一定的局限性:
“这种通过发送方地址执行命令的方式有一定限制”
虽然OpenSMTPD的限制不如RFC 5321限制大,但输入最大长度应不超过64个字符
MAILADDR_ESCAPE
中的特殊字符(例如$
和|
)会转换为:
。为了克服这些限制,我们从Morris蠕虫(https://spaf.cerias.purdue.edu/tech-reps/823.pdf)中汲取了灵感。
值得一提的是,CVE-2020-7247
漏洞于2018年5月出现在OpenSMTPD中,部分发行版Linux系统使用的还是较早版本的OpenSMTPD,不受漏洞影响。
本文由白帽汇整理并翻译,不代表白帽汇任何观点和立场
来源:https://securityaffairs.co/wordpress/96986/security/cve-2020-7247-opensmtpd-flaw.html