Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

栏目: Struts · 发布时间: 6年前

内容简介:许多企业的网站使用Apache的开源项目搭建http服务器,其中又有很大部分使用了Apache子项目Struts。但由于Apache Struts2产品代码存在较多隐患,从2007年开始Struts2就频频爆出多个高危漏洞。从Apache官方公布的数据来看,从2007年至2018年共公布了编号S2-001至S2-056共56个漏洞,其中仅远程代码执行漏洞(Remote Code Execution)就有9个。

0×1 概述

许多企业的网站使用Apache的开源项目搭建http服务器,其中又有很大部分使用了Apache子项目Struts。但由于Apache Struts2产品代码存在较多隐患,从2007年开始Struts2就频频爆出多个高危漏洞。

从Apache官方公布的数据来看,从2007年至2018年共公布了编号S2-001至S2-056共56个漏洞,其中仅远程代码执行漏洞(Remote Code Execution)就有9个。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

2017年3月被报出的S2-045(CVE-2017-5638)高危漏洞,基于Jakarta Multipart解析器执行文件上传时可能导致RCE,影响范围为Struts 2.3.5 – Struts 2.3.31,以及Struts 2.5 – Struts 2.5.10版本,持续存在被利用进行攻击的情况。

2018年4月腾讯御见威胁情报中心曾监测到黑客组织利用该漏洞批量入侵web服务器植入挖矿木马(详情见 《企业未修复Apache Struts 2漏洞致Web服务器被批量入侵》 一文),近期御见威胁情报中心再次监测到类似的攻击。

此次攻击中,黑客利用攻击工具WinStr045检测网络上存在漏洞的web服务器,发现存在漏洞的机器后通过远程执行各类指令进行提权、创建账户、系统信息搜集,然后将用于下载的木马mas.exe植入,进而利用mas.exe这个木马下载器从多个C&C地址下载更多木马:利用提权木马o3/o6.exe、挖矿木马netxmr4.0.exe。

由于挖矿木马netxmr解密代码后以模块名“koi”加载,因此腾讯御见威胁情报中心将其命名为KoiMiner。有意思的是,入侵者为确保自己挖矿成功,会检查系统进程中CPU资源消耗,如果CPU资源占用超过40%,就会将其结束运行,将省下来的系统资源用于挖矿。

根据代码溯源分析,腾讯御见威胁情报中心研究人员认为,本次KoiMiner系列挖矿木马可能是某些黑客论坛、地下挖矿组织交流社区里多人合作的“练习”作品。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

攻击流程

注:Struts是一个基于MVC设计模式的Web应用框架,用户使用该框架可以将业务逻辑代码从表现层中清晰的分离出来,从而把重点放在业务逻辑与映射关系的配置文件上。Struts2是Struts与WebWork的结合,综合了Struts和WebWork的优点,采用拦截器的机制来处理用户的请求,使业务逻辑能与ServletAPI完全脱离开。

0×2 详细分析

0×2.1 入侵

检测目标系统是否存在S2-045漏洞

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

对存在漏洞的系统进行攻击

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

入侵 工具 中供选择的渗透命令

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

入侵时可以选择执行的命令(也可自定义),供选择的命令是Windows、 linux 渗透中常用的命令,包括查看系统版本信息、网络连接状态、端口开放状态以及向系统添加具有管理员权限的新用户、打开远程连接服务等操作。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

通过目录查看命令确认C:\Windows\Help目录和C:\ProgramData目录是否已经植入木马,若没有则将mas.exe木马植入。植入时先创建C#代码文本mas.cs,然后使用.NET程序将其编译为可执行文件mas.exe。

首先执行命令创建mas.cs并写入用于下载的代码。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

然后执行命令将mas.cs通过.NET程序编译为mas.exe。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

命令中利用mas.exe下载挖矿木马netxmr4.0。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

部分受攻击目标如下:

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

植入的mas.exe大小只有4k,存放在目录ProgramData下。从御见威胁情报中心的监控记录可以看到,mas.exe从多个C2地址下载了netxmr4.exe(挖矿木马)、o3.exe/o6.exe(提权木马)等多个木马。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×2.2 提权

o3.exe利用MS16-032漏洞提升权限

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×2.3 Netxmr4.0

0×2.3.1 代码解密

挖矿木马Netxmr4.0使用C#编写并且使用ConfuserEx 对代码进行了加密混淆,在执行前使用自带的解密函数进行解密,然后利用C#反射机制执行解密后的模块。

被加密的代码保存在数组array2中。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

调用解密函Decrypt对代码进行解密。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

解密后保存在数组array3中,可以看到PE文件的标志“4D5A”。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

将array3作为模块“koi”加载得到最终执行的恶意代码。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

代码中各个类对应功能如下:

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

利用C#反射机制执行模块“koi”

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×2.3.2 争夺资源

挖矿木马在运行前,通过多个方法查找占用系统CPU较高的进程,关闭进程并隐藏其文件,从而保证自身挖矿代码运行时有充分的资源。

结束已在运行的挖矿进程。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

关闭除本挖矿进程外的占用CPU处理时间超过40%的进程,并将该进程的文件设置为隐藏、任意用户拒绝访问。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

结束文件版本信息中不包含“Microsoft Corporation.”的taskmgr、svchost、csrss进程,并将该进程的文件设置为隐藏、任意用户拒绝访问。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×2.3.3 挖矿

如果挖矿木马版本不是“2010-2020”则从hxxp://50.232.75.165/更新下载挖矿木马。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

存有挖矿配置文件的C2地址被加密。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

解密函数通过字符重组运算+base64解密得到

hxxp:// www.sufeinet.com/space-uid-97643.html

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

解密出地址后请求该C2页面

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

查找请求返回页面中“xMFOR”字符开头的字符(除去自身):

NqNhbLWEgYNqNhb3J5cHJbiDQRvbml6kYu1naHQg3UtRpLW8gcMvQMr3RyYXfNwGtR1bStb7Imi0Y3A6OG8UJLy9wbK1U0829sLneS1uAN1cHBaCNRyvcnR4tdtM2bXIuYgmj3c29tOjdX5ZRMzMzMvxcUTgLXUgsiw0HNDQ4NB9UuKzNYYW8tpQ91lY2tu3f8jjNHdSDUC3mMjFBZXvjyoHJNNWUf5UdZub0ZGouCDIS1pKCZGh2U1ZqNW0nc5mNCQUTk98tRUZ0ZlCf3vUckVFiv1YkTjk0aV5qGMlAyWGSpClAZRWjckGjhC0UE1Sh15C1aXFvW0Sc74UhuQnmbSpeUyY0NjMnKTlMzJ32mKGVTHg3ZyXglJ0tIblIyChNFwZkZEiYCBxQ0xi1rOtlNlJ5bxcjQajIgLXH3GKdAgeCADncqStLWRvXF9lUbmF0ZUyVGIS1sZXG8KysZlbD0PyM6hx

解密页面中字符得到挖矿木马配置:

-a cryptonight -o stratum+tcp://pool.supportxmr.com:3333 -u 44873Xameckc4wR21AdrM5fnoFHKZJSVj6cBADTgFTrEEN94jP2XfQZ74PMRiqoYHnBu2cCe32wLx7gKHnQpfFqCLb6Ryn2 -p x --donate-level= 

门罗币挖矿钱包:

44873Xameckc4wR21AdrM5fnoFHKZJSVj6cBADTgFTrEEN94jP2XfQZ74PMRiqoYHnBu2cCe32wLx7gKHnQpfFqCLb6Ryn2

钱包收益情况:

在门罗币矿池地址查询该钱包,发现累计已经赚得约16个门罗币,而门罗币数量还在以每天约1个门罗币的速度持续上涨,这表明还有许多中招机器的木马未被清除。目前门罗币价格每个924元,该帐号已获得门罗币价值约15000元。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×3 同源分析

0×3.1 多版本

从C2地址50.232.75.165获取的多个版本挖矿木马进行分析发现,木马作者从2018.5.13至2018.6.28持续对木马进行更新版本。在一共发现的4个版本代码对比来看,木马初始版本只有简单挖矿功能,而新版本中对C2地址进行加密、从云端获取挖矿配置、创建多个服务增加驻留几率,可以推测木马作者可能是在边学习边开发木马。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

木马历史版本代码结构:

版本1.0编译日期2018-5-13 22:37:18

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

版本2.0,编译日期2018-5-19 20:51:01

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

版本3.0编译日期2018-5-26 10:55:02

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

版本4.0  编译日期2018-6-8 23:20:33

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×3.2 自保护

利用cacls.exe将病毒目录设置为只允许system用户访问;利用attrib.exe将病毒目录设置为系统文件属性、只读、隐藏。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×3.3 加解密

木马1.0版本将C2地址使用base64加密后存放在

hxxp:// www.sufeinet.com/space-uid-97643.html

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

运行时获取该页面中字符并解密得到C2地址50.232.75.165

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

木马版本1.0-2.0挖矿配置文件为明文内置

-a cryptonight -o stratum+tcp://monerohash.com:5555 -u 44873Xameckc4wR21AdrM5fnoFHKZJSVj6cBADTgFTrEEN94jP2XfQZ74PMRiqoYHnBu2cCe32wLx7gKHnQpfFqCLb6Ryn2 -p x --donate-level=1 

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

而版本3.0-4.0需要先解密获得C2页面地址

hxxp:// www.sufeinet.com/space-uid-97643.html

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

然后解密C2页面中的挖矿配置信息

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×3.4 持久性

在版本4.0中,木马将自身拷贝到C:\\Windows\\Help\\csrss.exe

以及C:\\Windows\\system\\csrss.exe,然后将其设置为隐藏属性并分别创建为服务,通过创建木马副本的形式寻求获得在目标系统更长时间的驻留。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

0×4 总结

国内有不少培育“小黑”的各类论坛,一些学生或者对黑客技术感兴趣的人员在论坛注册帐号后,利用论坛里的资源学习相关黑客技术,会员之间也会相互交流心得或者分享实践成果。

有的“学员”抱着纯学习技术的心态在论坛里学习,也有一些人受到利益的驱使,使用学习到的“渗透”、“免杀”等技术进行非法攻击行为。

数字加密货币开始兴起之后,得益于该货币交易的匿名性,难以追踪性,大量黑客开始了以获取数字加密货币为目的的攻击行为。

在某些论坛上甚至可以看到公开发布的“矿马”或“矿马”生成器,他们使用各类黑客入侵技术如端口爆破、 SQL 注入、web漏洞利用等进入目标系统,然后植入挖矿木马进行挖矿获利。

此次捕捉到的挖矿木马先开发了一个很简单的版本,然后历时近一个月更新多个版本改进代码功能,其作者极有可能也是上述“学员”中的一员。

0×5 安全建议

1.可查看web目录下/WEB-INF/lib/目录下的struts-core.x.x.jar 文件,如果这个版本在Struts2.3.5 到 Struts2.3.31 ,以及Struts2.5 到 Struts2.5.10之间则存在漏洞。受影响用户可升级版本至Apache Struts 2.3.32 或 Apache Struts 2.5.10.1以消除漏洞影响。

2.使用腾讯御知网络空间风险雷达(网址: https://s.tencent.com/product/yuzhi/index.html )进行风险扫描和站点监控,及时修复Web服务器安全漏洞。

Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马

3.网站管理员可使用腾讯云网站管家智能防护平台(网址: https://s.tencent.com/product/wzgj/index.html ),其具备Web入侵防护,0Day漏洞补丁修复等多纬度防御策略,可全面保护网站系统。

0×6 IOCs

IP:

101.110.118.25
101.96.10.33
122.194.229.31
122.93.235.10
132.148.150.15
148.66.4.66
154.0.181.4
170.178.163.57
212.174.243.242
43.249.207.181
50.232.75.165
61.177.172.26

C2:

hxxp:// www.sufeinet.com/space-uid-97643.html

url:

hxxp://50.232.75.165/321.exe
hxxp://50.232.75.165/641.exe
hxxp://50.232.75.165/a3.exe
hxxp://50.232.75.165/a6.exe
hxxp://50.232.75.165/c3.exe
hxxp://50.232.75.165/c6.exe
hxxp://50.232.75.165/mysql.dll
hxxp://50.232.75.165/n3.exe
hxxp://50.232.75.165/n6.exe
hxxp://50.232.75.165/netxmr.exe
hxxp://50.232.75.165/netxmr2.exe
hxxp://50.232.75.165/netxmr3.exe
hxxp://50.232.75.165/netxmr4.exe
hxxp://50.232.75.165/o3.exe
hxxp://50.232.75.165/o6.exe
hxxp://50.232.75.165/p6.exe
hxxp://50.232.75.165/svchost.exe
hxxp://50.232.75.165/x3.exe
hxxp://50.232.75.165/x6.exe
hxxp://50.232.75.165:8080/invoker/readonly
hxxp://122.194.229.31:8010/server.exe
hxxp://122.194.229.31:8010/smss.exe
hxxp://154.0.181.4:8089/cacls.exe
hxxp://154.0.181.4:8089/net1.exe
hxxp://154.0.181.4:8089/O3.EXE
hxxp://154.0.181.4:8089/O6.EXE
hxxp://154.0.181.4:8089/netxmr4.exe
hxxp://154.0.181.4/o6.exe
hxxp://154.0.181.4:8089/net4.exe
hxxp://154.0.181.4:8089/x6.exe
hxxp://154.0.181.4/netxmr4.exe
hxxp://154.0.181.4/net4.exe
hxxp://154.0.181.4/o3.exe
hxxp://212.174.243.242:9090/admin/netxmr4.exe
hxxp://212.174.243.242:9090/admin//n6.exe
hxxp://212.174.243.242:9090/admin//c3.exe
hxxp://212.174.243.242:9090/admin//n3.exe
hxxp://212.174.243.242:9090/admin/o6.exe
hxxp://212.174.243.242:9090/admin//c6.exe
hxxp://212.174.243.242:9090/admin/o3.exe
hxxp://212.174.243.242:9090/admin//x6.exe
hxxp://212.174.243.242:9090/admin/n3.exe
hxxp://212.174.243.242:9090/admin/c3.exe
hxxp://212.174.243.242/admin/o3.exe
hxxp://212.174.243.242/admin/x6.exe
hxxp://212.174.243.242/admin/netxmr4.exe

md5:

9e00b347ae118d5d40b730b72962f72d
ae3e7304122469f2de3ecbd920a768d1
2eb962efcca0ac760bf4bc6db36a97db
beac6592dbd3a479a64789e43ec20f27
33e7bf91b27bdcb423a78459e10675c5
1fc976e1a1ab01d8454b8ba786faabb6
2774758444d3d4bb26b1f15f3f8ef5e4
541ad9d388d96deede351bfd887465ca
719262382839a8d0f16c96d7ba2bbdb2
700404b69ef9f4256d748bef5303b75c
be50ec6fc63e468a344f3131d6e8bb48
c38ec6ee136fc8a12af8609565deeb69
8e5d0b0ae5854bd688587ee12b17f388
29413875237ac38bbb8e3ac217054e5e
3707c876acf78c504bd0e454e5ef5176
fc5d87aec3caf79cbbb46fd44367fd9f
ff05ed529bbfc67b166f0d8acf5b465f
fd72a9ee568f129b096627af7457f56f
ffa94bf273bd0d3b521acc71989e9fbd

*本文作者:腾讯电脑管家,转载请注明来自FreeBuf.COM


以上所述就是小编给大家介绍的《Apache Struts2高危漏洞致企业服务器被入侵安装KoiMiner挖矿木马》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

创新者的解答

创新者的解答

【美】克莱顿•克里斯坦森、【加】迈克尔·雷纳 / 中信出版社 / 2013-10-10 / 49.00

《创新者的解答》讲述为了追求创新成长机会,美国电信巨子AT&T在短短10年间,总共耗费了500亿美元。企业为了保持成功记录,会面对成长的压力以达成持续获利的目标。但是如果追求成长的方向出现偏误,后果往往比没有成长更糟。因此,如何创新,并选对正确方向,是每个企业最大的难题。 因此,如何创新,并导向何种方向,便在于创新结果的可预测性─而此可预测性则来自于正确的理论依据。在《创新者的解答》中,两位......一起来看看 《创新者的解答》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码