漏洞描述
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:此版本未受影响。
解决方案
临时缓解方案
-
建议参考官方文档(https://activemq.apache.org/web-console)开启Web 控制台认证(默认8161端口),并修改默认口令。
-
如非必需,建议不要将ActiveMQ Web 控制台(默认8161端口)放置在公网上。
-
如果可能,限制对Jolokia接口(通常是/api/jolokia)的访问。只允许可信的网络或IP地址访问该接口。
-
如果Jolokia服务不是必需的,可以暂时关闭它,以避免漏洞被利用。
-
在网络边界处增加监控和过滤措施,以识别和阻断可能利用此漏洞的恶意流量。文章来源:https://www.toymoban.com/news/detail-759319.html
升级修复方案
Apache官方已发布安全更新,建议访问官网(https://activemq.apache.org/)升级至最新版本。文章来源地址https://www.toymoban.com/news/detail-759319.html
到了这里,关于Apache ActiveMQ jolokia 远程代码执行漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!