0


Apache ActiveMQ jolokia 远程代码执行漏洞

漏洞描述

Apache ActiveMQ是一个开源的消息代理和集成模式服务应用,用于实现消息中间件,帮助不同的应用程序或系统之间进行通信。

2023年11月,Apache官方发布新版本修复了ActiveMQ中的一个远程代码执行漏洞(CVE-2022-41678),通过认证的攻击者能够利用该漏洞获取服务器权限。

漏洞成因

该漏洞存在于Jolokia服务的请求处理方式中,结合ActiveMQ的配置不当和Java的高级功能,允许已认证的用户通过发送特定格式的HTTP请求来执行危险操作。ActiveMQ的内部配置允许org.jolokia.http.AgentServlet处理来自/api/jolokia的请求,而没有足够的安全检查来防止恶意操作。

利用特征

攻击者发送到ActiveMQ服务器的HTTP请求包含特定的结构和模式。这些请求主要针对/api/jolokia接口,利用Jolokia的API进行交互。在利用漏洞之前,攻击者首先发送带有有效凭证的认证请求,以获取对Jolokia API的访问权限。

攻击过程中,会观察到一系列的JMX(Java Management Extensions)请求,目的是操纵Java Flight Recorder。这些请求包括newRecording、setConfiguration、startRecording、stopRecording和copyTo等操作。

在setConfiguration请求中,可能会包含异常或非标准的配置数据,这是后续写入Webshell的关键步骤。

最后,copyTo请求会触发对服务器文件系统的操作,导致Webshell被写入特定位置,如jsp文件中。

该利用方法通过Jolokia服务对Java Management Extensions (JMX) MBean的操作实现,主要是针对org.apache.logging.log4j2。攻击者发送的HTTP请求将包含调用setConfigText方法的特定指令,以修改日志配置。这可能在请求的包体中或参数中明显体现。

通过监控和分析面向ActiveMQ Web控制台(默认8161端口)的网络流量,特别是针对/api/jolokia接口的请求,可以帮助识别此类攻击。管理员应特别注意异常的认证尝试、不寻常的JMX请求序列,以及任何看似试图操纵服务器行为的请求模式。

漏洞影响

该漏洞允许攻击者在ActiveMQ服务器上执行任意代码,这可能导致数据泄露、服务中断以及服务器的控制权丢失甚至是勒索事件的发生。

由于ActiveMQ广泛用于企业级消息传递,该漏洞的潜在影响是较为严重的。攻击者可以利用漏洞获取敏感信息,或者进一步利用服务器资源进行恶意活动。确保ActiveMQ的安全配置和及时的软件更新是防止此类攻击的关键。

影响版本

Apache ActiveMQ 5.16.x系列:5.16.6之前的版本受影响。

Apache ActiveMQ 5.17.x系列:5.17.4之前的版本受影响。

Apache ActiveMQ 5.18.0:此版本未受影响。

Apache ActiveMQ 6.0.0:此版本未受影响。

解决方案

临时缓解方案

图片

  • 如非必需,建议不要将ActiveMQ Web 控制台(默认8161端口)放置在公网上。
  • 如果可能,限制对Jolokia接口(通常是/api/jolokia)的访问。只允许可信的网络或IP地址访问该接口。
  • 如果Jolokia服务不是必需的,可以暂时关闭它,以避免漏洞被利用。
  • 在网络边界处增加监控和过滤措施,以识别和阻断可能利用此漏洞的恶意流量。

升级修复方案

Apache官方已发布安全更新,建议访问官网(https://activemq.apache.org/)升级至最新版本。


本文转载自: https://blog.csdn.net/zhai_jia_hui/article/details/134698607
版权归原作者 时光不改 所有, 如有侵权,请联系我们删除。

“Apache ActiveMQ jolokia 远程代码执行漏洞”的评论:

还没有评论