8-BitQuest
菜单
[威胁情报]

盲眼鹰针对厄瓜尔多的近期活动分析

· 2 分钟阅读 · @admin

盲眼鹰针对厄瓜尔多的近期活动分析 像素封面

  盲眼鹰又称APT-C-36,疑似来自南美洲,从2018年4月起至今针对哥伦比亚政府机构和大型公司(金融、石油、制造等行业)等重要领域展开了有组织、有计划、针对性的长期不间断攻击,攻击平台主要为Windows,目标为哥伦比亚政企机构以及南美的一些地区。   与近期针对哥伦比亚的攻击方式类似,在针对厄瓜尔多的攻击中利用GEO过滤服务器将厄瓜尔多和哥伦比亚的请求重定向到厄瓜尔多的国税局网站。

2.流程图

{% asset_img 691f2f2ddda63506f10896e87b257e55.png example %}

2. 详细分析

1.钓鱼邮件分析

攻击者通过发送钓鱼电子邮件到受害者,附件为包含恶意程序下载链接的PDF文件。

PDF文件打开后如下图,其中超链接指向的地址为恶意程序下载地址。

2.pRay.exe

恶意程序使用C#的WPF框架编写而成,有受害者点击PDF文件的下载链接下载而来。攻击者在恶意程序中插入了大量正常的代码用于诱导分析人员误认为该文件为正常文件。

  恶意代码在WPF窗口入口处函数MainWindow中,从资源Pittsburgh.Frequency.si中读取加密的数据并解密, 解密的文件为C# dll文件。恶意程序通过Load来发射加载dll,并从硬编码的Rule.Bookmarks中解析两个参数。   使用函数GetExportedTypes反射获取dll程序导出的第二个类型,即”CargoWise.Whise”类,CreateInstance调用该类并传入函数参数。

加密数据解密方法如下图。

3.stage1 wise.dll

该阶段的恶意程序为混淆的C# dll程序, 主要功能为解密下一阶段的dll文件。恶意程序开发者将类名或函数名用特殊符号命名或者使用与其实际功能不相关的名字。

函数代码则使用不透明谓词的混淆方式混淆代码,干扰分析人员分析恶意代码,同时也能够绕过一些安全防护软件的检测。

  去混淆后代码如下, Wise.dll被加载后,使用sleep函数等待40多秒后才开始执行恶意代码,解密硬编码的加密数据得到一个base64编码过的解密数据,将该数据使用base64解码后再用GZIP解压缩得到一个名为WebName.dll的C# dll程序并将其加载到内存中。

模块wise获取模块WebName的参数解密方法Ie.bj.ob和资源解密方法Ie.bj.MP。

  StringTypeInfo和InputBlockSize原始数据分别为”65595468”和”627867”,方法Ie.bj.ob将其转换成字符串。StringTypeInfo为资源名,InputBlockSize为用于异或解密的密钥。方法Ie.bj.MP用于解密资源eYTh, 解密密钥为”bxg”, 解密后为模块webname.dll。

将模块webname.dll加载到内存中后调用该模块元数据中第20个类型的第5个方法然后退出程序,该方法完整名为

NQmLWuqt1w4Ih6dwQx.bZAO9nNoMFc8nFISTu.tek6M6wLyr()

4.stage2 webname.dll分析

  webname.dll同样为混淆过的MSIL程序,主要功能为为解密pRay.exe文件的资源数据。MSIL使用了大量使用随机字符命名的类和函数,但实际上只有两个函数才是有效的,其他函数在整个执行流程中都没有被调用。

  模块Wise.dll通过反射的方法拿到le.bj.MP方法对象,然后要传入要解密的程序pRay.exe的加密资源数据Pittsburgh.Properties.Resources.resources.eYTh和用于异或解密的密钥“bxg”,方法MP解密代码如下:

5.stage3 collins.dll分析

  该阶段的恶意程序仍然为C#dll程序,使用SmartAssembly加密壳进行混淆,所有函数和类型都被使用随机字符来命名,主要功能为解密下一阶段的模块。

读取当前程序集的加密资源并解密出最终投递到受害者机器上的后门xRAT。

6.stage4 QuasarRAT分析

盲眼鹰在此次使用的后门程序是在开源的xRAT代码基础上添加了一些实用功能。QuasarRAT大部分功能都能在开源代码中能够找到,因此这里着重分析一些新添的功能。

1.BypassUAC

如果执行xRAT的程序不是管理员权限,则创建如下注册表并设置键值为当前程序所在路径,键DelegateExecute的值设置为0。然后执行computerdefaults用于bypass UAC并提权。

HKCU:\software\classes\ms-settings\shell\open\command

2.关闭Windows Defender和UAC绕过

如果执行xRAT的程序不是管理员权限, 设置如下注册表的键和值关闭WindowsDefender和绕过UAC提示。

执行powershell命令Get-MpPreference -verbose获取Windows Defender的设置。

  读取执行结果的每一行数据, 每一行开头为Windows Defender的设置名,行尾为该设置的设置值, 比如设置DisableRealtimeMonitoring为实时监控,如果该设置的值为False,则表示实时监控已经开启,调用powershell将该设置的值设置为True来关闭实时监控,其他选项类似。

3. 获取银行相关窗口标题

  QuasarRAT不是专用的银行木马,但是在该变种中包含多个银行相关的窗口标题,可以初步推测在此次活动中的主要目标是获取受害者对其银行账户的访问。   恶意程序设置定时器每隔一段时间检测当前界面的标题,如果标题包含一些银行相关的字符串,则修改字段NameCliente和CapView的值为相关银行,该字段可能为QuasarRAT的控制端显示的受害者的机器标志名。

这些字符串如下:

Bancolombia Sucursal Virtual Personas
Sucursal_Virtual_Empresas_
Portal Empresarial Davivienda
Portalpymes
BBVA Net Cash
Colpatria - Banca Empresas
bancaempresas.bancocajasocial.com
Empresarial Banco de Bogota
conexionenlinea.bancodebogota.com
AV Villas - Banca Empresarial
Bancoomeva Banca Empresarial
TRANSUNION
Banco Popular
Blockchain
DashboardDavivienda

4.设置浏览器代理

  QuasarRAT从C&C下载用于代理的pac规则文件和证书, 通过设置InternetSettings注册表的键AutoDetect为0和键AutoConfigURL为pac规则地址达到设置代理的目的,使用程序certutil加载证书,设置完成后访问网站”google.com”来判断代理是否设置成功。

文本 描述已自动生成

5.远程桌面

QuasarRAT实现远程控制受害者机器的方法比较简单,主要是通过由C&C下发第三方远程控制软件来实现远程控制。

1.hvnc

从C&C服务器下载NServises.exe程序,在执行之前判断该程序是否已经在运行中,如果在运行中则结束该进程并启动新进程。

2.anyDesk

从C&C服务器下载包含远程控制软件AnyDeck的压缩包并解压到指定目录和创建计划任务启动。

修改anyDesk配置文件来保证攻击者能够远程控制受害者机器。

6.执行powershell payload

  C&C下发要执行的payload, xRAT下载并保存为文件RevenRa.txt作为临时数据存放,读取文件内容将其保存到注册表MozillaPlugins的键Data中。将powershell payload保存注册表中实现无文件避免被安全软件检测到。设置计划任务调用powershell执行powershell代码使payload在每次系统开机时被调用。

7.以系统权限启动程序

使用计划任务的方式使xRAT获取系统权限并启动。恶意程序将自身拷贝到系统目录中并重命名为”CTvHost.exe”,然后通过计划任务的方式启动CtvHost。

ATT&CK矩阵

Tactic ID Name Description
defense-evasion T1562.004 Disable or Modify System Firewall 关闭Windows Defender防火墙
T1562.001 Modify Registry 修改注册表关闭Windows Defender实时监控
T1027 Obfuscated Files or Information 对程序进行混淆
Execution T1204 User Execution 诱导用户执行恶意程序
T1053 Scheduled Task/Job 创建计划任务启动程序
T1059 Command and Scripting Interpreter 执行powershell脚本
Initial Access T1566 Phishing 通过电子邮件钓鱼
Persistence T1547 Boot or Logon Autostart Execution 设置注册表启动项
Privilege Escalation T1068 Privilege Escalation 对进程进行提权提升

更多文章