有權訪問Kubernetes集群的攻擊者可以串聯Google Kubernetes Engine(GKE)中的兩個漏洞來提升權限并接管集群。Google于2023年12月14日通過GCP-2023-047解決了該問題;但是,我們敦促客戶確保他們已安裝該補丁。


Palo Alto Networks的Unit 42研究人員在Google Kubernetes Engine(GKE)中發現了一個漏洞鏈,該漏洞鏈可能允許攻擊者提升權限并獲得對整個集群的未經授權的訪問。


Unite 42報告強調了兩個關鍵 GKE 組件中潛在的安全漏洞:FluentBit(收集/轉發容器日志的GKE默認日志記錄代理)和Anthos Service Mesh(ASM)(GKE內用于服務間通信的可選插件)集群。


Unit 42研究人員首先將FluentBit漏洞與ASM的CNI DaemonSet權限結合起來,導致攻擊鏈升級到集群管理員權限。


供您參考,FluenBit是一種輕量級日志處理器和轉發器,自2023年3月以來一直是GKE中的默認日志記錄代理,部署為DaemonSet(控制器),而ASM是Google的Istio Service Mesh開源項目實現。


Kubernetes是一種廣泛使用的用于應用程序部署和管理的開源容器平臺,但由于錯誤配置和過多的特權,它很容易在客戶不知情的情況下出現安全漏洞。


正如技術博客文章中所述,研究人員發現,有權訪問Google Kubernetes Engine(GKE)的攻擊者可以串聯兩個漏洞來提升權限并接管Kubernetes集群。這可以幫助攻擊者獲得潛在的第二階段攻擊路徑,前提是他們已經在FluentBit容器中實現了遠程代碼執行或者可以突破另一個容器。


第二階段的云攻擊涉及攻擊者(已經對Kubernetes集群具有一定級別的訪問權限)通過利用錯誤配置或漏洞來管理傳播/升級權限。


攻擊者可以通過受損的容器或漏洞訪問GKE集群,利用FluentBit的默認配置來獲得升級的權限。如果啟用了ASM,攻擊者可以利用其默認的服務網格權限來訪問Kubernetes API服務器,從而授予他們對集群的完全控制權。


FluentBit容器可被利用,通過錯誤配置來獲得對Kubernetes集群的未經授權的訪問。容器掛載/var/lib/kubelet/pods卷,其中包含節點上運行的每個pod的預計服務帳戶令牌。這使得攻擊者可以冒充具有Kubernetes API服務器特權訪問權限的Pod并映射整個集群。攻擊者還可以更新與CRAC綁定的集群角色以擁有所有權限。


ASM的容器網絡接口(CNI)DaemonSet安裝后的過多權限也可能被利用,從而允許攻擊者使用這些權限創建新的pod。這使得攻擊者可以通過將權限升級到集群管理員來獲得對Kubernetes集群的完全控制。


Google于2023年12月14日通過GCP-2023-047解決了這兩個配置問題。Google安全團隊通過將卷安裝配置減少到僅必要的配置,修復了FluentBit對日志的訪問。Google了解Anthos Service Mesh中的高權限,并修復/減少了權限來解決該問題。


為了保持受到保護,您必須立即更新FluentBit、檢查ASM權限、最小化GKE集群組件的權限,并持續監控GKE環境中的可疑活動以解決已識別的漏洞。


Tigera是一家總部位于舊金山的網絡安全公司,專門為容器和Kubernetes提供保護服務,其安全工程經理Anthony Tam警告說,Kubernetes中網絡可見性不足可能會導致配置錯誤,暴露可能導致勒索軟件、數據泄露、 DoS攻擊的漏洞攻擊和未經授權的橫向移動,強調需要工作負載級別的可見性才能有效解決這些威脅。


“Kubernetes集群和工作負載中缺乏網絡可見性可能會導致配置錯誤,從而導致災難性后果,例如勒索軟件攻擊、敏感數據暴露、拒絕服務(DoS)攻擊和未經授權的橫向移動。擁有工作負載級別的可見性對于識別和減輕傳統的基于邊界的安全解決方案無法識別的錯誤配置和威脅至關重要。”