freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

推陈出新,Donot组织窃密手法再升级
2021-10-12 17:05:57

一、概述

近日,微步在线情报局捕获到一批Donot APT组织最新投递的使用了更新升级代码的Windows恶意样本。Donot(肚脑虫)组织是疑似具有南亚背景的APT组织,其主要围绕周边国家的政府机构展开网络攻击活动,窃密敏感信息。该组织具备针对 Windows 与 Android双平台的攻击能力。

微步情报局针对此次样本分析有如下发现:

  • 攻击者的下载器使用了Donot组织常用的异或、加减法对字符串进行解密。
  • 在后续的攻击模块中,攻击者对加解密算法及代码进行了升级,使用了大量C++的库函数,给逆向分析带来一定困难。
  • Donot攻击者不像以前使用开源、商业木马,而是投递模块化木马进行不同操作,首先投递木马对信息进行收集,再投递后续载荷将搜集的信息传回C2地址。
  • 和以往部分Donot组织样本相同,攻击者会与wiki*pedia.org检测网络链接,因此判断为此次攻击目标范围不包括国内。
  • 微步在线通过对样本的C2地址进行拓线分析,已对其进行标记,可用于威胁情报检测。微步在线威胁感知平台 TDP 、本地威胁情报管理平台 TIP 、威胁情报云 API 、互联网安全接入服务 OneDNS 、主机威胁检测与响应平台 OneEDR 等均已支持对此次攻击事件和团伙的检测。

1634028965_61654da5a2e6bf5a5313c.png!small?1634028965936


二、样本分析

2.1 WinUpdateAssistant.exe

1634028983_61654db7903ae68c75a41.png!small?1634028983856

该样本为攻击者投递的下载器,主要功能是与C2进行通信将后续木马下载保存至特定目录,且为后续攻击载荷创建自启动,使木马常驻在计算机中。该恶意样本还具有反虚拟机等对抗操作。

样本中使用了Donot常用的异或字符串加解密,大部分字符串使用XOR 3加解密,也有部分字符串通过依次+1或依次-1进行加解密。

样本首先创建互斥量“GoogleInc”。

1634028995_61654dc3bd69a9fec73a3.png!small?1634028996039

在当前目录下查询文件"WinUpdateAssistant.lnk"是否存在,当不存在时,将自身拷贝到%TMP%目录下“WinUpdateAssistant.exe”。

1634029000_61654dc8625f0ed76054d.png!small?1634029000655

通过COM对象在当前目录创建隐藏属性的LNK文件,该LNK文件指向%temp%目录下的木马文件,且LNK 文件的快捷键被修改为 Ctrl+C。这样每次调用 Ctrl+C 复制文件时都会启动这个快捷方式进而运行木马本体,但由于互斥量的原因,在运行核心代码之前木马会退出进程。

1634029006_61654dce9840089964b37.png!small?1634029007098

通过WMIC命令获取当前虚拟机名称,然后将获取到的名称“VMware Virtual Platform”与解密后的字符串“VMWARE”比较,判断当前是否处于虚拟机中,如果字符串匹配,则退出当前进程。

1634029011_61654dd39ac1380a8147f.png!small?1634029011850

遍历“C:\Program Files”或"C:\Program Files(x86)"目录下的所有文件夹名称。

1634029037_61654ded99e130e004b05.png!small?1634029037924

获取包括用户名、计算机名、操作系统、处理器等主机系统信息,然后将这些信息进行拼接。

1634029046_61654df6f24d5bea94ce5.png!small?1634029047446

木马会先发起Get请求到en.wiki*pedia.org/wiki/Encyclopedia测试网络连接,在C盘下创建文件"C:\ProgramData\Msupdate.txt"写入数字“1234567890”。

创建文件夹C:\ProgramData\MSDN,尝试从C2地址micrsoft.live下载“Audiosrvpm.dll”,并将获取的计算机信息加密后回传到C2地址“micrsoft.live/Noja/adms"。

1634029091_61654e23cd49328568c3b.png!small?1634029092098

最后创建计划任务,执行下载的DLL文件,参数为"AUDO"。

1634029095_61654e2798e212775fc37.png!small?1634029096096

2.2 WinRMBd.dll

1634029109_61654e3506a854196c458.png!small?1634029109404

样本为C++文件,主要功能为窃取用户的登录信息、保存的密码等浏览器隐私信息,并将窃取的信息保存至特定目录下。该模块中没有与C2通信的功能,回传信息、连接C2等功能在攻击者投放的另一模块中。该文件中使用了大量的C++库函数,给分析人员带来一定的困难。除此之外,在字符串的加解密上,也不再是简单的异或或加减法,而是通过定义了一串Key值,根据加密后字符串在Key值中的顺序位进行后续加解密操作。

该样本 DLL除了不包含任何内容的DllMain函数,还包含一个存在恶意代码的导出函数“WinBd”。

先通过加解密字符串解密出函数名称,获取函数地址后调用函数。

1634029130_61654e4ab77fdd8d0d323.png!small?1634029131006

然后通过判断调用函数的参数决定是否执行恶意代码,当参数错误或参数为空时,程序会退出进程或崩溃。

1634029134_61654e4e1540f2b067551.png!small?1634029134333

样本在执行过程中,会窃取浏览器的各项隐私信息,如FireFox的cert9.db、logins.json、key4.db文件,这些都是浏览器保存的用户登录信息。

1634029137_61654e518fb9013cddac5.png!small?1634029137869

读取到对应的文件里的内容并将其保存在新建的目录文件“C:\ProgramData\MSDN\natadsorb\”下,并添加.rnm的后缀。攻击者会在后续的模块中读取文件内容并将其回传到 C2。

1634029141_61654e55103ad16affa48.png!small?1634029141362

2.3 WinRMUl.dll

1634029153_61654e61cf725de459e4f.png!small?1634029154052

样本同样为C++文件,与“WinRMBd.dll”在加解密算法、垃圾代码块等内容上有大量相似之处,恶意代码都存储在导出函数“WinUl”中。木马的主要功能是将攻击者窃取保存至特定目录的用户隐私信息回传至C2地址“anticlean.xyz”。

代码先通过自定义算法解密部分字符串:

1634029163_61654e6b30ad6681f4953.png!small?1634029163559

通过判断调用导出函数的参数,来决定是否继续执行后续恶意代码,当参数为空时,movzx指令会出现错误提示。

1634029166_61654e6ed62d66520a078.png!small?1634029167073

再经过大量的字符串加解密、拼接等操作,最终拼接出“C:\ProgramData\MSDN\natadobsu\nvr\”、“C:\ProgramData\MSDN\nataddorhs/nvr”、“C:\ProgramData\MSDN\natadolk\”等路径,并对拼接出的多个路径遍历文件后缀名为.rnm的所有文件(这里的.rnm就是前面所投递木马的窃取的浏览器隐私信息文件)。

1634029171_61654e731865d539a4010.png!small?1634029171296

当遍历到相应的文件后,解密 C2 服务器地址,然后将遍历到的文件发送到 C2 服务器“anticlean.xyz/vxmot/yibo”。

在发送文件的过程中,可以看到攻击者自定义的一些字符串内容,如图的name=“colina”以及filename=“窃取的文件名”。

1634029176_61654e78a5ed5c812986e.png!small?1634029176918

并将窃取的文件内容回传C2。

1634029180_61654e7c66fd432f0bc06.png!small?1634029180668

发送窃取的文件内容后,攻击者还会读取C2地址的Http请求返回的内容,但截至分析时返回的内容仅为“Abort”。


三、总结

在本次捕获攻击事件中,印度攻击者Donot使用了与以往不同的加解密方法,并且在样本投递中,不再使用印度攻击者常使用的商业木马、开源工具等进行窃密、远控操作,而是出现了模块化的趋势,投递不同的文件分别执行不同的功能,且代码复杂度也比以往有了提升。

从域名来看,攻击者回连的C2地址依然使用了该组织常使用的.xyz域名,且在证书上有效期仅为2021年7月-10月三个月时间。


注:“微步在线研究响应中心”微信公众号回复“DN”可获取含IOC的完整版报告。

# APT组织 # 样本分析 # IOC # donot
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者