深度揭秘Xshell后门事件:入侵感染供应链软件的大规模定向攻击

2017年,NetSarang软件被植入恶意代码,形成XshellGhost后门,影响众多用户。该后门通过感染组件nssock2.dll,利用DGA窃取用户信息并远程控制。攻击者可动态下发恶意代码,对服务器进行深度侵入。此事件提醒相关人员警惕供应链软件安全,加强服务器资产管理。
摘要由CSDN通过智能技术生成
本文讲的是 深度揭秘Xshell后门事件:入侵感染供应链软件的大规模定向攻击近日,NetSarang旗下的Xmanager、Xshell、Xftp和Xlpd等在全球流行使用的服务器远程管理软件 曝出被多家杀毒软件报毒查杀的情况 ,经过360科技集团追日团队调查分析确认,NetSarang旗下多款软件的关键模块被植入了高级后门,这是一起入侵感染供应链软件的大规模攻击事件,我们将其命名为“XshellGhost”(xshell幽灵)。

事件时间轴

2017年7月17日,NetSarang公司发布旗下多款产品的新版软件,更新修复多处bug和增强了会话加密能力,用于对抗CIA木马“BothanSpy”的密码劫持功能。

2017年8月7日,NetSarang与卡巴斯基发布联合声明,声称7月18日发现软件存在安全漏洞被攻击。

2017年8月15日,NetSarang与卡巴斯基更新联合声明,发现在香港利用该软件漏洞的案例。

                                             深度揭秘Xshell后门事件:入侵感染供应链软件的大规模定向攻击

图1

攻击形式

NetSarang系列软件的关键网络通信组件nssock2.dll被植入了恶意代码,厂商在发布软件时并未发现恶意代码,并给感染组件打上了合法的数字签名随新版软件包一起发布,用户机器一旦启动软件,将会加载组件中的恶意代码,将主机的用户信息通过特定DGA(域名生成算法)产生的DNS域名传送至黑客的远程命令控制服务器,同时黑客的服务器会动态下发任意的恶意代码至用户机器执行。

攻击影响面

使用被感染的软件的用户,将会被黑客窃取用户信息,并在云端下发任意的恶意代码进行远程控制,由于该系列软件在国内的程序员和运维开发人员中被广泛使用,多用于管理企事业单位的重要服务器资产,所以黑客极有可能进一步窃取用户所管理的服务器身份验证信息,秘密入侵用户相关的服务器,请相关软件用户和企事业单位提高警惕。

XshellGhost技术分析

“XshellGhost”(xshell幽灵)是一个精密的定向攻击平台,所有的功能模块实现均为shellcode形式,客户端攻击通过感染供应链软件和各个shellcode模块,实现了无自启动项、无落地文件和多种通信协议的远程控制,后门潜伏于受害者电脑等待黑客在云控制平台下发shellcode数据执行,黑客在云端甚至可能通过上传的用户信息进行选择性的定向攻击。

远程控制逻辑分析

XshellGhost的远程控制主要分为5个步骤:

1. 软件启动加载被感染组件nssock2.dll,解密shellcode1执行。

2. Shellcode1解密Shellcode2执行如下功能:

a)  创建注册表项,上报数据到每月对应的DGA域名当中;

b)  通过发往知名的域名解析器当中上传用户信息给攻击者;

c)  将接收的数据写入到创建的注册表项当中;

d)  通过获取的key1和key2解密Shellcode 3并执行;

3. Shellcode3会创建日志文件并写入信息,启动系统进程Svchost.exe,修改其oep处的代码,并注入shellcode形式的Root模块执行。

4. Root模块的初始化过程中,会加载并初始化Plugins、Config、Install、Online和DNS等功能模块,然后调用函数Install->InstallByCfg以获取配置信息,监控注册表并创建全局互斥体,调用Online-> InitNet;

5. 函数Online-> InitNet会根据其配置初始化网络相关资源,向指定服务地址发送信息,并等待云端动态下发代码进行下一步攻击。

深度揭秘Xshell后门事件:入侵感染供应链软件的大规模定向攻击

图2

初始加载模块分析

此次攻击的所有模块调度加载实现方式都是通过shellcode形式,采用了模块化的方法进行统一管理。每个Shellcode的入口函数都会根据传入的第2个参数的数值决定将其具体要执行的功能,参数数值和对应的功能列表如下所示:

 

编号

作用

1

初始化shellcode自身的相关信息

100

相关初始化,获取shellcode Root的功能列表

101

释放shellcode申请的资源

102

获取shellcode的ID

103

获取shellcode的名称

104

获取shellcode的函数列表接口

根据Shellcode编号102、103和104所对应的功能,可以获取每个Shellcode的信息列表:

 

ID

名称

状态

100

Root

已知

101

Plugins

已知

102

Config

已知

103

Install

已知

104

Online

已知

关键的网络通信模块,除DNS协议通信,此后门还会利用其他5种网络协议进行远程控制。

ID

名称

状态

200

TCP

未知

201

HTTP

未知

202

UDP

未知

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值