Wipe系统中Shamoon攻击分析
Pinging 二进制安全 6905浏览 · 2018-12-23 01:08

前言

近些年以来,黑客攻击者多次使用具有破坏性的恶意软件对系统进行攻击。而这些攻击通常伴随某些针对性,其常常会被意识形态、政治目标甚至财务目标来影响。

这些具有破坏性的攻击由于会导致数据丢失或业务运营,所以对企业影响甚大。而若要恢复这些攻击造成的影响则要数周或数月,同时在修复过程中可能会造成企业利润已经声誉的下降。

最近的一些攻击已经表明了攻击的伤害性有多大。去年,NotPetya攻击行为影响了全球多家公司。 去年2月,研究人员也发现了影响奥运会的OlympicDestroyer恶意攻击。

Shamoon是McAfee公司一直进行监控的具有破坏性恶意软件。 本月初,McAfee Foundstone紧急事件响应团队对客户的被入侵行为做出了迅速反应并确定了攻击来自最新版本的恶意软件,也昭示了一波攻击浪潮的来袭。Shamoon于2012年袭击了中东的石油和天然气公司,并于2016年再次对相关行业进行攻击。这种威胁对企业来说影响巨大,我们建议采取适当的措施来保护相关组织。

在过去的一周里,我们观察到一个新型的恶意手段攻击了几个部门,包括中东和南欧的石油,天然气,能源,电信和政府组织。

与之前的浪潮事件类似,Shamoon第3版使用几种机制作为规避技术来绕过安全,用以避免防御软件的分析。然而它的整体代码与以前的版本保持一致,这也使大多数反恶意软件引擎的检测变得简单。

与以前的版本一样,Shamoon版本3安装了wiper组件的恶意服务。 一旦wiper运行,它会用垃圾内容覆盖所有文件并使系统重启,导致“蓝屏死机”或驱动程序错误的情况并使系统无法运行。 恶意软件还可以扫描本地网络,然而这个操作并没有被进一步利用。此版本的恶意软件有一些错误,表明此版本可能是测试阶段或测试阶段。

此版本与早期版本的主要区别在于最新的软件修改了“用于删除恶意文件的名称列表”以及将伪造的服务名称修改为“MaintenaceSrv”。wiper组件为使用以下选项定位系统上的所有文件进行了相关设置:

  • 用垃圾数据覆盖文件(在此版本和我们分析样本的相同)

  • 用文件覆盖(在Shamoon版本1和2中使用)

  • 加密文件和引导记录(此版本中未使用)

Shamoon是一种模块化恶意软件:wiper组件可以作为独立文件进行重用,此威胁也具有很高风险。该文章介绍了我们的研究结果,包括详细的分析和IOCs。

分析详情

Shamoon是一种包括三种功能的注入工具。注入前期需要收集相关设备信息并将恶意代码嵌入设备中,之后进行混淆,反调试的过程。而在运行此工具前,我们需要添加一个参数。

它会解密三个源码并将它们安装在%System%文件夹中。 之后创建用于运行wiper的服务--MaintenaceSrv。 服务名称中的拼写错误可以简化检测过程。

威胁研究团队在研究过程中也发现了这个工具多年来的发展情况,下面是各个版本的差别:

wiper使用ElRawDisk.sys访问用户的磁盘并覆盖所有文件夹和磁盘扇区中的数据,从而在重启系统之前感染计算机。

结果是蓝屏或驱动程序错误导致机器无法使用。

注入工具的可执行摘要

dropper包含许多恶意组件,这些组件使用嵌入在PE部分中的加密文件来进行隐藏。

这些资源由dropper工具解密,包含:

  • MNU:通信模块

  • LNG:wiper核心组件

  • PIC:64位版本的注入器

Shamoon 2018需要一个参数来运行攻击模块。 它解密内存中的几个字符串用于收集系统上的信息并确定是32位还是64位版本。

他会将key8854321.pub (MD5: 41f8cd9ac3fb6b1771177e5770537518)文件放在c:\Windows\Temp\key8854321.pub.中。

之后恶意软件会解密两个用户文件:

  • C:\Windows\inf\mdmnis5tQ1.pnf
  • C:\Windows\inf\averbh_noav.pnf

Shamoon启用RemoteRegistry服务,并允许程序远程修改注册表。 它还通过启用注册表项LocalAccountTokenFilterPolicy来禁用远程用户帐户控制。

恶意软件会检查以下共享内容是否存在并将其复制进行病毒传播:

  • ADMIN$
  • C$\WINDOWS
  • D$\WINDOWS
  • E$\WINDOWS

Shamoon查询服务以检索与LocalService帐户相关的信息。

然后它会检索PE文件中的资源以删除组件。 查找资源的位置:

Shamoon创建文件并将时间设置为2012年8月(用于逃脱法律的制裁)。 它将此日期放在可以销毁的文件中。

例如,修改时间可以用作基于时间线绕过检测的抗辩法技巧。 我们还观察到,在某些情况下,系统会简要修改日期,伪造每个文件的日期。 删除在系统上的文件存储在C:\ Windows \ System32 \中。

在创建服务之前,Shamoon通过系统token来提升其权限。 它首先使用LogonUserImpersonateLoggedOnUser,然后使用ImpersonateNamedPipeClient函数。 Metasploit也使用类似的技术来提升特权。

提升权限对于软件进一步执行恶意代码至关重要,然而这些修改通常会有许多限制。

Shamoon创建了新的恶意服务MaintenaceSrv。 它使用选项Autostart(StartType:2)创建服务,并使用自己的进程(ServiceType:0x10)运行服务:

如果服务已被创建,则会使用先前的配置更改服务的参数。


它最后完成MaintenaceSrv的创建:


wiper模块可以为以下任何一个名称:

接下来,wiper运行以销毁数据。

Wiper组件解析

wiper组件被放入System32文件夹中并 需要一个参数才能运行。 Wiper驱动程序嵌入其资源中。

我们可以在此屏幕截图中看到工具对资源101进行加密:


驱动程序ElRawDisk.sys被用于解密资源,之后擦除磁盘内容。

提取资源:

此前曾有一个文件不是恶意文件,但由于它是原始驱动程序,因此被认为是具有风险性的。

Wiper使用以下命令创建驱动程序:

sc create hdv_725x type= kernel start= demand binpath= WINDOWS\hdv_725x.sys 2>&1 >nul

下面的截图显示了命令的执行过程:

恶意软件会覆盖掉c:\Windows\System32中的所有文件,并使计算机严重瘫痪。从而使计算机中所有的文件均被覆盖。

覆盖程序如下:

最后,它使用以下命令强制重新启动:

Shutdown -r -f -t 2

系统重启后会显示蓝屏:

Worm组件详情

蠕虫组件是从droper的资源中提取出来的。 破坏性恶意软件通常使用传播技术感染机器。


蠕虫组件可以使用以下名称:

我们注意到该组件拥有扫描本地网络并连接到控制服务器的能力:

虽然蠕虫组件可以传播dropper并连接到远程服务器,但该版本中未使用该组件。

总结

除了恶意软件可能造成的破坏之外,Wiper组件可以独立于droper使用。 2018 Shamoon改进版的功能表明该应用使用了模块化进行开发。 这使wiper同样可以被Shamoon以外的恶意软件下载使用。

Shamoon正显示出不断改进的迹象; 但是,这些改变并没有逃脱McAfee DAT的检测。我们预计这些攻击者会在中东(及其他地区)进行更多的攻击。 我们将继续对其进行监控,并在我们了解更多信息时更新此分析。

IOCs

df177772518a8fcedbbc805ceed8daecc0f42fed                    Original dropper x86
ceb7876c01c75673699c74ff7fac64a5ca0e67a1                    Wiper
10411f07640edcaa6104f078af09e2543aa0ca07                   Worm module
43ed9c1309d8bb14bd62b016a5c34a2adbe45943               key8854321.pub
bf3e0bc893859563811e9a481fde84fe7ecd0684                  RawDisk driver

McAfee 检测

  • Trojan-Wiper!DE07C4AC94A5
  • RDN/Generic.dx
  • Trojan-Wiper
本文为翻译稿件,来自:https://securingtomorrow.mcafee.com/other-blogs/mcafee-labs/shamoon-returns-to-wipe-systems-in-middle-east-europe/
0 条评论
某人
表情
可输入 255