导语:ESET研究人员已经表明,Sednit使用LoJax恶意软件的不同组件来针对巴尔干、中欧以及东欧的一些政府组织。

ESET研究人员已经表明,Sednit使用LoJax恶意软件的不同组件来针对巴尔干、中欧以及东欧的一些政府组织。

UEFI rootkit被广泛视为实施网络攻击的极其危险的工具,因为它们难以检测并且能够在安全措施(例如操作系统重新安装甚至更换硬盘)中生存。一些UEFI rootkit已被提出作为PoC,也有少数人知道,政府机构可以使用。不过,直到我们发现Sednit APT组织在受害者系统上成功部署了恶意UEFI模块的行动之前,在野外并没有检测到UEFI rootkit。

出于两个原因,第一个在野外发现的UEFI rootkit值得注意。

首先,它表明UEFI rootkit是一个真正的威胁,而不仅仅是一个有吸引力的会议主题。

其次,它可以作为一个提醒,特别是对所有可能成为Sedni目标的人。该APT组织,也被称为APT28,STRONTIUM,Sofacy和Fancy Bear,可能比以前想象的更危险。

我们对使用UEFI rootkit的Sednit行动的分析于9月27日在2018年的Microsoft BlueHat会议上发布,并在我们的“LoJax:第一个在野外发现的UEFI rootkit,由Sednit组织提供”白皮书中详细描述。在本文中,我们总结了我们的主要发现。

Sednit组织自2004年以来一直在运营,并且在过去几年中经常成为头条新闻:它被认为是多次攻击的幕后黑手。例如,美国司法部认定该组织在2016年美国大选之前对民主党全国委员会(DNC)进行黑客攻击。该组织还被认为是全球电视网TV5Monde,世界反兴奋剂机构(WADA)电子邮件泄密以及许多其他黑客攻击的始作俑者。该组织在其武器库中拥有多种多样的恶意软件工具,我们之前在2016年的Sednit白皮书中记录了若干例子。

我们的调查已经确定恶意行为者至少成功的将恶意UEFI模块写入系统的SPI闪存一次。此模块能够在引导过程中释放并执行磁盘上的恶意软件。这种持久性方法特别具有侵入性,因为它不但在重新安装操作系统后可以继续使用,即便替换硬盘也可以继续使用。此外,清理系统的UEFI固件意味着重新刷新它,这种操作并不常见,当然对用户来说也很少这么做。

我们的研究表明,Sednit运营商使用LoJax恶意软件的不同组件来针对巴尔干以及中欧和东欧的一些政府组织。

一、LoJack变成LoJax

在2018年5月,Arbor Networks的一篇博文描述了Absolute Software的LoJack客户端rpcnetp.exe的几个木马化样本。这些恶意样本与恶意C&C服务器而不是合法的Absolute Software服务器通信,因为他们的硬编码配置设置已被更改。 LoJax样本中发现的一些域名之前已经被发现:它们在2017年末被用作臭名昭著的Sednit第一阶段后门SedUploader的C&C域名。由于此攻击行动恶意使用LoJack客户端,我们将此恶意软件称为LoJax。

LoJack是防盗软件。它的早期版本称为Computrace。正如其名称所暗示的那样,一旦服务被激活,计算机将回联其C&C服务器,如果它丢失或被盗,将通知其所有者的位置。Computrace引起了安全社区的注意,主要是因为其不寻常的持久性方法。由于该软件的目的是保护系统免遭盗窃,因此它必须能够抵抗操作系统重新安装或更换硬盘驱动器。因此,它被实现为UEFI / BIOS模块,能够在这些情况中存活。该解决方案预先安装在由各种OEM制造的大量笔记本电脑的固件中,等待其所有者激活。

在研究LoJax时,我们发现了一些有趣的东西,这让我们相信威胁攻击者试图模仿Computrace的持久性方法。

二、使用恶意软件修补SPI闪存

在LoJax攻击的目标系统上,我们发现了各种能够访问和修补UEFI / BIOS设置的工具。所有工具均使用内核驱动程序RwDrv.sys来访问UEFI / BIOS设置。此内核驱动程序与RWEverything捆绑在一起,这是一个免费的Web实用工具,可用于读取几乎所有计算机的底层设置信息,包括PCI Express,内存,PCI选件ROM等。此内核驱动程序属于合法软件,它使用有效的代码签名证书进行签名。

与LoJax客户端一起发现了三种不同类型的工具。第一个是将底层系统设置的信息转储到文本文件的工具。由于绕过对非法固件更新的保护是高度依赖于平台的,因此收集有关系统平台的信息至关重要。第二个工具的目的是通过读取UEFI / BIOS所在的SPI闪存的内容,将系统固件的映像保存到文件中。第三个工具的目的是将恶意UEFI模块添加到固件映像并将其写回SPI闪存,从而有效的在系统上安装UEFI rootkit。此修补工具使用不同的技术来滥用配置错误的平台或绕过SPI闪存写保护。如下图所示,如果平台允许对SPI闪存进行写操作,它将继续写入。如果没有,它实际上实现了对已知漏洞的利用。

添加到固件映像的UEFI rootkit只有一个作用:将用户区恶意软件释放到Windows操作系统分区上,并确保在启动时执行它。

三、保护措施

Sednit的UEFI rootkit没有正确签名,因此可以阻止此类攻击的第一种安全机制是Secure Boot。启用安全启动后,固件加载的每个组件都需要正确签名,从而确保固件的完整性。我们强烈建议启用它。这是针对UEFI固件的攻击的基本防御,可以在引导时通过系统的UEFI设置启用。

更新系统固件对于恶意行为者来说也不是轻而易举。平台提供不同的保护,以防止未经授权写入系统SPI闪存。仅当SPI闪存保护易受攻击或配置错误时,上述工具才能更新系统固件。因此,应该确保升级到适用于主板的最新UEFI / BIOS。此外,由于被利用的漏洞仅影响较旧的芯片,因此请确保关键系统具有平台控制器中枢的现代芯片组(2008年引入的英特尔系列5芯片组)。

不幸的是,对于最终用户来说,更新系统的固件并非易事。因此,固件安全性主要掌握在UEFI / BIOS供应商手中。平台提供的安全机制需要由系统固件正确配置,以便实际保护它。固件必须从头开始构建,并考虑到安全性。幸运的是,越来越多的安全研究人员正在研究固件安全性,从而有助于改善这一领域并提高UEFI / BIOS供应商的认知度。

基于UEFI固件攻击的修复是一个难题。没有简单的方法可以自动从系统中删除此类威胁。在我们上面描述的情况下:为了删除rootkit,需要使用特定于主板的干净固件映像重新刷新SPI闪存。这是一项必须手动执行的精细操作。绝对不是大多数计算机所有者熟悉的。重新刷新UEFI / BIOS的唯一选择是彻底更换受感染系统的主板。

四、与Sednit APT组织的关联

如上所述,一些LoJax的C&C服务器过去曾被SedUploader使用,SedUploader是Sednit运营商常规使用的第一阶段后门。此外,在LoJax攻击的情况下,其他Sednit工具的痕迹从未远离。事实上,LoJax所针对的系统通常也会出现这三个Sednit恶意软件:

· SedUploader, 第一阶段后门

· XAgent, Sednit的旗舰后门

· Xtunnel, 一种网络代理工具,可以在Internet上的C&C服务器和本地网络内的端点计算机之间中继任何类型的网络流量

这些事实使我们确认LoJax归属于Sednit组织。

五、总结

多年来我们一直在跟踪Sednit组织,我们发布了许多关于其活动的报告,从0 day使用到开发的自定义恶意软件,如Zebrocy。但是,上面描述的UEFI rootkit组件属于它自己独有。

LoJax行动表明,高价值目标是部署罕见甚至是独特威胁的主要候选,而且这些目标应该始终注意感染的迹象。此外,这项研究告诉我们的一件事是,尽可能深入地挖掘是非常重要的!

可以在GitHub上找到IOC和样本的完整列表。

有关后门的详细分析,请访问我们的白皮书LoJax: First UEFI rootkit found in the wild, courtesy of the Sednit group

源链接

Hacking more

...