首款UEFI rootkit工具LoJax简述

作者:{Esi}@ArkTeam

UEFI rootkit是指在UEFI/BIOS中植入rootkit,该类型工具具有良好的持久化性能,关于这方面的报道曾经有rkloader或面向macOS EFI/UEFI启动植入的DerStarke,以及Hacking Team小组2015年提出的UEFI/BIOS rootkit,但该工具的使用一直停留在理论阶段。今年9ESET首次公开了第一个用于实战的UEFI rootkit工具——LoJax。根据有关专家分析,该工具有可能来自Sednit团队(APT28)。

LoJax的原型来自Absolute SoftwareLoJack防盗软件,是一种专有的笔记本电脑盗窃恢复软件。其功能包括远程锁定,删除文件以及在地图上找到被盗笔记本电脑。LoJack使用UEFI/BIOS模块作为持久性机制,其工作原理如下图所示:


1 LoJack工作原理图

LoJax的工作流程基本为:黑客先入侵一台主机,获取到管理员权限,然后通过修改主板固件植入恶意UEFI模块。如果成功植入,即使重新安装操作系统和更换硬盘也难以清除,除非重刷UEFI固件。

LoJax首先通过解密LoJackrpcnetp.exe配置文件来篡改劫持LoJackC&C地址,借助LoJack来下载恶意程序,成功下载恶意程序以后,进行UEFI rootkit的植入,恶意程序的执行过程分为三步进行:

1、将有关系统设置的底层信息转储到文本文件中(ReWriter_read.exe

该工具可用于读取计算机底层配置信息,并将信息存储在文本文件中。其中还包含三个主要信息:BIOS锁定启用(BLE),BIOS写入启用(BIOSWE)和SMM BIOS写保护禁用(SMM_BWP)。

2、读取闪存工具(ReWriter_binary.exe

该工具包含修补转储的UEFI印象代码。将恶意代码写入之前存储的文本文件中。

3、写入闪存( ReWriter_binary.exe

将修改后的文件写回SPI闪存,在写入闪存的过程中利用了SPI闪存的写保护机制的漏洞和配置错误的问题来成功写入,写入过程如下图所示,在写入过程中步骤1和步骤2利用了配置错误的问题,步骤3中利用了Intel芯片组竞争条件漏洞(CVE-2014-8273)。


2 LoJax绕过写保护

UEFI rootkit成功植入后,整个流程结束,完整的UEFI rootkit工作原理如下图所示:


3 UEFI rootkit工作原理

 

参考内容:

https://www.welivesecurity.com/wp-content/uploads/2018/09/ESET-LoJax.pdf

发表评论

电子邮件地址不会被公开。 必填项已用*标注