几个月前,一种在合法Microsoft Windows进程中运行的恶意有效负载的攻击被发现。攻击者滥用了DLL搜索顺序来加载自己的恶意DLL。该环境中的某些示例与FireEye最近发布的关于FIN7的新工具和技术(特别是BOOSTWRITE)中描述的示例相匹配。将其余样本与BOOSTWRITE进行比较,发现它们具有通用的代码库,并带有Carbanak后门。
Windows操作系统使用一种通用方法来查找要加载到程序中的所需DLL。攻击者可能使用此行为来导致程序加载恶意DLL,该技术被称为DLL搜索顺序劫持(或二进制植入)。
滥用的应用程序是FaceFodUninstaller.exe。它从Windows 10 RS4(1803)开始在全新OS安装中的“%WINDR%\ System32 \ WinBioPlugIns”文件夹中。该可执行文件依赖于winbio.dll,该文件通常在父目录(“%WINDR%\ System32”)中。
此可执行文件在攻击者眼中具有吸引力的是,它是从名为FODCleanupTask的内置计划任务启动,从而最大程度地减少了计算机的占用空间,并进一步降低了被检测机会。
加载程序的文件名为WinBio.dll(请注意大写字母),并由攻击者放置在同一文件夹(“ WinBioPlugIns”)中,从而利用默认的DLL搜索顺序,因为文件路径位于%WINDIR%下,这意味着为了植入它,攻击者需要在受害者的计算机上拥有更高的特权,例如管理员或SYSTEM帐户。
如BOOSTWRITE一样,此加载程序也是用C++开发的。它仅导出一个函数,即FaceFodUninstaller.exe导入所需的。
样本针对64位OS,并于2019年3月和7月进行了编译;.BOOSTWRITE针对32位系统,并于2019年5月进行了编译(并签名)。
启动DLL时,它将检查进程的命令行参数数量,以决定如何采取行动。由任务计划程序启动可执行文件时,它没有命令行参数,并且恶意软件的工作方式如下:
在%TEMP%\〜bio 创建一个日志文件。日志是纯文本的,未经加密。
再次以子进程的形式启动,该进程带有由32随机大写字母组成的命令行参数。
通过使用COM对象访问任务计划程序来建立持久性。该恶意软件可确保任务已启用,并在Windows启动后30秒添加触发器以启动该任务,并且不等待空闲状态。
调用WinBioGetEnrolledFactors时,恶意软件会加载原始的winbio.dll并调用原始功能。
工作进程在内存中加载并执行有效负载DLL。首先从%TEMP%\〜wrk 创建日志文件开始。然后,以这种方式基于环境变量创建命名的互斥锁,从而确保当前仅运行单个实例:
BIOLOAD还具有嵌入的加密有效负载DLL。与BOOSTWRITE相比,它不支持多个有效负载。此外,要解密有效负载,它使用简单的XOR解密而不是ChaCha密码,也不访问远程服务器以获取密钥。取而代之的是,BIOLOAD是针对其感染的每台计算机量身定制的,因为它依赖于计算机名来正确导出解密密钥。
密钥的长度为16个字节,并且也嵌入在加载程序中。使用计算机名称的CRC32校验和作为种子,密钥的一部分会被密钥上的MurmurHash3结果覆盖。当相关上下文丢失时,这会阻止沙箱检测,并阻止研究人员分析有效负载。
PE加载程序的实现与BOOSTWRITE中的实现相同。日志文件名的格式也相似。
如前所述,该负载携带的有效载荷是Carbanak。根据时间戳记,从BIOLOAD提取的样本是后门的更新版本,日期为2019年1月和4月。
一个值得注意的附加功能是,它可以检查计算机上是否除了Kaspersky,AVG和TrendMicro之外还运行了另一个防病毒(AV)。但是,与先前检测到的AV不同,该结果对后门的操作没有影响。
这是FaceFodUninstaller.exe被攻击者滥用的第一个案例,共享的代码库将证据直接指向FIN7组织。时间戳以及更简单的功能表明BIOLOAD是BOOSTWRITE的先前版本。
相应的IOCs
WinBio.dll (scrubbed key and payload) SHA256
7bdae0dfc37cb5561a89a0b337b180ac6a139250bd5247292f470830bd96dda7
c1c68454e82d79e75fefad33e5acbb496bbc3f5056dfa26aaf1f142cee1af372
Carbanak SHA256
77a6fbd4799a8468004f49f5929352336f131ad83c92484b052a2eb120ebaf9a
42d3cf75497a724e9a9323855e0051971816915fc7eb9f0426b5a23115a3bdcb
参考:
https://www.fortinet.com/blog/threat-research/bioload-fin7-boostwrite-lost-twin.html