返回

Kubernetes 新型容器逃逸漏洞预警,企业应高度重视!

见解分享

前言

Kubernetes 作为一种领先的容器编排平台,已广泛应用于企业和组织中。然而,随着容器技术的发展和应用的深入,安全问题也日益凸显。近日,Linux 内核中发现了一个严重的安全漏洞(CVE-2023-22805),可让攻击者从容器中逃逸并获取 root 权限。该漏洞影响 Kubernetes 集群,企业应高度重视并立即采取补救措施。

漏洞原理

该漏洞存在于 Linux 内核文件系统上下文功能中。当攻击者在容器中创建特殊文件系统(例如 fuse 或 overlay)时,可以利用该漏洞从容器中逃逸,访问主机系统上的文件和资源。攻击者可以通过创建包含恶意代码的特殊文件,并在主机系统上执行该代码来获取 root 权限。

影响范围

该漏洞影响运行 Linux 内核 5.1-rc1+ 版本的系统。Kubernetes 集群中使用的节点和控制平面组件均受此漏洞影响。攻击者可以利用此漏洞在 Kubernetes 集群中获取 root 权限,进而控制集群,进行任意恶意活动,例如窃取敏感数据、破坏应用程序或发动勒索软件攻击。

补救措施

为了修复该漏洞,用户需要将 Linux 内核更新到最新版本。受影响的内核版本包括:

  • 5.15.74
  • 5.10.124
  • 5.4.218
  • 4.19.267
  • 4.14.336

此外,Kubernetes 社区也发布了补丁来解决此漏洞。用户可以通过以下方式安装补丁:

  • 使用 kubectl 命令应用补丁:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/kubernetes/main/cluster/addons/rbac/kubelet-cm-patch.yaml
  • 手动修改 kubelet 配置文件:
vim /etc/kubernetes/manifests/kubelet.yaml

在文件中找到以下部分:

# Mount the pod's secrets and config maps
- hostPath:
    path: /var/run/secrets/kubernetes.io
    type: DirectoryOrCreate
  name: secret

并将 type: DirectoryOrCreate 替换为 type: Directory

最佳实践

除了应用补丁和更新内核之外,企业还可以采取以下最佳实践来增强 Kubernetes 集群的安全性:

  • 使用 RBAC(角色访问控制): RBAC 可以限制用户和服务对集群资源的访问权限。
  • 启用 Pod 安全策略: Pod 安全策略可以限制 Pod 的特权和能力,从而降低逃逸漏洞的风险。
  • 定期更新软件: 及时更新 Kubernetes 和 Linux 内核等软件可以修复已知漏洞,增强安全性。
  • 使用容器镜像扫描: 容器镜像扫描可以检测和阻止包含恶意代码的容器镜像。
  • 监控集群活动: 监控集群活动可以帮助检测和响应异常行为,例如容器逃逸 попытки.

结论

Kubernetes 新型容器逃逸漏洞是一个严重的威胁,企业应高度重视并立即采取补救措施。通过应用补丁、更新内核和实施最佳实践,企业可以增强 Kubernetes 集群的安全性,降低攻击风险。安全是一个持续的过程,需要持续监控、评估和采取预防措施来保护企业免受不断演变的威胁。