找回密码
 加入网盟
华夏网盟 技术分享 查看内容

蠕虫病毒利用“永恒之蓝”漏洞传播 单位局域网受威胁最大

2018-8-10 16:14| 发布者: admin| 查看: 6| 评论: 0|原作者: 火绒安全实验室

摘要: 一、 概述火绒工程师通过技术分析发现,该蠕虫病毒会通过远程服务器和自身爬虫功能收集局域网内的IP列表,然后对其中的多个服务端口发起攻击,包括RPC服务(135端口)、SQLServer服务(1433端口)、FTP服务(21端口),同 ...

一、 概述

火绒工程师通过技术分析发现,该蠕虫病毒会通过远程服务器和自身爬虫功能收集局域网内的IP列表,然后对其中的多个服务端口发起攻击,包括RPC服务(135端口)、SQLServer服务(1433端口)、FTP服务(21端口),同时还会通过 "永恒之蓝"漏洞,入侵445端口,攻击电脑。

由于该病毒针对企业不便关闭的多个常用端口进行攻击,并且利用了局域网电脑中普遍未修复的"永恒之蓝"漏洞,一旦任何一台电脑被该病毒感染,将意味着局域网内所有电脑都面临被感染的风险,尤其给政企机构用户造成极大威胁。

如果病毒成功入侵或攻击端口,就会从远程服务器下载病毒代码,进而横向传播给局域网内其他电脑。同时,该病毒还会在被感染电脑中留下后门病毒,以准备进行后续的恶意攻击,不排除未来会向用户电脑传播更具威胁性病毒的可能性,例如勒索病毒等。

火绒工程师通过技术溯源发现,从2017年06月23日(甚至更早) 至今,该黑客组织一直使用该系列蠕虫在全网进行大规模的信息收集。且一直保持对病毒的更新。

火绒"企业版"和"个人版"最新版均可彻底查杀蠕虫病毒" Worm/Sharp "。同时,政府、企业、学校、医院等受此类病毒威胁较大的局域网用户,我们建议申请安装"火绒企业版",可有效防御局域网内病毒屡杀不绝的难题。目前火绒免费提供三个月试用期,欢迎大家前来体验试用。

"火绒企业版"申请试用地址:https://www.huorong.cn/essmgr/essreg

二、      详细分析

今年上半年,”火绒终端威胁情报系统”检测到Worm/Sharp变种在肆意传播,Worm/Sharp或将卷土重来。该变种通过与C&C服务器进行通讯以及内置的爬虫功能获取目标的IP地址及端口,对RPC服务(135端口)、SQLServer服务(1433端口)、FTP服务(21端口)进行爆破,使用永恒之蓝漏洞对445端口进行入侵,如果入侵或爆破成功则执行脚本从C&C服务器上下载初始样本,初始样本经过多重释放,最终运行Worm/Sharp蠕虫。除此之外还会判断目标IP是否为代理服务器,以及对从C&C服务器获取的路由器IP地址列表发起TCP连接以判断7547端口的连通性,为下一步的攻击做准备。

初始样本执行流程,如下图所示:

初始样本执行流程

原始样本(A22.exe)是经过PECompact加壳过的,在运行过程中会释放lib32Waxe.exe,lib32Waxe.exe带有混淆器在内存中会解压缩.Net恶意代码,并通过调用ComCallPreStub来执行这段.Net恶意代码,之后进入Worm/Sharp核心代码,Worm/Sharp有两大核心功能。核心功能,如下图所示:

病毒核心功能

初始样本(A22.exe)由VB编写并且加了PECompact壳,在执行过程中会释放lib32waxe.exe,并创建服务WaxeSvc,主流程执行完后会启动自删除进程。初始样本主流程,如下图所示:

初始样本执行流程

lib32Waxe.exe带有混淆器在执行过程中解压缩 Worm/Sharp蠕虫代码。载入二进制资源代码,如下图所示:

载入资源

载入的二进制资源经过zlib压缩,zlib版本为1.2.3。解压后可以获得.Net恶意代码。解压缩代码,如下图所示:

解压缩代码

在最后使用CLR API 实现在C++中运行.Net恶意代码,调用Clr.dll中未公开的函数ComCallPreStub运行Worm/Sharp蠕虫。调用ComCallPreStub函数相关代码,如下图所示:

启动蠕虫代码

该蠕虫分为获取被攻击的IP列表和入侵攻击两部分功能,两部分功能相互协作,不分先后,且两部分功能中的每一个操作均为一个独立线程。

(一)       获取被攻击的IP列表

1.       爬虫功能

该蠕虫内置了爬虫功能,可以根据随机字符串搜索、关键字搜索、与C&C服务器通讯和Weblogs搜索来扩充自己的IP列表,为入侵攻击功能提供数量庞大的主机列表。

1.1    通过搜索引擎搜索随机字符串

该线程会维持一个list列表,当列表中的数量小于等于200时,调用Random_Sting_1函数随机生成字符串,并作为GetList_FromYahooAndBing方法的参数,在Yahoo和Bing 搜索引擎中进行搜索。筛选出符合要求的,进行正则过滤,正则代码如下[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\:[0-9]{1,5}。

在List_Filter方法中会根据端口号对list中的目标主机进行分类,为入侵攻击功能提供攻击目标。

函数逻辑,如下图所示:

搜索随机字符串

1.2     通过搜索引擎搜索关键字扩充FTP列表

函数逻辑,如下图所示:

ExpandFTPList()函数逻辑

在GetIPList_keyWordString_FromBingAndYahoo方法中定义了一个数组array,如下图所示:

用于拼接的字符串数据

拼接了两个字符串

String a ="domain:"+array[Random(array.Length)]+Random(10000).ToString

String b ="site::"+array[Random(array.Length)]+Random(10000).ToString

使用Bing搜索字符串a,添加符合要求的IP保存到list

使用雅虎搜索字符串b,添加符合要求的IP保存到list

UseIPList_FromBing回调使用Bing搜索”ip:”+list列表中的地址,筛选21端口的IP地址,调用AddFTPList回调将筛选后的IP加入FTP爆破的List中,用于入侵攻击功能进行攻击。

1.3     通过与C&C通讯更新相应的列表

Route_TCP_Connect函数从C&C服务器(hxxp://tz.gxout.com/ip/route_tcp.aspx)获取DES加密后的路由IP地址列表,DES解密的key=” 20110520”,IV={32,17,5,32,33,1,88,72}。解密之后发起TCP连接,判断7547端口是否存活,如果存活则添加到相应的List中。

TCP_Connect函数与上述类似,只是请求的地址有所不同,通讯地址为 (hxxp://tz.gxout.com/ip/tcp.aspx),主要筛选135、445、1433端口的IP地址。整体逻辑,如下图所示:

与C&C服务器通讯逻辑

1.4     通过weblogs.com搜集信息扩充1433端口IP列表

蠕虫会从http://rpc.weblogs.com/shortChanges.xml下载shortChanges.xml,对xml文件进行解析。调用GetWeblogList_AfterFilter函数过滤Xml的内容,调用GetUrl_FromList将WeblogList中的URL提取出来,调用UrlListFilter过滤以.xml、.rss、.pdf、.gz、和.doc结尾的URL。调用StringManipulationAndAddList函数筛选端口为1433的IP地址,添加到1433爆破的List中。整体逻辑,如下图所示:

1533783271031031801.png

Weblogs搜集信息逻辑

2.       执行远程恶意代码

通过访问黑客的C&C服务器(ftp:// in.siolio.com),下载FTP上的exe并执行。该功能可以作为一个后门功能,便于后续攻击的展开。相关代码,如下图所示:

1533783271656023788.png

下载可执行文件并执行

FTP账号及密码,如下图所示:

1533783272133093293.png

FTP账号密码

3.       修改注册表关闭TCP/IP的连接数限制。

修改注册表,如下图所示:

1533783272753098336.png

修改连接数限制

(二)       入侵攻击功能

蠕虫会通过与C&C服务器(hxxp://api.gxout.com/ip/google.aspx)进行通讯获取加密后的IP列表,解密过滤后,加入相应的List中。入侵攻击功能分为以下6个部分:FTP爆破、135端口爆破、445端口入侵、1433端口爆破、7547端口回连、代理服务器检测,并且当断网的情况下,会自动遍历内网IP对内网的其他服务器进行爆破和漏洞攻击。功能线程,如下图所示:

1533783273225050609.png

功能线程

1.       FTP爆破

获取被攻击的IP列表功能中已经对FTP的列表进行了扩充,所以在入侵攻击功能中直接开始爆破,内置的字典(部分),如下图所示:

1533783274037089788.png

登录信息字典

如果爆破成功则向目标IP上传测试文件,对上传路径进行Http请求,删除上传的文件,比较内容,相同则返回全路径,之后将网站域名(ip地址)+ftp用户名+ftp密码+上传文件的完整路径进行URL编码发送到C&C服务器(hxxp://tz.gxout.com/ftp/set.aspx)上。程序流程,如下图所示:

1533783274766021717.png

测试和发送流程

2.       135端口爆破

使用的账号为Administrator,密码字典,如下图所示:

1533783275696049547.png

密码字典

爆破成功之后,会在目标服务器生成批处理文件并执行最终执行的批处理,如下图所示:

1533783276820081519.png

批处理内容

3.       445端口入侵

该蠕虫除了爆破功能之外还会通过漏洞进行入侵,使用永恒之蓝对服务器进行攻击。 部分Payload,如下图所示:

1533783277733092672.png

永恒之蓝Payload

4.       1433端口爆破

账号默认sa,密码字典(部分),如下图

鲜花
鲜花
握手
握手
雷人
雷人
路过
路过
鸡蛋
鸡蛋

相关分类