当前位置: 首页 > news >正文

Apache ActiveMQ (版本 < 5.18.3) (CNVD-2023-69477)RCE修复方案/缓解方案

一、漏洞描述

Apache ActiveMQ 是美国阿帕奇(Apache)基金会的一套开源的消息中间件,它支持 Java 消息服务、集群、Spring Framework 等。

二、漏洞成因

ActiveMQ 默认开放了 61616 端口用于接收 OpenWire 协议消息,由于针对异常消息的处理存在反射调用逻辑,攻击者可能通过构造恶意的序列化消息数据加载恶意类,执行任意代码。

三、影响范围

影响版本:

Apache ActiveMQ<5.18.3
Apache ActiveMQ<5.17.6

安全版本:

Apache ActiveMQ>=5.18.3
Apache ActiveMQ>=5.17.6

四、修复方案

目前官方已通过限制反序列化类只能为Throwable的子类的方式来修复此漏洞。建议受影响用户可以更新到:

Apache ActiveMQ >= 5.18.3

Apache ActiveMQ >= 5.17.6

Apache ActiveMQ >= 5.16.7

Apache ActiveMQ >= 5.15.16

https://github.com/apache/activemq/tags


5.18.3与5.17.6要求JDK11+

五、缓解方案

5.1增加访问验证

ActiveMQ 默认开放了 61616 端口,我们可以通过修改配置文件,使访问61616端口时需要进行登录验证。

在conf/activemq.xml文件中的的内加上:

<plugins> 		<simpleAuthenticationPlugin>    				<users>    					<authenticationUser username="system" password="123456" groups="users,admins"/><authenticationUser username="user" password="123456"  groups="users"/>    <authenticationUser username="guest" password="123456" groups="guests"/>    </users>    			</simpleAuthenticationPlugin>    		
</plugins>

对应访问ActiveMQ的代码也需要进行修改
共有三种操作(常规,集成spring,集成springboot):

常规:

ConnectionFactory cf = new ActiveMQConnectionFactory("system","123456","tcp://192.168.126.128:61616");

集成Spring:

<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"><property name="brokerURL" value="tcp://192.168.126.128:61616"/><property name="userName" value="system"/><property name="password" value="123456"/></bean>

集成SpringBoot:

spring.activemq.broker-url=tcp://192.168.126.128:61616
spring.activemq.user=system
spring.activemq.password=123456

5.2配置防火墙

通过配置firewall或者iptables 只给指定ip开放61616端口

http://www.lryc.cn/news/214654.html

相关文章:

  • 61. 旋转链表、Leetcode的Python实现
  • 基于tpshop开发多商户源码支持手机端+商家+门店 +分销+淘宝数据导入+APP+可视化编辑
  • ElasticSearch深度解析入门篇:高效搜索解决方案的介绍与实战案例讲解,带你避坑
  • HTML简单实现v-if与v-for与v-model
  • 【学习笔记】[PA2021] Fiolki 2
  • 计算1到100的和
  • C++下OpenMP耗时统计
  • PTA 函数题(C语言)-- 阶乘计算升级版
  • 内网穿透入门
  • Pickle pyhton反序列化
  • 动静分离技术
  • STM32单片机智能小车一PWM方式实现小车调速和转向
  • 灰狼优化算法(GWO)python
  • 项目知识点总结-住房图片信息添加-Excel导出
  • 第三届iEnglish全国ETP大赛决赛即将启动
  • 创造产业链协同优势后,凌雄科技在DaaS行业转动成长飞轮
  • 【protobuf】protobuf自定义数据格式,CMake编译C++文件读写自定义数据
  • 解决:http://localhost:8080 不在以下 request 合法域名列表中
  • Linux普通用户提权(sudo)
  • 链表指定节点的插入
  • 解决问题Conda:CondaValueError: Malformed version string ‘~’ : invalid character(s)
  • Sci Immunol丨Tim-3 适配器蛋白 Bat3 是耐受性树突状细胞
  • 天软特色因子看板(2023.10 第14期)
  • Photoshop(PS)2021版 安装教程(图文教程超详细)
  • 详解React:Props构建可复用UI的基石
  • 【Unity】【VR开发疑难】Unity运行就报无法启动XR Plugin
  • 本地启动Elasticsearch(docker启动)
  • JVM修炼印记之初识
  • 开关电源老化试验和性能检测系统软件
  • 水库大坝可视化智能远程监管方案,助力安全监测智能巡检