经过几个月的调查,趋势科技的研究人员发现Earth Preta正在使用一些从未被公开的恶意软件和用于泄露目的的有趣工具。研究人员还观察到攻击者正在积极地改变研究人员的工具、战术和程序(TTP)以绕过安全解决方案。在这篇文章中,研究人员还将介绍和分析攻击者使用的其他工具和恶意软件。
在之前的研究中,研究人员披露并分析了Earth Preta(又名Mustang Panda)组织发起的一项新型攻击活动。在最近的一次活动中,研究人员通过监测发现Earth Preta通过鱼叉式网络钓鱼邮件和谷歌驱动器链接发送诱饵文件。经过几个月的调查,研究人员发现攻击者在这次活动中使用了一些从未公开的恶意软件和用于泄露目的的有趣工具。
经调查,整个攻击始于鱼叉式网络钓鱼电子邮件。经过对攻击程序的长期调查,研究人员确定了完整的感染链如下所示。
完整的感染链
研究人员将不同的TTP分为六个阶段:攻击载体、发现、权限升级、横向移动、命令与控制(C&C)和泄露。在之前的研究中,研究人员在第一阶段(攻击载体)涵盖了大多数新的TTP和恶意软件。但是,研究人员观察到一些TTP已经发生了变化。在接下来的部分中,我们将重点关注更新后的攻击载体及其后续阶段。
之前Earth Preta使用的攻击载体,研究人员将它们分为三种类型(DLL侧加载、快捷链接和伪文件扩展名)。从2022年10月和11月开始,研究人员观察到攻击者开始改变研究人员的TTP,以部署TONEINS、TONESHELL和PUBLOAD恶意软件和QMAGENT恶意软件。研究人员认为,攻击者正在使用这些新技术逃避。
根据研究人员之前的观察,TONEINS和TONESHELL恶意软件是从嵌入电子邮件正文的谷歌驱动器链接下载的。为了绕过电子邮件扫描服务和电子邮件网关解决方案,谷歌驱动器链接现在已经嵌入到诱饵文件中。该文件诱使用户下载带有嵌入式链接的受密码保护的恶意文件。然后可以通过文件中提供的密码在内部提取文件。通过使用此技术,攻击背后的恶意攻击者可以成功绕过扫描服务。
一份诱饵文件,其中嵌入了谷歌驱动器链接和密码
在新的攻击载体中,整个感染流程已更改为下图所示的程序。
攻击载体的感染流
新攻击载体中的文件
在分析下载的文件后,研究人员发现这是一个恶意RAR文件,包含TONEINS恶意软件libcef.dll和 border.docx中的TONESHELL malware ~List of terrorist personnel 。它们的感染流程类似于之前报告中的攻击载体类型C,唯一的区别是伪造的.docx文件具有XOR加密内容,以防止被检测到。例如,~$Evidence information.docx是一个伪装成Office Open XML文件的文件。因此,它似乎是无害的,甚至可以通过使用7-Zip等解压软件打开。
攻击者在一个文件的ZIPFILERECORD结构中隐藏了一个PE文件。TONEINS恶意软件libcef.dll将在XOR操作中用一个字节解密该文件,找到PE头,并将有效负载放置到指定的路径。
在对最后一个ZIPFILECECORD结构中的frData成员进行解密后,将显示PE文件
TONEINS的解密函数
感染流的后续行为通常与之前的分析相同,更多的细节我们之前已经介绍过。
在最近的案例中,恶意软件PUBLOAD也是通过嵌入在诱饵文件中的谷歌驱动器链接传播的。
美国大使馆的诱饵邀请函
自2022年10月以来,研究人员一直在观察PUBLOAD的一种新变体,该变体使用伪造的HTTP标头来传输数据,LAC的报告也讨论了这一点。与之前的PUBLOAD变体不同,它在数据包中预先准备了一个具有合法主机名的HTTP标头。研究人员认为,攻击者试图在正常流量中隐藏恶意数据。HTTP正文中的数据与过去的变体相同,后者具有相同的魔法字节17 03 03和加密的受害者信息。研究人员能够成功地从实时C&C服务器中检索到有效负载,这使得我们能够继续分析。
PUBLOAD HTTP变体的C&C流量
一旦接收到有效负载,它将检查前三个魔术字节是否为17 03 03,以及接下来的两个字节是否为有效载荷的大小。然后,它将使用预定义的RC4密钥78 5A 12 4D 75 14 14 11 6C 02 71 15 5A 73 05 08 70 14 65 3B 64 42 22 23 2000 00 00 00 00 00 00 00 00解密加密的有效负载,该密钥与PUBLOAD加载程序中使用的密钥相同。
从PUBLOAD HTTP变体检索到的第一个有效负载
解密之后,它检查解密有效负载的第一个字节是否为0x06。解密的有效负载包含用字节23 BE 84 E1 6C D6 AE 52 90进行XOR加密的另一个有效负载。
从PUBLOAD HTTP变体检索到的第二个有效负载
解密后,还有另一个支持数据上传和命令执行的最终后门负载。
PUBLOAD HTTP变体的最终有效负载
PUBLOAD HTTP变体中的命令代码
此外,研究人员还在PUBLOAD示例中发现了一些有趣的调试字符串和事件名称。
PUBLOAD中的事件名称
PUBLOAD中的调试字符串
总之,研究人员认为新的TONESHELL和PUBLOAD文件一直在迭代,且有了一些共同之处。例如,为了绕过防病毒扫描,它们现在都被放置在诱饵文件中(如谷歌硬盘链接)。
一旦攻击者获得了对受害者环境的访问权限,研究人员就可以通过以下命令开始检查环境:
在这次活动中,研究人员发现了Windows 10中用于UAC绕过的几个工具。接下来我们将一一介绍。
HackTool.Win32.ABPASS是一个用于绕过Windows 10中的UAC的工具。根据我们的分析,它重用了ucmShellRegModMethod3函数中的代码,该函数来自一个著名的开源项目UACME。Sophos的一份报告介绍了这一工具。
该工具接受一个参数,并将以下数据写入注册表:
ABPASS更改了注册表项
它还改变了Windows处理ms-settings协议的方式,在本例中,字符串ms-settings是一个编程标识符(ProgID)。如果CurVer项设置在ProgID下,它将用于版本控制并将当前ProgID (ms-settings)映射到CurVer默认值中指定的ProgID。反过来,ms-settings的行为被重定向到自定义的ProgID aaabbb32。它还设置了一个新的ProgID aaabbb32及其shell打开命令。最后,执行fodhelper.exe或computerDefaults.exe来触发ms-settings协议。
新增的ProgID aaabbb32
HackTool.Win 32.CCPASS是另一个用于Windows 10 UAC绕过的工具,并类似地重用项目UACME中函数ucmMsStoreProtocolMethod中的代码。
CCPASS和ucmMsStoreProtocolMethod中的代码相似性
它的工作方式与ABPASS类似。然而,与ABPASS不同的是,它劫持了ms-windows存储协议。黑客工具CCPASS的工作原理如下:
1.它禁用了协议ms-windows存储的应用程序关联toast。
2.它在注册表中创建一个新的Shell;
3.它调用未记录的API UserAssocSet来更新文件关联;
4.它执行WSReset.exe来触发此协议。
在Windows 10及以上版本中,系统会显示一个新的toast对话框,用于为选定的文件类型选择打开的应用程序。要隐藏此窗口,该工具会明显地将新条目添加到HKCU\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToast,以禁用与协议ms-Windows存储相关的所有Toast。
应用程序关联toast的示例
通过注册表隐藏应用程序关联toast
完成此操作后,该工具开始更改ms-windows-store的shell命令,并最终使用WSReset.exe触发它。
在Windows 10中,有一个名为“SilentCleanup”的本地Windows服务。该服务具有最高权限,可以用于Windows 10 UAC绕过。通常,此服务用于运行%windir%\system32\cleanmgr.exe。但是,可以劫持环境变量%windir%并将其更改为任何路径以实现权限升级。
滥用SilentCleanup服务的恶意命令
研究人员观察到攻击者使用这种技术来执行c:\users\public\1.exe。
在这个阶段,研究人员观察到某些恶意软件,如HIUPAN和ACNSHELL(最初由Mandiant和Sophos引入并分析),被用来自我安装到可移动磁盘并创建反向shell。
研究人员发现了一组由USB蠕虫和反向shell组成的恶意软件,包括USB蠕虫和反向shell(被检测为Worm.Win32.HIUPAN和Backdoor.Win32.ACNSHELL),用于在可移动驱动器上进行扩展。
感染链如下图所示。
HIUPAN和ACNSHELL感染流
USB Driver.exe程序首先侧加载u2ec.dll,然后加载有效负载文件USB .ini。它们分别具有以下PDB字符串:
G:\project\APT\U盘劫持\new\u2ec\Release\u2ec.pdb
G:\project\APT\U盘劫持\new\shellcode\Release\shellcode.pdb
其中“U盘”指的是可移动驱动器。
然后,USB Driver.exe开始检查是否正确安装。如果安装了它,它将开始感染更多的可移动磁盘,并将文件复制到一个名为autorun.inf的文件夹中。如果没有安装,它会将自己安装到%programdata%,然后将注册表运行项设置为持久性。
最后,侧加载ACNSHELL恶意软件rzlog4cpp.dll。然后,它将通过ncat.exe创建一个反向shell,用于关闭[.]theworkpc[.]com的服务器。
Earth Preta在C&C阶段使用了多种工具和命令。例如,该组织使用certutil.exe从服务器103[.]159[.]132[.]91下载合法的WinRAR二进制文件rar1.exe。
certutil.exe程序下载WinRAR二进制文件
研究人员还观察到攻击者使用PowerShell从服务器103[.]159[.]132[.]下载多个恶意软件和文件,以备将来使用。
PowerShell下载恶意软件
在某些示例中,研究人员甚至利用安装在受害主机上的WinRAR二进制文件来解压所有恶意软件。
使用已安装的WinRAR二进制文件解压恶意软件
虽然研究人员发现了涉及多个被释放恶意软件的几个日志,但研究人员只设法找回了其中的几个。在收集的所有示例中,我们将重点介绍其中几个。
CLEXEC后门文件名为“SensorAware.dll”。这是一个简单的后门,能够执行命令和清除事件日志。
CLEXEC命令代码
COOLCLIENT的后门首次出现在Sophos的一份报告中,报告中提到的样本是在2021编译的。在该示例中,研究人员分析的COOLCLIENT示例的最近编译时间是在2022年,虽然它提供了相同的功能,但当当前进程名具有“.pdf”或“.jpg”文件扩展名时,它新增了打开诱饵文件(work.pdf)的功能。它还包含减少调试字符串(更少OutputDebugStrings调用)的功能。与此同时,loader.ja在两个进程下使用:一个是在googleupdate.exe下,用于第一次侧加载。第二个是在winver.exe下,它被注入进行后门行为。此外,COOLCLIENT应用了将在我们将在后面讨论的混淆技术。
打开诱饵文件
下图显示了COOLCLIENT的整个执行流程。
COOLCLIENT的执行流
COOLCLIENT的参数提供了以下功能:
install. 有三种不同的条件来决定COOLCLIENT的安装方法,详细信息如下:
1.它通过创建一个名为InstallSvc的InstallSvc服务来自我安装,该服务将触发“googleupdate.exe work”。
2.它通过命令C:\ProgramData\GoogleUpdate\ GoogleUpdate .exe为持久活动设置了一个运行项。
work. 恶意软件将继续读取和解密goopdate.ja,并将其注入到winver.exe中以用于包含攻击的下一阶段负载(COOLCLIENT)。
passuac. 恶意软件将检查进程avp.exe是否存在。如果avp.exe不存在,UAC绕过将通过CMSTPLUA COM接口执行。如果avp.exe存在,UAC绕过将通过AppInfo RPC服务执行。
通过CMSTPLUA COM接口绕过UAC
通过AppInfo RPC服务绕过UAC
根据COOLCLIENT中使用的类名,研究人员发现它读取加密的配置文件可以通过time.sig扩展C&C服务器,time.sig是一种加密的配置。它还能够通过不同的网络协议如UDP(用户数据报协议)和TCP(传输控制协议)进行通信,根据一些内部字符串和Earth Preta使用的API,可以推断出该后门的功能如下:
发送端口映射;
建立连接;
读取文件;
删除文件;
按键和窗口监控。
后门TROCLIENT也是在Sophos的报告中首次披露的,它与COOLCLIENT类似。然而,这个后门有一个反调试技术,它将检查正在运行的进程是否有字符串dbg.exe或olly。
TROCLIENT反调试技术
下图显示了TROCLIENT的整个执行流程。
TROCLIENT的执行流程
TROCLIENT的参数提供以下功能:
install. 有两种方法来确定TROCLIENT的安装方法,详细信息如下:
1.它通过创建一个名为InstallSvc的服务来自我安装,该服务将触发“C:\programdata\netsky\netsky.exe online”。
2.它为C:\programdata\netsky\netsky.exe命令在线设置了一个运行项以保持持久性。
online:它将读取下一阶段的有效负载,free.plg 和main.plg。并将它们注入到dllhost.exe中。
passuac:恶意软件会检查avp.exe进程是否存在。如果没有,则通过CMSTPLUA COM接口执行UAC绕过。如果avp.exe存在,则通过令牌操作执行UAC绕过。
三个不同参数的功能
此后门提供以下功能:
读取文件;
删除文件;
监控按键和窗口。
如下表所示,COOLCLIENT和TROCLIENT之间有一些相似之处和不同之处。
COOLCLIENT和TROCLIENT的比较
除了前面提到的恶意软件,研究人员还发现了几个用于PlugX的shell代码加载程序。由于它是一个已知的恶意软件家族,我们不会在此详细描述。
根据监控分析,研究人员发现Earth Preta使用了多种方法从受害者那里窃取敏感数据。例如,在某些情况下,研究人员观察到利用WinRAR和curl(或curl)来收集数据并将数据传输到攻击者的服务器。经过进一步调查,研究人员甚至发现了一些以前从未见过的恶意软件,这些恶意软件被用来以自定义文件格式收集数据。
在下一篇文章中,我们将详细介绍由Earth Preta开发的独特窃取工具。
参考及来源:https://www.trendmicro.com/en_us/research/23/c/earth-preta-updated-stealthy-strategies.html