freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

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

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

FreeBuf+小程序

FreeBuf+小程序

响尾蛇组织近一年攻击组件汇总分析报告
2023-08-04 11:58:38

1 APT组织相关背景介绍

1.1 响尾蛇组织相关背景介绍

响尾蛇组织, 又称Sidewinder、APT-C-17、T-APT-04,是一个来自于南亚地区的境外APT组织。该组织主要针对中国、巴基斯坦、尼泊尔、斯里兰卡等亚洲地区国家进行网络间谍活动,主要针对高校,新闻,金融,媒体,政府和电信公司进行攻击,以窃取敏感信息为主要目标。该组织的相关攻击活动最早可以追溯到2012年,至今还非常活跃,大多数行动是对巴基斯坦进行攻击,窃取机密信息。

1.2 响尾蛇组织攻击过程

该组织将攻击过程分解成多个阶段,有多次网络下载过程,且连接的C2会检查访问IP所属国家,只允许本次的攻击目标所属国家的IP进行访问,另一方面,为了躲避安全软件的查杀,关键的恶意程序只在内存中执行,最终的远控程序落地为加密数据的形式,需要加载器解密后才执行。

1691118485_64cc6b956c9b8e0845f05.png!small?1691118473875

另外响尾蛇组织也会使用开源工具进行攻击活动,在C2的网络特征,域名构造方式有很大的关联性,整体攻击过程比较简单,最终用DLL侧加载的方式在内存中解密执行Cobalt Strike的beacon载荷,实现对用户机器的控制。

1691118501_64cc6ba572bf48cd86b83.png!small?1691118490235

此外响尾蛇组织还对Android手机用户进行攻击,通过Google Play散发恶意apk安装包,窃取目标手机中的隐私信息和机密文件。

1691118513_64cc6bb1a9a94a551cdbb.png!small?1691118502370

1.3 响尾蛇组织打点技巧

在响尾蛇组织的相关攻击活动中,该组织伪造发件人邮箱,通过伪造正常的“学院通知”、“政府通知文件”、“热点事件”、“新奇事情(如:暗网数据泄露)”等相关邮件,诱导目标点击其投递的恶意链接或恶意附件,或者伪造政府邮箱登录页面,盗取合法邮箱发送钓鱼邮件。

2 涉及组件详细分析

2.1 DocxDownloader钓鱼组件

响尾蛇组织最常用的鱼叉式钓鱼组件,以抓眼的标题和相关单位的官方文件,在用户打开文档后,机器在不知不觉中被入侵。捕获的部分钓鱼文件如下表:

组件md5

名称

URL

首次上传到VT时间

056d1dc3032d04d7638c02056d5146c9

Circular 31082022.docx

https://mo***gov.com/5724/1/3268/2/0/0/0/m/files-11e30891/file.rtf

2022-09-15 10:35:46 UTC

b7e63b7247be18cdfb36c1f3200c1dba

Product.docx

https://cst***.dowmload.net/14668/1/1228/2/0/0/0/m/files-403a1120/file.rtf

2023-03-10 05:14:05 UTC

5efddbdcf40ba01f1571140bad72dccb

Leakage of Sensitive Data on Dark Web.docx

https://mt***south.org/5974/1/8682/2/0/0/0/m/files-b2dff0ca/file.rtf

2023-03-10 05:21:10 UTC

该组件中会包含一个RTF远程模板的链接,在文档打开时,会自动下载并执行该RTF模板。

1691118600_64cc6c0806873ac548832.png!small?1691118587881

打开时会闪过正在下载界面。

1691118622_64cc6c1e123917f2581c5.png!small

2.2 RtfDropper释放器组件

在响尾蛇的历史攻击事件中,rtfdropper组件的使用率非常高,通常文件名为file.rtf,做为docx钓鱼文档的第二阶段载荷,该组件利用office的公式编辑器漏洞CVE-2017-11882,执行释放的javascript脚本文件。

描述

详细信息

名称

file.rtf

文件大小

73294 bytes

文件类型

Rtf

文件功能

Downloader

编译时间

/

开发平台及语言

office

Pdb

/

是否加壳

VT首次上传时间

2022-05-26 18:02:22 UTC

md5

54b1157ce8045f2e83340dc5d756f412

sha256

8b4259cb1619bcbf3f6760f0982d0a1d3c67aa26738a3d6f6788bf6c2a5410e5

通过rtfdump分析,可以发现该组件中嵌入了一个1.a文件(javascript脚本文件,文件名是响尾蛇组织固定使用的)和一个Equation.3结构(用于触发公式编辑器漏洞)。

1691118647_64cc6c37398d543844aeb.png!small?1691118635992

1691118651_64cc6c3b6dd2d44630aea.png!small?1691118639846

该组件被执行后,公式编辑器在解析Equation.3时,在漏洞函数sub_41160F中数据复制时发生栈溢出,从而导致该函数的返回地址被改写,去执行响尾蛇组织的shellcode。

1691118665_64cc6c492e0c8f777531b.png!small?1691118653713

在shellcode中使用GetCommandLine,然后修改其返回指针指向的内容

1691118676_64cc6c541d1ebb26a1bfb.png!small?1691118664079

解密出一段js脚本并覆盖GetCommandLine返回指针指向的内容。

1691118689_64cc6c61e62b151514faa.png!small?1691118678673

最后加载mshtml和获取RunHTMLApplication的地址,调用RunHTMLApplication。

1691118703_64cc6c6f991017d223765.png!small?1691118691740

RunHTMLApplication给予4个0作为参数,触发RunHTMLApplication去调用GetCommandLine。

1691118714_64cc6c7a178336041144e.png!small?1691118702051

1691118752_64cc6ca08aee89c95035d.png!small?1691118741122

因为第一次调用GetCommandLine会从peb中复制一个命令行参数字符串存储在另一个空间中,在这之后GetCommandLine管理这个空间,由于第一次调用是修改了内容,覆盖为js脚本,所以在RunHTMLApplication中的GetCommandLine会得到这个脚本,又因为RunHTMLApplication的流程会去解析这个字符串,被“javascript:”引导去执行js脚本,最后调用CHTMLApp::Run执行js。而这一小段js脚本的作用就是执行1.a脚本文件。

2.3 LnkDownloader钓鱼组件

LnkDownloader是响尾蛇组织最常用的鱼叉式钓鱼攻击的组件之一,经过改进,从利用lnk文件属性中的显示bug隐藏实际的mshta调用,最后变为复制系统的mshta重命名为随机字符再去执行下载。

描述

详细信息

名称

BGI-14.pdf.lnk

文件大小

2217 bytes

文件类型

LNK

文件功能

Downloader

编译时间

/

开发平台及语言

/

Pdb

/

是否加壳

VT首次上传时间

2021-01-02 03:07:30 UTC

md5

fa10f48243ea40298e0fa07787e4156c

sha256

29022eab3963a624ae886a6f17f94834cb3e55377e0d32a4ad365af83bf74d74

当sLinkFilags中的HasExpString为1时,执行LNK文件会去检查EnviromentVariableDataBlock下的TargetUnicode的文件是否存在,不存在就去检查LinkTargetIDList指向的文件是否存在,存在就执行。LinkTargetIDList的最后一个sIDList中的PrimaryName被设置为hsmta.exe是为了维持HasExpString值不变,因为在检查出EnviromentVariableDataBlock中的TargetUnicode指向的文件不存在时被设置为0。

1691118773_64cc6cb5f265fc4cc8f7e.png!small?1691118763175

最后的效果是显示为hsmta.exe来误导用户。

1691118786_64cc6cc2cc11308b7a05b.png!small?1691118775144


描述

详细信息

名称

***关于11月22日起工作安排调整的通知.docx.lnk

文件大小

1055 bytes

文件类型

LNK

文件功能

Downloader

编译时间

/

开发平台及语言

/

Pdb

/

是否加壳

VT首次上传时间

2022-11-24 16:42:12 UTC

md5

5356a1193252b4fb2265fc8ac10327a1

sha256

f946663a780806693ea3fb034215bd6da25971eb07d28fe9c209594c90ec3225

改进后的lnk文件不再利用显示bug,是将mshta.exe复制并重命名为随机字符.exe,然后就下载执行远程HTA脚本文件。

1691118830_64cc6ceea78311b5b34ce.png!small?1691118818638

2.4 DonetLoader加载器组件

响尾蛇组织经典的.net程序加载器,是魔改的开源项目CACTUSTORCH,用于在内存中加载后续的.net DLL程序,该组件分别作为rtf释放的1.a javascript脚本和lnk文件下载的hta文件。

组件md5

名称

文件大小

VT首次提交时间

a9dbf0cbc46dfe0202b534c63bd52a4a

1.a

900000 bytes

2019-08-13 13:49:59 UTC

da8d3934fa1ddaf713ec32071eeb2987

file.hta

330170 bytes


db9562258c4a8518e0c6c43cdc0f0151

1.a

4953600 bytes

2022-01-14 07:30:57 UTC

该组织大致经过1年就会对组件进行升级改造,主要是字符串解密模块的修改。从标准base64编码->异或+自定义base64编码->字符反转+多个key异或。

2019:标准base64编码(相关文件md5:a9dbf0cbc46dfe0202b534c63bd52a4a)。

1691118846_64cc6cfe3b93aabb6e0a1.png!small

2020:异或+自定义base64编码(相关文件md5:da8d3934fa1ddaf713ec32071eeb2987)。

1691118951_64cc6d671a7e587dbc10c.png!small?16911189392971691118958_64cc6d6ead29a85ddfe60.png!small?16911189468542021:字符反转+多个key异或(相关文件md5:db9562258c4a8518e0c6c43cdc0f0151)。

1691118968_64cc6d78a5dec10ecf5c8.png!small?1691118956598

后续的加载过程都保留开源项目CACTUSTORCH的加载过程,解密后在内存加载,获取DLL的类对象“App.Program”,提供4个参数,并调用work方法。

1691118984_64cc6d881009d4e9d4e4f.png!small?1691118972121

2.5 AppDownloader下载器组件分析

在2022年之后,响尾蛇整合了早期的两个组件,开发了AppDownloader组件,通过Donetloader加载调用work方法,根据提供的参数,完成诱饵文件释放和后续载荷下载,并在内存中执行载荷,其真实文件名为App.dll,所以命名为AppDownloader。

名称

组件加载器

加载器md5

首次上传到VT时间

App.dll

1.a

b1e0108df9a12d43fdf78e99d3528707

2022-01-14 07:30:57 UTC


描述

详细信息

名称

App.dll

文件大小

2200 bytes

文件类型

DLL

文件功能

Downloader

编译时间

\

开发平台及语言

.NET

Pdb

\

是否加壳

VT首次上传时间

2022-01-14 07:30:57 UTC

md5

384CF4940E9B819CE8492FCD16EBEA6D

Sha256

B8CAB453F7190514DC9F10FF6E549A715E69A2A53ECACBDC0CF0975B56C4E828

该组件是由donetloader加载并调用work方法和传递参数,当第四个参数不为空,则将该参数作为文件名,第三个参数为文件内容,在%temp%目录下释放诱饵文件,并使用mshta.exe打开该诱饵文件。

1691119016_64cc6da85851dd59dd148.png!small?1691119004506

下载的数据前32位作为异或密钥解密后续的数据,然后再内存中加载。

1691119024_64cc6db0d2b284f18ee9b.png!small?1691119012849

2.6 ModuleInstaller下载器组件分析

该组件在不断改进中已经演变为一款比较成熟的恶意软件,会对前面阶段产生的痕迹进行清理,还会对不同的杀毒软件执行不同的操作,也采用了免杀效果不错的进程启动方式,使用其文件名ModuleInstaller做为组件名称。

描述

详细信息

名称

ModuleInstaller.dll

文件大小

46080 bytes

文件类型

exe

文件功能

loader

编译时间

2055-09-29 14:31:33

开发平台及语言

.NET

pdb

\

是否加壳

VT首次上传时间

\

md5

05C1D2FD7F8E5970406B75C01DC6E949

Sha256

8B21AD911DCC66BBA525C95F1B9F9489E96BD2AADD2B7B0CFD2D53531B51231B

该组件的构造函数接收杀毒软件信息,并检测卡巴斯基、avast、avg、360杀毒这4款杀毒软件的存在。

1691120303_64cc72afc7794a9bcbea8.png!small?1691120292844

然后根据配置信息“0100S-ABCD”中的第二或者第三个值是否为“1”,清除前面阶段的文件。

1691120312_64cc72b86509a2908e19e.png!small?1691120300410

首先是清除%temp%\1.a文件,将文件内容改写为“//FFFF”,该1.a文件为前文所提到的donetloader加载器组件。

1691120322_64cc72c268a9ffafc0207.png!small?1691120310686

通过遍历1-4096已打开的文件句柄,获取文件绝对路径,检测路径中是否有"Microsoft\\Windows\\INetCache\\Content.Word"字符串,该路径下的文件为网络下载过程中的缓存文件,响尾蛇组织利用这个处理方式来消除其网络下载过程中产生的缓存文件。

1691120332_64cc72cc09d7baa5b0d60.png!small?1691120320004

获取系统信息:用户名、机器名,系统位数等系统基础信息。

1691120340_64cc72d48059836fac046.png!small?1691120328911

将获取到的数据使用标准base64解码后,拼接到url的data参数中,随后使用拼接成的url下载配置数据。

1691120347_64cc72db8820a2e080816.png!small?1691120335377

将下载后的数据,使用前32位字节作为异或密钥解密后续数据,以相同的操作解密两次后得到配置数据。配置数据中包含后续载荷文件路径、下阶段载荷url,白+黑侧加载组合(control.exe和propsys.dll)。

1691120358_64cc72e60acf4cfdd9a4c.png!small?1691120345794

1691120367_64cc72efc1e8f39690bd6.png!small?1691120355975

根据url下载数据并异或解密后,将数据写入配置文件指定的文件中,将系统中的control.exe复制到相同目录下,最终该目录下存在文件:control.exe、control.exe.config、propsys.dll、[随机字符串].[随机字符串]文件,随着后续远控程序的加载可能会多出一些文件。

1691120373_64cc72f56970d65d7bd5a.png!small?1691120361445

遇到卡巴斯基在配置字符的控制下,会使用wmi启动mshta执行js脚本去启动control.exe,以及直接向注册表run目录注册开机启动项,启动control.exe。

1691120388_64cc7304e8b5ecbfcc1a0.png!small?1691120376762

1691120396_64cc730c1f1df7561f9d6.png!small?1691120384765

1691120416_64cc7320bdc8c75e52493.png!small?1691120404554

检测到360杀毒,直接使用process类启动隐藏窗口的control.exe。并创建快捷方式,放置在开机启动目录下。

1691120423_64cc732789ce5b004613f.png!small?1691120411447

检测到avast和avg时,注册两个计划任务,分别是延后2分钟执行control.exe和延后2分钟执行向注册表run目录添加开机启动项。

1691120433_64cc73318f90ca9da4119.png!small?1691120421312

1691120438_64cc73360419d86ccf4aa.png!small?1691120425919

当没有检测目标杀毒软件时,就使用wmi执行schtask.exe添加计划任务,和直接向注册表RUN目录写入开机启动项。

1691120450_64cc73423c63297c04d3c.png!small?1691120437929

1691120454_64cc7346763ea961f9324.png!small?1691120442307

2.7 DLLloader加载器组件分析

该组件作为白+黑 DLL侧加载利用中的恶意DLL,用来在内存中加载响尾蛇组织的关键载荷SystemAppRAT组件,功能单一,会跟据使用的白+黑利用方式变更文件名。

描述

详细信息

名称

Duser.dll,propsys.dll

文件大小

9728 bytes

文件类型

DLL

文件功能

Loader

编译时间

2021-02-09 18:16:50

开发平台及语言

.NET

pdb

\

是否加壳

VT首次上传时间

\

md5

E4E2C1259EEA903A2953A1601E49797A

Sha256

9B2C9C4FCD0BD591A58BDA2CFB8AF1C2E619FBE402CD2D9ACD0643EBB6E84D09

当DLL被加载后,会先进行Amsi绕过,Amsi可以检测.NET程序中调用的方法名,命名空间等信息来检测恶意的.NET程序,通过修改AmsiScanBuffer的前几个字节使得函数直接返回无可疑操作,达成绕过的效果。

1691120486_64cc7366224d11855add5.png!small?1691120474471随后读取同目录下使用随机字符命名的文件,使用其前32个字节作为异或密钥解密后续数据,解密后的数据为SystemAppRAT组件,用来进行远程控制,最后在内存中加载该组件。

1691120497_64cc73711c89b9e11faa3.png!small?1691120485335

2.8 SystemAppRAT远控分析

响尾蛇组织最常用的远控组件,以加密数据的形式落地为文件,被DLLloader组件加载后在内存中执行,通过自身的网络传输和机密文件收集功能,来控制被入侵的机器,窃取重要信息。


详细信息

名称

SystemApp.dll

文件大小

637952 bytes

文件类型

DLL

文件功能

RAT

编译时间

2064-02-17 19:06:49

开发平台及语言

.NET

pdb

\

是否加壳

VT首次上传时间

\

md5

D308484A9EFA669979BD1004F8E5D748

Sha256

5CAD4B71A6A99B34FB2F4D60FA8BB5DB6A6F6DABE5468D9B3341CBC04492AAAB

首先从资源中加载配置信息。

1691120521_64cc7389084db0099971c.png!small?1691120508671

1691120525_64cc738d7f82349cf1d3f.png!small?1691120513565

解密后的配置信息如下,加密的方式是二进制文件的前32个字符作为key,循环与后续文件内容进行异或得到结果。配置文件中指定C2通信地址,和窃取的目标文件后缀.doc .docx .xls .xlsx .pdf .ppt .pptx。

1691120545_64cc73a1edb2b98a18e50.png!small?1691120534260

解析完配置后,注册定时函数TreeRestoreAccessorInstance,每5秒与C2通信一次,并对C2返回的数据做出响应。

1691120553_64cc73a98996dc6fef441.png!small?1691120541504

执行的命令如下:

命令

内容

1

收集系统信息,信息保存在.sif文件

2

收集文件信息

3

.docx .doc .xls .xlsx .pdf .ppt .pptx .rar .zip路径保存,信息保存在.fls文件

4

将收集到指定文件的路径保存在配置文件中

5

更新c2地址

6

更新是否上传指定文件参数

7

重置指定文件类型

8

设置文件大小限制

9

上传指定文件

10

保存配置

2.9 HtaDownloader组件

在2023年捕获到响尾蛇组织新的下载器组件,负责下载诱饵文档和恶意DLL,将恶意DLL放置到OneDrive目录下,实现侧加载。

描述

详细信息

名称

something.hta

文件大小

680 bytes

文件类型

HTA

文件功能

Downloader

编译时间

/

开发平台及语言

/

是否加壳

VT首次上传时间

/

md5

2BCE7A8E34E4751C8E421BAA4C4A0ADA

Sha256

F0CB23D26AF39BBFAE450F37BC7642B59D30EE346020485FECC5CD8C33D2190A

下载version.dll放置在本地Onedrive目录(%LOCALAPPDATA%\Microsoft\OneDrive\

),当本地64位的Onedrive.exe和OneDriveStandaloneUpdater.exe执行时会被劫持以加载恶意version.dll,定时执行OneDriveStandaloneUpdater.exe更新Onedrive的计划任务也会变成响尾蛇组织的常驻项。

1691120616_64cc73e8f3e052e46333a.png!small?1691120605052


另外从巴基斯坦的内阁部门官方网站(cabinet.gov.pk)下载“Advisory No. 16”网络安全咨询16号文件,对应钓鱼文件中提及的内容。

1691120641_64cc7401bcb14a8e198ba.png!small?1691120629783

2.10 CSloader组件

该组件为HtaDownloader组件下载的恶意DLL,被同目录下的OneDrive加载。

描述

详细信息

名称

version.dll

文件大小

275456 bytes

文件类型

DLL

文件功能

RAT

编译时间

/

开发平台及语言

/

是否加壳

VT首次上传时间

/

md5

F2974B8D6B0B2774F49642D53BDEE8A4

Sha256

37E3465D6FCCFAE6E1C29526AA015A766F8FC26CC61ED821F3E0B44D794C99EC

其导出函数GetFileInfoSize和GetFileVersionInfoSizeW指向同一个偏移量,是Onedrive.exe导入DLL后会调用的函数。

1691120682_64cc742a1ad5d4bd03626.png!small?1691120670224

GetFileInfoSize和GetFileVersionInfoSizeW函数中会调用函数FUN_180001120解密执行后续的载荷。

1691120694_64cc7436b339bf934ff54.png!small?1691120682928

函数中先读取系统目录下的ntdll中的.text段替换掉当前进程加载的ntdll中的.text,解除函数挂钩,如果有安全软件通过在ntdll中设置钩子实现对进程行为的监控,那么该恶意文件的操作会让这种类型的监控方式失效。

1691120712_64cc74482bf9484ffb2d3.png!small?1691120700194

通过计算硬编码16字节的数据的SHA256值,作为AES-256解密的密钥,解密出shellcode,最后执行。

1691120719_64cc744f0b5f3bf64d71d.png!small?1691120707073

1691120725_64cc7455da5c4ccbb018f.png!small?1691120713852

执行的shellcode会反射加载一个Cobalt Strike的beacon,连接攻击者C2:35.175.135.236,实现远程控制。

1691120731_64cc745b7f42090275491.png!small?1691120719642

2.11 ApkDownloader下载器组件分析

响尾蛇组织针对Android手机开发的恶意程序,最早在2020年由趋势科技披露相关技术细节,主要在Google Play上进行传播,该组件主要功能是下载下阶段载荷,最终在入侵手机中窃取WeChat、Outlook、Twitter、Yahoo Mail、Facebook、Gmail和Chrome等数据。目前以披露的部分恶意安装包如下:

组件md5

名称

文件大小

VT首次提交时间

07b41f9c81915c3adad6b3690ab7a99e

226617.apk

10763432 bytes

2023-03-23 09:34:02 UTC

17ccf24c4e09b1bc7ce5c0eb637a4edd

Secure VPN_3.9_apkcombo.com.apk

14744189 bytes

2022-06-02 08:06:59 UTC

3DF009405C2226FA5047DE4CAFF3B927

com.securedata.vpn_v3.2.apk

6072227 bytes

2022-06-02 02:28:33 UTC


描述

详细信息

名称

226617.apk

文件大小

10763432 bytes

文件类型

Apk

文件功能

Downloader

编译时间


开发平台及语言

Android

pdb

\

是否加壳

VT首次上传时间

2023-03-23 09:34:02 UTC

md5

07b41f9c81915c3adad6b3690ab7a99e

Sha256

7d237d0c62fb14391d40d8875534135a7a73b8ef47956405f4e600918d583f14

该组件先进行字符串解密,将头部的“zzzza”去除后传入函数。

1691120771_64cc7483118ef0f174f5d.png!small?1691120759044

将字符串使用base64解码后,先读取4字节数据,代表AES密钥长度,随后读取32字节的密钥,最后是AES加密的数据,并且该AES密钥也是网络通信数据的AES解密密钥。

1691120781_64cc748dd0faf8d8982ad.png!small?1691120770063

根据分析结果得到AES密钥(7e 51 73 44 54 49 ac a1 fe 99 25 f3 25 29 58 e3 5a 45 7c cd 89 d4 87 78 34 3f b2 df c2 60 2c 21),使用AES-256 ECB模式解密数据后得到下阶段载荷的URL。

1691120791_64cc7497e87b70290b487.png!small?1691120779924

随后发送网络请求下载下阶段载荷。

1691120798_64cc749e856861a070276.png!small?1691120786477

该载荷会落地为文件保存为/data/data/<package_name>/files/fex/permFex/8496eac3cc33769687848de8fa6384c3。

1691120803_64cc74a3e88c49fc226e5.png!small?1691120791960

最后通过DexClassLoader类加载该DEX文件,执行恶意代码,根据趋势科技报告中提到的信息,后续载荷是对手机信息的窃取。

1691120809_64cc74a9e99739fd7756e.png!small?1691120798002

最后注册计划任务,每10分钟去触发上文的下载执行下阶段载荷的过程。

1691120817_64cc74b19fb614aa2d66d.png!small?1691120805464

注册开机广播,检测到开机事件会启动服务,也就是上文提到的下载下阶段DEX载荷和执行载荷。

1691120825_64cc74b95308dcb13c15a.png!small?1691120813128

1691120830_64cc74bec831a04dc5f63.png!small?1691120819091

该组件有多种获取C2的方式。

方法一:如上文的样本(07b41f9c81915c3adad6b3690ab7a99e)将C2硬编码在程序中。

1691120841_64cc74c93b053667c1344.png!small?1691120828948

方法二:在样本(17CCF24C4E09B1BC7CE5C0EB637A4EDD)中使用托管在Google Cloud上的Firebase服务提供C2。

1691120849_64cc74d1233a3ace793e0.png!small?1691120837211

方法三:在样本(3DF009405C2226FA5047DE4CAFF3B927)中使用Google Play的Install Referrer 服务获取数据,解密后得到C2。

1691120857_64cc74d9a0787f14b88dd.png!small?1691120846251

3 基础设施分析

该组织会运营大量域名来针对东南亚各个地区进行攻击,并且带有访问控制,钓鱼C2上会检测请求IP所属国家,限制非目标国家IP的访问。

3.1 域名构造特征分析

从收集和整理的响尾蛇历史攻击中使用的域名,可以发现该组织比较偏向于使用攻击目标相关的机构官方域名的关键字符串来构造域名。如“*[mod/mofa]-gov*”,“*navy-gov*”,“mail[navy/mod/mofa]*”以伪装成军队和政府单位相关的域名,还有用字符错位、藏字符等方式构造域名,如“*donwloaded.com”,“*downlod.net”,“*downlod.com”。

3.2 URL特征分析

根据狩猎到的所有响尾蛇样本进行分析发现响尾蛇组织的第二阶段载荷下载URL具有明显的特点:固定的分段字符,特定的字符串“/2/0/0/”和”files-[8个随机字符]“,例如:

https://[域名]/3679/1/55554/2/0/0/0/m/files-94c98cfb/hta

https://[域名]/5974/1/8682/2/0/0/0/m/files-b2dff0ca/file.rtf

https://[域名]/669/1/1970/2/0/0/1764305594/2X1R9Tw7c5eSvLpCCwnl0X7C0zhfHLA6RJzJ0ADS/files-82dfc144/appxed

3.3 C2网络特征分析

目前响尾蛇组织的C2有比较明显的特征是jarm="3fd3fd0003fd3fd21c3fd3fd3fd3fd703dc1bf20eb9604decefea997eabff7"和jarm="40d40d40d00040d1dc40d40d40d40de9ab649921aa9add8c37a8978aa3ea88"。且直接访问响尾蛇组织的C2地址,会直接返回404 Not Found,而且该组织多用“nginx”服务器,返回长度多数为“555”和“153”。

1691120875_64cc74ebe4245c197c2d9.png!small?1691120863863

4 总结

响尾蛇组织常使用鱼叉攻击对目标进行打点攻击,攻击频率较高,具有一定的危险性。主要针对政府机构和军事单位等行业进行攻击,窃取该类单位的高新技术研究资料或规划信息等,相关行业及单位需要警惕并加强网络防御。另外该组织也常用DLL侧加载和无文件攻击,将关键代码隐藏在正常进程中秘密执行,安全公司应加强相关技术的检测。

5 ATT&CK模型

战术(Tactic)

技术(Technique)

过程(Procedure)

TA0043-目标侦查(Reconnaissance)

/

/

资源开发(Resource Development)

T1587.001(构建自定义恶意软件)

响尾蛇组织自定义开发了下载器、文件窃密组件等


T1588.001(获取恶意软件)

响尾蛇组织使用开源DONET加载器进行攻击。

初始访问(Init Access)

T1566.001(鱼叉攻击,恶意附件)

响尾蛇组织向目标投递携带恶意附件的邮件。

代码执行(Execute)

T1204.002(用户执行恶意鱼叉附件)

用户直接执行响尾蛇组织投递的恶意文件


T1203(针对客户端执行的攻击)

响尾蛇组织利用CVE-2017-11882

持久化(Persistence)

T1547.001(Run注册项/启动文件目录自启动)

响尾蛇组织使用的恶意文件使用注册表自启动项实现持久化

T1053.005(计划任务)

响尾蛇组织使用的恶意文件创建计划任务实现持久化

权限提升(Privilege Escalation)

/

/

防御规避(Dfense Evasion)

T1027.009(混淆文件或信息:嵌入式有效负载)

响尾蛇组织使用多种加载器加载恶意载荷

T1574.002(劫持执行流程:DLL侧加载)

响尾蛇组织使用DLL侧加载,在正常软件中加载远控程序。

T1218.005(系统二进制代理执行:mshta)

响尾蛇组织使用系统白文件执行远程hta脚本文件。

T1036.007(扩展名伪装)

响尾蛇组织使用pdf结合lnk的后缀名将恶意文件伪装成pdf文档文件

凭证访问(Credential Access)

/

/

发现(Discovery)

T1518.001(安全软件发现)

响尾蛇组织使用Windows服务 winmgmts:\.\root\SecurityCenter2 检查已安装的防病毒产品。

横向移动(Lateral Movement)

/

/

信息收集(Collection)

T1074.002(数据阶段:本地数据暂存)

响尾蛇组织将收集到信息保存在.sif、.flc、.fls等文件中。

T1005(本地系统数据)

响尾蛇组织使用组件SystemAppRAT等窃取office文档及txt文件等

命令与控制(Command and Control)

T1071.001(使用现有web协议进行命令传输)

响尾蛇组织常使用HTTPS进行通信

T1132.001(数据编码/标准编码)

响尾蛇组织常使用base64对通信数据进行编码

数据渗出(Exfiltration)

T1041(通过C2通道)

响尾蛇组织使用C2通道渗出数据

影响(Impact)

/

/

6 参考链接

https://www.group-ib.com/blog/hunting-sidewinder/

https://www.group-ib.com/blog/sidewinder-antibot/

https://mp.weixin.qq.com/s/LaWE4R24D7og-d7sWvsGyg

https://www.trendmicro.com/en_us/research/20/a/first-active-attack-exploiting-cve-2019-2215-found-on-google-play-linked-to-sidewinder-apt-group.html

https://mp.weixin.qq.com/s/WzmRtSt20musYWOgAEUT1Q

https://mp.weixin.qq.com/s/MZadlpXbpCfQAv41rtVm3A

https://mp.weixin.qq.com/s/YOyfe4a0PcKET5YiLObW7g

# 网络安全 # web安全 # 企业安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录