首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PZCHAO行动:中国铁虎APT组织强势回归

1 简介

铁虎(Iron Tiger)APT行动背后的“熊猫使者”APT组织,被怀疑(必须)是天朝的一个黑客组织,他们专门以政府和相关领域的技术部门作为其主要的攻击目标,并尝试从这些组织和机构中监视和窃取高价值的数据。关于铁虎APT行动的第一个报告2010年就发布了。

受害者研究

该恶意软件的主要攻击目标是亚洲和美国的政府组织、科技公司、教育和通信企业等。下图是被攻击目标的位置和介绍。

2 攻击链

最早的攻击是从附有恶意VBS文件的垃圾邮件开始的,VBS文件的作用是从分布式服务器下载恶意payload的下载器。

2.1 恶意软件分发基础设施

攻击背后的威胁单元控制着pzchao.com域名的5个子域名,这些子域名提供不同的功能,比如上传、下载、RAT相关的通信等。

2.2第一阶段payload

一个亚洲地区拦截到的样本中,含有自解压的7zip文件,提取后,会向磁盘中写入两个批处理脚本up.bat和new.bat,并安装一个叫做curl.exe的合法应用。

这个payload的针对亚洲的,因为安装过程中SFX安装脚本的语言是中文的。恶意batch脚本和downloader工具被释放进 %systemroot%\\temp 文件夹。第一个运行的batch脚本是up.bat,并在RunProgram变量中进行设置。

2.2.1 up.bat

Up.bat脚本位于临时文件夹中,并有4个作用:

将第二个batch脚本tnew.bat改名为win32shell.bat;

分配系统文件属性;

修改ACL;

杀掉所有可能影响样本运行的计划任务。

这个新的win32shell.bat脚本会加入Adobe Flash Updates的计划任务中,每隔一天上午三点运行。任务名可以帮助避免被检测到:

schtasks /create /tn “Adobe Flash Updaters” /tr “%systemroot%\temp\win32shell.bat down” /sc daily /mo 2 /st 03:00:00 /ru “”

2.2.2 new.bat

New.bat脚本是用作其他工具下载的,也可以向C&C服务器上传系统信息和一些机密信息。Bat文件保存在%TEMP%文件夹中,文件名为“win32shell.bat”。

2.2.3 上传服务器组件up.pzchao

一旦该脚本了解了被感染设备的信息,就会上传密码这样的机密信息。含有密码的POST请求会发送到另一个服务端脚本/upload864。这些信息的收集每周上午3点进行。

2.3 下载服务器down.pzchao

比特币矿机

一阶段payload会释放一些挖掘应用工具,用来进行比特币挖矿。原来的安装脚本可以杀掉所有可能影响挖矿工具运行的软件,这样就确保了挖矿机可以正常运行。随后,恶意软件识别使用的操作的系统并设定对应的比特币挖坑机到%TEMP% system文件夹。

该脚本会创建一个wmiapsrv.exe服务,该服务运行一个BitcoinMinerPooling应用,wmiapsrv32/64.exe是设定为服务的一个假的应用,该应用会运行实际上是比特币挖坑机的应用java.exe。比特币挖矿应用会被重命名为java.exe用每3周用于比特币挖矿。

密码窃取器

恶意软件会应用2个版本的Mimikatz密码窃取工具(x86和x64),这样就可以获取所有目标系统的密码。Mimikatz来自于自解压的7zip文件,文件一旦解压,就会释放4个不同的文件,分别是mimikatz.exe, mimilib.dll, mimidrv.sys和pass.bat。

Batch脚本会执行mimikatz库,将获取的机密信息上传到C&C服务器。

远程访问木马组件 (Gh0st RAT)

最后一个下载的payload是经过修改的Gh0st RAT样本,作用是后门植入。该的木马的行为与之前检测到的Iron Tiger(铁虎)APT组织的攻击行为相似。

可执行文件代表了这个dropper,这是一个含有安装GH0st RAT服务器所需的所有代码的Windows应用。解密后释放到系统中的二进制文件与之前与C&C服务器通信的文件的作用是一样的,要等待下一步的指令。

当该服务成功安装到目标主机后,该系统就完全被黑了,会有一些包含远程终端在内的间谍软件的能力,下图是一个主要功能的列表。

Gh0st架构利用了在Windows系统上创建Windows资源的能力,这也是恶意软件开发人员常用的一种机制。对不同的目标,攻击者很容易就可以创建一些传统的二进制文件。在主要通信模块安装完成以前,dropper会在感染的系统上进行一些动作:

首先,调用GetInputState()来验证在之后的调用线程队列中有没有鼠标或键盘消息;然后调用PostThreadMessage()和GetMessage()。但是,这些调用的函数返回的值都是不经过处理的,这也是Gh0st RAT所特有的。

然后,恶意软件会在二进制文件中查找字符串定界符 SSSSSSS ,返回指向加密配置字符串开头的字符串指针。定界符指向C2 hostname:port对的开头。然后恶意软件会再查找另外一个字符串定界符AAAAAAA。此时,标记字符串指向加密服务器服务名的开头。如果没有找到配置字符串,应用就会推出。之前定位的加密配置会用DES解密。通过检查系统中的mutex,能够确保同时只有一个程序的实例在给定的时刻运行。

随后,payload会通过在“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft \Windows\CurrentVersion\Run”注册表中加入可执行文件的路径,这可以使软件在系统开启时自动执行。

同时会在以下注册表中注册为系统服务:

“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Wsfbpy sahblabg”“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Maobeu xqiyes”“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Wsfbpy sahblabgReleiceName = „Oracle.exe””“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Wsfbpy sahblabg ReleiceName = „Maobeu xqiyes””“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Maobeu xqiyesConnectGroup = „””“HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Maobeu xqiyesMarkTime = „2017-10-19 17:21”

接下来dropper安装RAT服务器的步骤是包含在try-except区块中,这样一些潜在的错误就会终止应用的执行。就在服务器二进制代码释放到系统的时候,用于进程清理的jingtisanmenxiachuanxiao.vbs脚本也会写入当前文件夹。

服务器的二进制文件是从自己的资源区中提取的,并以已安装的服务Oracle.exe的名字写入\Windows\System32文件夹中。

最后,应用会调用StartService()来执行第二个组件,也就是说RAT服务器此时就开始控制被黑的机器了。恶意应用会与C&C服务器通信,并等待返回的指令。等到与C&C控制器检查后,RAT服务器会查找含有C&C信息的加密的配置缓存, 可以用硬编码的字符串“mother360”中获取AES密钥进行解密。

解密后的C&C服务器信息:

然后设置窗口站,首先调用GetProcessWindowStation()保存当前状态,然后调用OpenWindowStation()来创建一个名为winsta0的新状态。这是因为kernel对象是安全的,而用户对象和GDI对象不是。因此,为了保证额外的安全,用户接口对象是用窗口站和桌面来管理的,因为这些窗口站和桌面本身就是安全的对象。通过检查全局表里是否是null来验证服务的实例是否已经运行了。

然后,RAT调用一个用解密的配置数据来填充lpszHost, dwPort, lpszProxyHost, dwProxyPort, lpszProxyUser, lpszProxyPass域的函数。如果代码变量存在并不为空,用于连接C&C RAT客户端的socket用PROXY_SOCKS配置来进行配置。为了知道服务器连接到客户端的事件,需要保存GetTickCount()返回的值。第一次登记到客户端含有登录token,token是在封装在LOGINDATA结构中的数据之后的。攻击者用最初的信息作为系统的指纹信息,这在决定被感染目标和在网络中的角色时极其重要。

攻击者接收到指纹包后,就解密和分析。在客户端接口的连接选项卡中会加入新的一行,服务器主机的详细情况也会写入对应的域。连接选项卡网络状态栏中的活动连接数加1。

余客户端的握手完成后,RAT会等待命令。当C2客户端的用户需要从被黑的僵尸主机在服务器上执行动作时,就会创建和发送一个含有特殊功能的命令包。恶意软件采用的另一个避免被检测到的技术是把C2地址改为localhost。

Gh0st RAT C&C客户端和被黑主机(服务器)之间的网络通信是用从Mother360中获取的字符串进行AES加密的和解密的。两个终端之间传递的包含有两个域,但是缺乏明文头,这也是Gh0st RAT之前版本中特有的:

1. 4字节的整数,包含整个包的大小;

2. 大小可变的包,包含AES加密的包packet。

客户端会发送一些小的请求(含有命令的包),服务器会用请求的数据响应这些命令。这另个短点之间的通信使用的是预定义的命令。除了代表大小和包payload的第1个字节的4字节整数外,还有3种类型的代码:命令,token和modes。在源码中,这些代码是在头文件中枚举的。

这些能力毫无疑问是该工具最初的目的,也是用来进入被黑设备的。这允许远程攻击者完全控制系统,对受害者进行监测并轻易地泄露机密信息。

3 恶意软件基础设施

3.1. HTTP文件服务器

攻击者还会重置下载次数和IP日志。从中可以看出下载次数最多的恶意组件是SFX安装包和Gh0st RAT后门。统计数据显示,下载次数是持续增长的:

3.1.1. 后门

3.1.2. YPrat

下载服务器还含有一个用Python编写的RAT,这个服务器用来监听同一IP地址444端口上的通信连接。分析发现该服务器还有其他的功能,比如在远程受感染的系统上下载和上传文件,还可以进行信息收集。因为下载量很小,所以研究人员推测payload目前还在测试中。

3.1.3 端口扫描工具

服务器上的另一种工具是端口扫描应用,还有IP日志集传递给扫描工具。这些IP日志的地址主要位于亚洲,在感染之前,攻击者首先会寻找可以在目标系统上利用的漏洞。

4 结论

这些工具都是经过实战攻击测试的,也更加适合未来的攻击。攻击者也会对这些工具进行修改,使之更加适用于某个特定的攻击目标,比如政府、教育机构、电信行业等待。正如文章中描述的,RAT的监控能力和扩展的情报收集能力会转变成一种极其强有力的工具,而且很难识别。

参考文献:

1. https://cyberwarzone.com/operation-iron-tiger-valuable-information-stolen-from-governments-and-corporates/

2. http://www.freebuf.com/news/76015.html

3. https://labs.bitdefender.com/2018/02/operation-pzchao-a-possible-return-of-the-iron-tiger-apt/

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180205A0ZC1W00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券