CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

Tenable研究院 [Tenable安全](javascript:void(0)???? 今天

研究人员揭示了Oracle Solaris中的关键零日漏洞,该漏洞正在被攻击威胁参与者广泛利用。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

背景

11月2日,FireEye的研究人员发表了一篇博客文章,详细介绍了Mandiant事件响应调查的发现,这些研究导致发现了一个被称为UNC1945的未定性(UNC)小组。作为此调查的一部分,他们发现UNC1945正在利用一个严重的Oracle Solaris 0-Day漏洞来安装后门,以此作为攻击的一部分。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野图片来源:Twitter

11月4日,FireEye发布了后续博客,其中提供了有关该漏洞的更多详细信息。

https://www.fireeye.com/blog/threat-research/2020/11/critical-buffer-overflow-vulnerability-in-solaris-can-allow-remote-takeover.html

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

分析

CVE-2020-14871是Oracle Solaris的身份验证模块(PAM)中的一个重要的基于预身份验证堆栈的缓冲区溢出漏洞。PAM是动态身份验证组件,早在1997年,它就已作为Solaris 2.6的一部分集成到Solaris中。该漏洞的CVSSv3评分为10.0,这是最高的评分。在发布时,此漏洞的Tenable 漏洞修补优先级率VPR分数也为10.0。

PAM库的parse_user_name函数中存在此漏洞,原因是用户名输入验证不正确,该用户名超过一定长度(512字节)。未经身份验证的远程攻击者可以尝试通过安全外壳(SSH)键盘交互式身份验证(一种支持PAM的直通身份验证方法)登录到易受攻击的Solaris服务器,从而利用此漏洞。使用包含超过512字节用户名的特制请求,攻击者可以在强制键盘交互式身份验证提示输入用户名后,将无限的输入传递给PAM parse_user_name函数。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

确定远程服务器是否容易受到攻击,就像查看服务器对该请求的响应一样简单。如果服务器返回“身份验证失败”消息,则该服务器容易受到攻击。如果服务器继续提供用户名提示,则该服务器不会受到攻击。

在Oracle Solaris 11.1和更高版本上无法通过SSH进行利用

研究人员注意到,在Oracle Solaris 11.1和更高版本中,该漏洞仍然存在于parse_user_name函数中。但是,由于用户名在传递给parse_user_name函数之前被截断,因此他们确定对PAM库的无意更改使通过SSH的利用向量无效。

零日漏洞据报道以3,000美元的价格被收购

在关于UNC1945的第一篇博客文章中,研究人员说,他们在地下市场上发现了一个广告,广告内容是“ Oracle Solaris SSHD远程根攻击”,售价为3,000美元。他们认为,这很可能是UNC1945攻击者获得了称为EVILSUN的漏洞利用工具的地方。

漏洞多年来一直存在于PAM库中

研究人员还指出,该漏洞可能在PAM中“存在了数十年”,因为大多数应用程序可能已经在对用户名传递给PAM库之前对其进行了输入验证。但是,SSH并不是其中之一,这就是攻击者设法利用此漏洞的方式。

10月22日,将提交提交到Illumos PAM库以解决parse_user_name函数,该函数在提交消息中被称为“草率”。这意味着实施PAM的其他技术也可能容易受到攻击,并且此问题可能不是Solaris独有的。

攻击者使用BlueKeep漏洞进行其他侦察

虽然使用CVE-2020-14871获得对受害者网络的初始访问权限,但研究人员还发现黑客使用了各种工具,包括使用了BKScan工具箱,其中包含对CVE-2019-0708的利用,这是一个关键的远程Microsoft的远程桌面协议中的代码执行漏洞。安全研究员凯文·博蒙特(Kevin Beaumont)将该漏洞称为“ BlueKeep”,该漏洞已于2019年5月作为Microsoft补丁星期二的一部分进行了修补。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

概念验证PoC

别名为Hacker Fantastic的安全研究人员已在其GitHub页面上发布了针对CVE-2020-14871的概念验证(PoC)漏洞。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

解决方案

Oracle在10月的季度关键补丁更新(CPU)中解决了CVE-2020-14871。下表列出了受影响的版本和安全更新的可用性。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

自2014年10月起,Oracle Solaris 9不再获得扩展支持。鼓励Oracle Solaris 9客户尽快升级到受支持的版本。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

识别受影响的主机

Tenable已经推出相关识别此漏洞的插件。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

此外,可使用GitHub上提供的合规性审核文件来确保将ChallengeResponseAuthentication和KbdInteractiveAuthentication配置选项设置为no。

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

https://github.com/tenable/audit_files/tree/master/cve-2020-14871

CVE-2020-14871:Oracle Solaris 0-Day漏洞利用在野

更多信息

  • FireEye Blog Post on UNC1945

https://www.fireeye.com/blog/threat-research/2020/11/live-off-the-land-an-overview-of-unc1945.html

  • FireEye Blog Post on CVE-2020-14871

https://www.fireeye.com/blog/threat-research/2020/11/critical-buffer-overflow-vulnerability-in-solaris-can-allow-remote-takeover.html

转载自https://mp.weixin.qq.com/s/2iL_hQuEP5WfT4ZLxcqBlg