全部產品
Search
文件中心

Container Service for Kubernetes:漏洞CVE-2024-10220公告

更新時間:Nov 23, 2024

Kubernetes社區披露了安全性漏洞CVE-2024-10220。該漏洞允許擁有建立Pod許可權的攻擊者通過部署Pod並關聯gitRepo儲存卷,以執行超出容器邊界的任意命令。攻擊者利用目標Git倉庫中的鉤子檔案夾,逃逸到容器外完成命令執行攻擊。

該漏洞被評估為高危漏洞,在CVSS評分為8.1。關於該漏洞的更多資訊,請參見#128885

影響範圍

下列版本的kubelet組件均在漏洞影響範圍內:

  • v1.30.0~v1.30.2

  • v1.29.0~v1.29.6

  • ≤v1.28.11

社區在下列版本中修複了該問題:

  • v1.31.0

  • v1.30.3

  • v1.29.7

  • v1.28.12

漏洞排查

您可以通過以下命令,檢查叢集中是否存在該漏洞被利用的情況。

該命令會列舉所有掛載使用了gitRepo類型的儲存卷,並將倉庫複製到.git子目錄的Pod中。

kubectl get pods --all-namespaces -o json | jq '.items[] | select(.spec.volumes[].gitRepo.directory | endswith("/.git")) | {name: .metadata.name, namespace: .metadata.namespace}'

解決方案

  • 由於gitRepo儲存卷已被棄用,社區建議的解決方案是使用initContainers容器執行Git複製操作,然後將目錄掛載至Pod容器中,請參見社區樣本

  • 通過使用啟用安全性原則管理中的ACKBlockVolumeTypes策略,限制在叢集指定範圍內部署的Pod禁止使用的Volume掛載類型,使該類Pod禁止使用gitRepo儲存卷,從而限制攻擊者使用gitRepo儲存卷。

  • 請您及時關注涉及該漏洞修複的Container ServiceACK公告,及時升級叢集節點池。請參見升級節點池