腾讯御见威胁情报中心监控发现,近期有大批企业网站的Web服务器遭到入侵并被植入挖矿木马。
安全人员分析发现被攻击网站服务器多存在Apache Struts 2 Jakarta Multipart Parser远程代码执行(RCE)漏洞(S2-045,CVE-2017-5638),该漏洞在2017年3月被报出,影响范围为Struts 2.3.5 – Struts 2.3.31,以及Struts 2.5 – Struts 2.5.10版本。黑客组织利用该漏洞批量攻击网站并植入了木马。
0×2 Shell代码分析
黑客组织在攻击时向目标网站同时注入了Linux和Windows版本shell代码。如果目标网站是Windows服务器,则Windows版shell代码最终执行成功;如果目标网站是Linux服务器,则Linux版shell代码最终执行成功。
1.Linux版本的shell代码
在请求中通过iptables stop命令关闭防火墙,以及chmod 777命令提高权限。
图1
然后通过wget、curl程序获取Linux挖矿程序,并通过命令crontab将其设定为持续执行。
图2
2. Windows版本的shell代码
首先创建用于下载挖矿木马的文件xxoo.vbe,并写入脚本代码。
图3
在目标服务器生成脚本xxoo.vbe
图4
然后利用cscript xxoo.vbe下载挖矿木马EXE
图5
0×3 木马分析
1. Linux挖矿木马
Linux木马脚本存放地址为hxxp://181.214.87.241/java/oracle.jpg,脚本会关闭已有挖矿进程,然后获取矿池配置文件,下载启动Linux挖矿程序。
图6
从脚本使用的矿池配置文件hxxp://181.214.87.241/java/vlqd.cf
图7
其中矿池地址为:78.46.91.134:80
挖矿帐号为:487ityZsfqR3vq5RUaHVCVY7G7nNEdvvkDgSy12aJgkG9fJooA1W8ZGLMMqJYiCm35iTFTm6vwfAt7rupBSKmb3YGdGiR4C
访问矿池IP可以看到门罗币矿池pool.minexmr.com
图8
在该矿池的界面,查询到挖矿账户的信息:
图9
下载的Linux挖矿程序(ELF文件)hxxp://181.214.87.241/java/vlqd
图10
挖矿代码特征
图11
2. Windows挖矿木马
挖矿程序9875.exe运行后释放进程守护脚本AutoRunApp.VBS,每隔一段时间检测挖矿进程,如果进程不存在则重新启动;同时9875.exe释放并加载驱动xxxx.sys在驱动层保护挖矿行为。
图12
木马判断系统版本
图13
将自身添加到注册表启动项
图14
创建挖矿进程守护脚本
图15
图16
释放随机名驱动到Temp目录,对挖矿进程、文件进行保护
图17
获取机器信息
图18
连接C2地址:61.147.120.245
图19
门罗币挖矿代码
图20
0×4 溯源分析
查询木马连接C2的域名www.sgzca.win,从注册邮箱可以看到作者曾经使用过的QQ:284****811
图21
通过QQ可以查到域名注册者在某黑客论坛的记录
图22
图23
作者的论坛记录显示曾经发布过的矿马生成器、弱口令以及各类黑客工具
图24
其他人下载工具时作者也能获得收入
图25
作者发布的一款矿马生成器,支持任务管理器状态检测和K进程
图26
图27
作者累计发布11万多个IP的3306口令
图28
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服务器安全漏洞。
3.网站管理员可使用腾讯云网站管家智能防护平台(网址:https://s.tencent.com/product/wzgj/index.html),其具备Web入侵防护,0Day漏洞补丁修复等多纬度防御策略,可全面保护网站系统。
0×6 IOCs
C2:
www.bk1433.top
61.147.120.245
kk321.f3322.net
216.118.225.250
10.0.2.15
www.sgzca.win
xs516.f3322.net
123.207.162.18
md5:
35b4395ae17f5b4125de6ee07d6bdde6
96725ba1ca94113f5b4e082f8b37ce6f
ae96e22912145a7d4c5ada7911e4061f
46cfbf8b219a0c8845a212510576d2f8
1ed6c5dfa3dbb26fc758b16dc5aac9d7
5aa908705f019df2b70029c76150314b
49c1980e48ad9a425126abd11400d4c4
f0744ef4ffbb474e1d438bd0cfd73eec
9bc3a69211711a5e417c2b3029f3bac5
49d2f2344ad8fc17427d44bf4693884d
97ff66fd9a73137db18bde42ef1fc85a
a53babe49f07d8826c7eda7675c5a73f
748d3d940525836eed70cbfc032facb3