概述

在2022攻防演练期间,红雨滴云沙箱以其出色的分析对抗能力被众多用户青睐。演练期间,与攻击相关的样本在云沙箱的投递次数超过了10,000次。为此,我们针对这些疑似恶意的样本进行了专门的分析和研究。

本文以红雨滴云沙箱捕获到的恶意样本为基础,对演练攻击方使用的一些手法进行总结概括。我们观察到攻击者常用钓鱼邮件投递恶意软件,邮件的诱饵内容呈现出多样化。攻击样本为了绕过安全软件检测和阻碍人工分析则采用了一系列复杂的手段,其中甚至包括针对特定软件的漏洞利用等等。而在攻击手法总结方面,我们将从网络、终端、人工分析三个角度分别介绍这些对抗手段。

攻击入口:多样化的钓鱼邮件诱饵

从红雨滴云沙箱监控到的攻击样本来看,钓鱼邮件仍是攻击方频繁使用的初始入侵手段。攻击者使用多种诱惑性主题和内容诱使接收者下载并打开附件,运行附件中伪装为文档的可执行文件或快捷方式。

钓鱼邮件主题

邮件主题包括常见的个人简历和招聘信息,以及伪装成公司内部的通知,比如补贴发放、考勤管理等。攻击者还会反向利用受害者的安全意识,发送以安全检查工具和漏洞通告为主题内容的钓鱼邮件。用户可以通过威胁情报中心阿瑞斯武器库的红雨滴邮件检测功能针对原始邮件进行安全检测:https://ares.ti.qianxin.com/ares/tools/mail

下面展示了红雨滴邮件检测功能对以微信漏洞通告为诱饵的钓鱼邮件分析结果。

红雨滴邮件检测对以微信漏洞通告为诱饵的钓鱼邮件分析结果

钓鱼邮件附件

钓鱼邮件的附件以压缩包居多,其中包含伪装为文档的可执行文件或快捷方式。常见的伪装方式包括图标伪装,双扩展名,文件名用空格增加长度以隐藏后缀等。

恶意文件伪装为文档

值得注意的是,云沙箱在攻防演练开始几天监测到的钓鱼邮件附件中还有以公司通知为由让邮件接收者加入某社交软件群聊的文档,疑似有攻击者尝试通过即时通信软件群聊的方式分发后续恶意软件。

为了让钓鱼邮件避开针对附件的检测,攻击者也采取了一些措施,比如:附件加密,并在邮件正文中给出解压密码,以及将带恶意文件的压缩包嵌入附件文档中。

附件加密,邮件正文给出解压密码

带恶意文件的压缩包嵌入附件文档

攻击样本手法总结

在红雨滴云沙箱监控到的攻击样本中,攻击者使用了不同的手段试图绕过网络侧和终端侧安全防护软件的检测,并阻碍人工分析过程,以争取时间达成攻击效果。下面将从网络、终端和人工分析三个角度介绍我们观察到的攻击样本所使用的对抗手段。

 网络对抗:伪装与隐藏

攻击样本在网络层面使用的对抗手段主要是将通信流量伪装为合法网络流量以避开检测,以及攻击者将自己的C2服务器隐藏在公开的网络服务之后,避免被溯源。攻防演练期间,攻击样本使用的典型手法有以下几种。

(1) CDN域前置

CDN域前置成为攻击样本用来伪装流量和隐藏真实C2的一种常见手段。如果一个真实存在的合法域名A通过CDN进行加速,那么攻击者可以在同一个CDN运营商中将C2与自己的域名B进行绑定,并且域名B可以是一个某合法域名下不存在的子域名(用于进行伪装)。因为CDN节点会根据HTTP请求首部的Host字段转发到绑定的IP,所以如果攻击者在Host字段填入自己的域名B,而向域名A发起请求,网络通信数据实际上会被发送到CDN节点,进而转发到攻击者控制的IP。

红雨滴云沙箱捕获到多个使用CDN域前置的攻击样本,较为典型的一个样本是利用微软域名进行伪装。

该样本在红雨滴云沙箱中产生网络行为,实际请求的IP (42.185.157.229)为officecdn.microsoft.com域名使用的一个CDN节点的IP。在样本向该IP发送的请求中,HTTP首部的Host字段域名为whoamb.microsoft.com,而这个域名无法被解析。

(2) 云函数转发C2

除了CDN域前置,云函数转发也被频繁用于隐藏真实C2。红雨滴云沙箱捕获到的使用云函数转发C2的部分样本如下。

(3) Gitee代码托管平台存放后续载荷

红雨滴云沙箱还捕获到借助代码托管平台存放后续恶意载荷的样本。攻击者在国内知名代码托管平台Gitee(码云)上创建名为”Microsoft_windows_tools”的账号,将账号名称和头像等信息伪装成微软,以迷惑受害者。

样本向Gitee平台发送可疑HTTP请求,获取一系列exe和dll文件。在请求的URL中,攻击者使用的用户名和代码仓库名都伪装为与微软相关,试图让受害者以为下载的是正常的微软工具,极具迷惑性。

终端对抗:免杀、沙箱检测及文件类漏洞利用

在终端侧,由于有杀毒软件的存在,攻击者着重于对样本的免杀手法进行改进,我们在对云沙箱捕获到的样本进行人工分析时发现,大部分攻击样本都具有签名、白利用(侧加载)、检测沙箱等特征,这些特征均被红雨滴云沙箱准确识别并标记出来。除此之外,红雨滴云沙箱还捕获到与攻防演练相关的漏洞利用样本。

(1) 签名免杀

数字签名机制作为保障网络信息安全的手段之一,被用来解决软件伪造、冒充和篡改等问题。攻防演练期间,红雨滴云沙箱就捕获到部分木马使用某厂商的无效签名来伪装攻击样本,迷惑性较强。

且样本在刚捕获时免杀效果较好,暴露后才被各大杀软引擎陆续检出。

(2) 白利用(侧加载)

由于Windows加载动态链接库 (DLL) 的规则,可执行程序首先将在当前目录中查找需要的DLL。如果合法的应用程序与恶意DLL被放在同一目录下,应用程序运行后将加载恶意DLL并执行攻击者的代码。而且有些合法的应用程序带有数字签名,因此可能被安全软件所信任而绕过设置的白名单。

红雨滴云沙箱内置的RAS引擎基于DLL侧加载(白加黑)检测技术识别到大量以该方法进行攻击的样本。

红雨滴云沙箱“白加黑”检测技术识别到疑似恶意样本

(3) 检测沙箱

红雨滴云沙箱捕获到大量反沙箱的样本,手段大多是借助一些检查来判断是否是真实环境,包括但不限于检测语言、检测CPU数量、检测CPU高速缓存、检测开机时间、检测注册表指定软件安装目录、检测虚拟机驱动等。

例如通过GetPreocessAffinityMask函数检查CPU的可用数量来规避沙箱。

通过注册表检查机器是否安装办公软件,如微信、企业微信、钉钉、飞书等。

检测开机时间以及主机名和用户名等。

(4) 文件类漏洞利用

红雨滴云沙箱还捕获到多例针对某办公软件的漏洞利用文件,由于文件打开后的漏洞利用载荷从远程服务器拉取,终端安全软件暂时不能有效检出。红雨滴云沙箱带有鼠标智能移动及点击功能,通过人工模拟触发了该漏洞,并成功捕获了相关网络行为,通信IP已经被标记为CobaltStrike,远控木马和攻防演习。

针对某办公软件的漏洞利用复现

分析对抗:多种方式阻碍人工分析

(1) 编程语言多样化

随着编程语言的飞速发展,越来越多小众化编程语言编写的恶意程序开始涌现,以阻碍对这些语言不熟悉的样本分析人员的分析过程。将云沙箱捕获到的演练相关攻击样本按编程语言进行分类,我们发现攻击样本的编写语言呈现出多样化的局面:不仅有C、C++、C#等主流语言,Go样本也数量众多,相对小众的Rust和Nim编写的样本同样占有一席之地。

(2) 加壳和混淆

此外为了躲避杀软的静态检测以及提升人工分析的难度,部分样本有加壳保护。与此同时,我们发现大部分由Go语言编写的样本都进行了函数名称替换混淆,导致目前的常规手法没法有效还原代码。

(3) 控制流平坦化

反分析的手段多种多样,控制流平坦化就是其中之一。通过把简单的代码控制流复杂化,牺牲运行效率来换取代码保护。攻击者使用控制流平坦化混淆样本,不仅可以使攻击样本避开静态检测,尽可能地存活,还能对抗人工分析,降低代码暴露的可能性。

(4) 回调函数执行载荷

捕获的攻击样本大部分都是最终加载由MSF和Cobalt Strike等攻击框架生成的载荷,不过攻击者使用的加载方式也各不相同,有些攻击者使用一些带有回调函数参数的Windows API来执行shellcode,使得加载过程更加隐蔽。

总结

根据红雨滴云沙箱在攻防演练期间监控到的相关恶意样本,我们发现攻击者频繁使用钓鱼邮件对目标发起攻击,诱使受害者运行附件中的恶意代码,恶意载荷多为MSF或Cobalt Strike等攻击框架生成的木马后门。并且恶意样本使用了多种手段进行隐藏伪装和加密混淆,以对抗安全软件检测和阻碍人工分析过程。

防护建议

奇安信红雨滴团队在此提醒广大用户,切勿打开社交媒体分享的来历不明的链接,不点击执行未知来源的邮件附件,不运行夸张标题的未知文件,不安装非正规途径来源的APP。做到及时备份重要文件,更新安装补丁。

若需运行,安装来历不明的应用,可先通过奇安信威胁情报文件深度分析平台(https://sandbox.ti.qianxin.com/sandbox/page)进行判别。目前已支持包括Windows、安卓平台在内的多种格式文件深度分析。

关于红雨滴云沙箱

红雨滴云沙箱是威胁情报中心红雨滴团队基于多年的APT高级攻防对抗经验、安全大数据、威胁情报等能力,使用软、硬件虚拟化技术开发实现的真正的“上帝模式”高对抗沙箱,协助奇安信威胁情报中心及相关安服和客户发现了多个在野0day漏洞攻击、nday漏洞攻击,和无数计的APT攻击线索及样本,是威胁情报数据产出的重要基石。

红雨滴云沙箱已集成VirusTotal

并且,红雨滴云沙箱也是VirusTotal中对恶意样本行为检出率最高的沙箱产品之一,部分高危样本可以通过点击BEHAVIOR选项卡查看到VirusTotal-红雨滴云沙箱的分析报告。

VirusTotal样本动态分析结果中集成的红雨滴云沙箱分析结果