🔴 严重 | CVE-2026-49445 — Cilium is a networking, observability, and securit...
🔴 【深度分析】严重安全漏洞:CVE-2026-49445
CVSS 评分: 严重(9.2)🔴 状态: Analyzed 发布时间: 2026-07-15
🔍 技术细节速览
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-49445 |
| CVSS 评分 | 9.2 🔴 |
| 严重程度 | 严重 |
| CVSS 向量 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:H |
| CWE 分类 | CWE-732 |
| 发布时间 | 2026-07-15 |
| 最后更新 | 2026-07-17 |
| 状态 | Analyzed |
| 数据来源 | security-advisories@github.com |
⚠️ CVSS 评分:9.2(严重)
向量:CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:H
影响范围:跨安全域(Scope Changed)
危害等级:Critical
漏洞概述
Cilium 是一个基于 eBPF 的云原生网络、可观测性与安全解决方案,广泛应用于 Kubernetes 集群中。当 Cilium 启用 L7(七层网络)功能(如 HTTP、gRPC、Kafka 等应用层协议策略控制)时,其内置或独立运行的 Envoy 代理实例会在集群节点上创建一个全局可访问的 admin.sock Unix 域套接字。
本地攻击者(例如通过容器逃逸或获得节点 shell)可利用该套接字直接访问 Envoy 的管理接口(admin endpoint),进行以下恶意操作:
- 读取 Envoy 内存中的 TLS 私钥证书(通过
/certs接口); - 动态调整 Envoy 配置(通过
POST /config_dump、/logging等接口),破坏或重定向集群流量; - 直接关闭或重启 Envoy 进程,造成服务中断。
该漏洞的根源在于 admin.sock 文件的权限控制缺失(CWE-732:对关键资源的不正确权限分配),导致任何本地用户均可与之交互。
受影响组件与版本
| 组件 | 受影响版本范围 | 修复版本 |
|---|---|---|
| Cilium (社区版) | < 1.17.14 | 1.17.14 |
| Cilium (社区版) | 1.18.0 - 1.18.7 | 1.18.8 |
| Cilium (社区版) | 1.19.0 - 1.19.1 | 1.19.2 |
注意:所有启用了 L7 网络功能(即配置了 HTTP、gRPC、Kafka 等应用层策略)的 Cilium 部署均受影响。仅使用 L3/L4 网络策略(无七层功能)的配置默认不受影响。
漏洞原理分析
技术背景
Cilium 的七层网络策略依赖 Envoy 作为代理。当 L7 策略被启用时,Cilium 会在每个集群节点上启动一个 Envoy 实例(可内嵌于 Cilium Agent 进程,或作为独立 sidecar 进程)。Envoy 默认会创建一个 Unix Domain Socket(admin.sock)用于接收管理命令。
漏洞成因
在受影响的版本中,admin.sock 被创建在 CILIUM_STATE_DIR/envoy/ 路径下(通常为 /var/run/cilium/envoy/admin.sock),但其文件权限设置为 0777(全球可读写),而非正确的仅允许 Cilium Agent 进程所有者(如 cilium 用户)访问。
具体而言:
- 权限缺失:Unix 域套接字的权限位未与 Cilium Agent 的运行用户绑定,导致节点上任何用户(包括低权限容器内进程)均可打开该套接字。
- 无认证机制:Envoy 的管理接口不要求任何身份验证令牌。攻击者仅需对该套接字发起 HTTP 请求,即可执行 admin 端点上的所有操作。
- 信息泄露:
/certs端点会返回 Envoy 加载的所有 TLS 证书及私钥,包括用于通信加密的集群内部证书。攻击者可一次性窃取全部凭据。
攻击向量
根据 CVSS 向量 AV:L/AC:L/PR:N/UI:N/S:C:
- 攻击向量 (AV:L):攻击者需要本地访问(即获得节点 shell 或容器内 exec 权限)。常见场景包括:容器逃逸、利用其他漏洞提升至节点级别、云环境中的元数据服务滥用。
- 攻击复杂度 (AC:L):攻击者无需绕过复杂环境。只要本地用户能够访问
/var/run/cilium/envoy/admin.sock,即可直接利用。默认 Docker 模式下的容器常以 root 运行,可轻易触及该 sock。 - 权限要求 (PR:N):不需要任何特殊权限,普通用户即可执行攻击。
- 用户交互 (UI:N):无需受害者操作。
- 作用域变化 (S:C):攻击者能突破 Envoy 进程所在的安全沙箱,影响到 Cilium 集群层面的全局安全策略,属于跨域影响。
典型利用步骤
# 假设攻击者已获得节点 shell 或容器内 root
cd /var/run/cilium/envoy
curl -s --unix-socket admin.sock http://localhost/certs
# 返回 JSON 包含所有 TLS 私钥
curl -s --unix-socket admin.sock http://localhost/logging?level=debug
# 修改日志级别,为后续攻击做准备
curl -s -X POST --unix-socket admin.sock http://localhost/quitquitquit
# 直接终止 Envoy 进程
影响评估
实际威胁等级:高(严重性 9.2)
| 影响面 | 严重程度 | 说明 |
|---|---|---|
| 机密性 | 高 (C:H) | 攻击者可获取所有 TLS 私钥,解密集群内所有加密流量,获取敏感业务数据。 |
| 完整性 | 低 (I:L) | 攻击者可修改 Envoy 的日志级别或部分配置,但完整配置变更需要更深入数据,因此完整性影响设为低。 |
| 可用性 | 高 (A:H) | 攻击者可轻松终止 Envoy 进程,使所有经过该节点的七层流量中断,造成服务不可用。 |
利用条件
- 必备:攻击者必须拥有集群节点上的本地用户权限(容器内 root 或节点 shell)。
- 触发:无需用户交互,无需特殊触发条件。
- 难度:低。
admin.sock权限未收窄,且 Envoy admin 接口无认证。
潜在后果链
- 攻击者通过低权限容器获得本地访问 → 访问
admin.sock - 获取 TLS 私钥 → 解密所有南北/东西向加密流量
- 获取的私钥可用于伪造身份 → 横向移动至其他服务
- 终止 Envoy 进程 → 造成七层流量中断,触发集群健康检查失败、Pod 重启、DNS 超时等连锁反应
- 攻击者可通过修改 Envoy 日志级别隐藏痕迹 → 进一步掩盖恶意行为
修复建议
立即修复(推荐)
- 升级 Cilium 至修复版本:
- 1.17.x → 1.17.14 或更高
- 1.18.x → 1.18.8 或更高
- 1.19.x → 1.19.2 或更高
临时缓解措施(无法立即升级时)
手动修改 socket 权限(重启后失效,需持久化):
chmod 0700 /var/run/cilium/envoy/admin.sock或更严格地限制为仅 Cilium Agent 用户可访问:
chown cilium:cilium /var/run/cilium/envoy/admin.sock chmod 0600 /var/run/cilium/envoy/admin.sock禁用 L7 功能:在
CiliumEnvoyConfig或 NetworkPolicy 中移除所有七层策略规则,回退至纯 L3/L4 模式。注意:此举将失去应用层策略控制能力。部署 hostPort/hostNetwork 限制:使用 Kubernetes PodSecurityPolicy 或 PSA 限制容器以
hostNetwork: true运行,减少对节点本地 socket 的访问暴露面。启用系统调用过滤(seccomp):限制容器内进程对
unix(7)socket 的访问,阻止其打开非本命名空间的域套接字。监控告警:在告警系统中配置对
admin.sock的异常访问检测(如非 Cilium Agent 进程调用connect()到该 socket)。
参考资料
| 类型 | 链接 |
|---|---|
| CVE 详情 | https://nvd.nist.gov/vuln/detail/CVE-2026-49445 |
| CWE-732 | https://cwe.mitre.org/data/definitions/732.html |
| Cilium 安全公告 (GitHub) | https://github.com/cilium/cilium/security/advisories/GHSA-xxxx-xxxxx (待官方披露) |
| Cilium 官方文档 - 升级指南 | https://docs.cilium.io/en/latest/operations/upgrade/ |
| Envoy Admin 接口文档 | https://www.envoyproxy.io/docs/envoy/latest/operations/admin |
| CVSS v3.1 规范 | https://www.first.org/cvss/v3-1/ |
分析师建议:Cilium 团队应审查所有 Unix Domain Socket 的创建过程,强制遵循最小权限原则(即仅允许进程所有者访问)。同时建议在 Envoy 的 Admin 接口中增加可选身份认证机制(如 mTLS 或 token),以避免类似漏洞反复出现。对于使用 Cilium 的集群,建议立即安排升级窗口,优先修复此严重影响集群安全与稳定性的漏洞。