本文主要分析了一次非国家性质的针对伊朗基础设施的攻击事件,此次攻击事件虽然发生在伊朗,但他同样可以发生在其他国家城市。接下来我们会对攻击的技术细节进行分析,找到网络攻击事件背后的黑客,并将其与前几年的攻击事件进行关联分析。
主要发现
2021年7月9日和10日,伊朗铁路道路与城市发展系统部成为网络攻击的目标。黑客在全国各地车站的信息板上显示火车延误或取消的信息,并敦促乘客拨打电话以获取更多信息,此电话号码属于该国领导人的办公室。
第二天,伊朗道路和城市化部的网站出现“网络中断”后停止服务。
几天后,伊朗网络安全公司 Amnpardaz Software 发布了技术分析,该恶意软件被称为 Trojan.Win32.BreakWin。
此次对伊朗的攻击在战术和技术上与叙利亚私营公司遭到的攻击类似,攻击活动至少从2019年已经开始看,可与自称为政权反对派组织Indra联系起来。攻击者在受害者网络中开发并部署了至少3种不同版本的工具(Meteor、Stardust、Comet)。从工具的质量、运作方式来看,Indra不太可能属于国家层面。
攻击流程分析
过滤目标机器
setup.bat检查机器是否为:PIS-APP, PIS-MOB, WSUSPROXY,PIS-DB。如果是,它会停止执行并从这台机器中删除恶意脚本文件。
下载恶意文件
同一个批处理文件下载名为 env.cab 的 cab 文件:\railways.irsysvolrailways.irscriptsenv.cab。特定主机名和内网路径说明攻击者事先了解环境。
释放运行工具
update.bat,由 setup.bat 提取并启动,使用密码提取下一个阶段:cache.bat、msrun.bat 和 bcd.bat。
断开机网络连接
cache.bat 脚本使用以下命令禁用所有网络适配器:”Get-WmiObject -class Win32_NetworkAdapter | ForEach { If (.NetEnabled) { .Disable() } }“ > NUL
反病毒检查
cache.bat 还会检查计算机上是否安装了卡巴斯基,如果没有,它会将与攻击相关所有文件和文件夹添加到 Windows Defender 排除列表中。
破坏引导
bcd.bat 用于破坏引导过程。首先,它尝试覆盖启动文件,然后使用 Windows 内置 BCDEdit 工具删除不同的启动标识符:for /F “tokens=2” %%j in (‘%comspec% /c “bcdedit -v | findstr identifier”‘) do bcdedit /delete %%j /f
消除痕迹
bcd.bat 还会使用 wevtutil 从系统中删除安全、系统和应用程序事件日志。
释放负载
msrun.bat 负责释放 Wiper。它将wiper相关文件移动到“C:temp”,并创建一个名为mstask的计划任务,在23:55:00执行wiper。
Wiper分析
攻击主要有效载荷是msapp.exe,其目的是锁定受害者机器并擦除其内容使其停止服务。执行时恶意软件会隐藏此可执行文件的控制台窗口。
配置文件各个字段:
该工具不是专门为此次攻击创建的,配置解析成功,程序会将字符串“Meteor has started.”写入加密日志文件。在整执行过程中,它不断将其操作记录到同一个加密日志文件中。
感染步骤
首先,使用WinAPI或WMI将计算机从Active Directory域中删除,使远程修复更加困难。接下来,恶意软件会破坏计算机的启动配置:在Windows 7之前的版本中,恶意软件会覆盖c:boot.ini文件;在Windows 7及更高版本中,删除BCD条目。最后更改本地用户的密码。
所有操作执行完成后,用户无法获得机器的访问权限。恶意软件禁用Windows屏幕保护程序,然后将桌面壁纸和锁屏图像更改为自定义图像。
完成上述操作后,恶意软件将注销所有用户,并在新线程中执行一个“锁定器”。mssetup.exe将阻止键盘和鼠标设备的输入来阻止用户与机器交互。最后,恶意软件会创建一个计划任务,计划任务将在每次系统启动时执行。
Wiper功能
首先,wiper恶意软件从遍历config中paths_to_wipe路径下的文件和目录,用零字节填充它们,然后删除它们。擦除后执行:vssadmin.exe delete shadows /all /quiet **and **C:\Windows\system32\wbem\wmic.exe shadowcopy delete。最后,恶意软件进入无限循环。
关联分析
和近期伊朗被攻击的目标进行关联分析发现,攻击流程几乎相同,文件具有相似的结构、相同的名称和相同的功能。但仍然存在一些差异,update.bat脚本没有被早期的样本使用, 执行的是nti.exe—一个基于NotPetya的MBR感染程序。
根据目前收集到的信息,需要确定伊朗被攻击目标是否是攻击者第一次使用这些工具。结果发现在叙利亚这些工具被上传到了Virus Total三次,比最近针对伊朗的攻击早了一年多。这些发现的攻击都是基于VBS脚本,其中还包括了一些攻击目标的身份信息。
初始有效负载是VBS脚本resolve.VBS,它将受密码保护的RAR提取到C:\Program Files\Windows NT\Accessories\,其中包含另一个RAR文件和三个其他VBS文件。然后按以下顺序运行脚本:
第一个脚本遍历已安装的程序并检查是否安装了卡巴斯基防病毒软件。
第二个脚本首先检查卡巴斯基的avp.exe进程是否正在运行。如果正在运行,它将尝试删除卡巴斯基许可证。
最后一个脚本提取第二阶段RAR文件,并运行可执行文件。
在对叙利亚攻击活动分析中,检查到的多个目标公司:卡特吉集团及其关联公司Arfada Petroleum。
这些行动背后的组织的身份为“Indra”的组织。事实上,Indra并没有隐瞒他们的身份,而是在多个地方留下了他们的签名。攻击者在受害者锁定的计算机上显示自己的身份,并对袭击卡特吉集团负责。
所有样本都多次出现字符串“INDRA”。
他们在不同的平台上运营多个社交网络账户,包括Twitter、Facebook、Telegram和Youtube。这些账户披露了对上述公司的攻击:
2019年和2020年针对叙利亚目标的攻击与针对伊朗网络的行动有许多相似之处。比如在工具、战术、技术和程序(TTP)以及攻击的高度针对性方面存在相似之处,因此可以认定Indra应对最近在伊朗的攻击负责。
这些攻击都是针对伊朗相关目标的,无论是2021年伊朗铁路公路部,还是2019年的卡特尔吉、阿尔法达、阿尔法德莱克斯和其他叙利亚公司。Indra的推特清楚地表明,他们的目标是他们认为与伊朗有联系的实体。
他们的攻击流依赖于早期对目标网络的侦察信息。在对伊朗入侵攻击时,攻击者确切地知道他们需要让哪些机器不受影响,以便公开传递他们的信息;此外,他们还可以访问铁路的Active Directory服务器,该服务器用于传播恶意文件。