全部產品
Search
文件中心

Container Service for Kubernetes:修複kube-controller-manager SSRF漏洞CVE-2020-8555的公告

更新時間:Feb 28, 2024

阿里雲Container ServiceKubernetes版已修複kube-controller-manager組件中存在的SSRF漏洞CVE-2020-8555。通過認證鑒權的攻擊者可能通過服務端請求偽造擷取控制節點(Master Node)網路下未經認證鑒權保護介面返回的任意資訊。本文介紹該漏洞的影響、解決辦法及防範措施。

SSRF漏洞在CVSS的評分為3.0(CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N),威脅等級為中級。

影響範圍

攻擊前提:
  • kube-apiserver暴露了非認證本地連接埠。
  • 存在其他不受保護的服務被暴露於控制台節點(Master Node)網路下。
  • 惡意使用者在目的地組群有建立Pod許可權並有StorageClass的寫入權限。
下列版本均在此CVE影響範圍:
  • kube-controller-manager v1.16.0~v1.16.8
  • kube-controller-manager<v1.15.11

受影響的儲存類型有:GlusterFS、Quobyte、 StorageFS、ScaleIO。

解決辦法

經過了認證鑒權的攻擊者可以利用kube-controller-manager當前存在的SSRF漏洞,通過建立帶有指定儲存類型(GlusterFS、Quobyte、StorageFS、ScaleIO)的Pod或StorageClass完成對控制台節點(Master Node)網路下其他服務的GET或POST請求,從而對控制台節點網路下未經認證鑒權保護的服務進行網路探測或內網服務攻擊,例如通過開啟了非認證8080連接埠的apiserver擷取secret資訊。

ACK叢集預設不開啟8080非安全連接埠,同時所有子帳號需要經過相應的RBAC授權。預設狀態下所有子帳號(叢集建立者除外)沒有Pod和StorageClass的建立許可權。當前解決辦法先合入pr.k8s.io/89794提及的修複方法並提供相應的kube-controller-manager組件升級能力,以規避暴露在控制台節點網路下其他未保護服務的資訊泄露危險。

防範措施

說明 當前ACK已提供了包含漏洞修複的1.16.9-aliyun.1版本,請您儘快升級至最新的1.16.9-aliyun.1版本。
如果您由於業務原因暫時無法升級叢集,建議您採取以下安全防範措施:
  • 當前ACK叢集預設關閉apiserver 8080非認證連接埠,請不要手動開啟該連接埠。
  • 排查控制台節點網路下暴露的Service是否開啟了認證鑒權,對未保護的服務評估影響,關閉其中可能造成資訊泄露的服務。
  • 限制可疑使用者建立Pod和StorageClass的寫入權限。