Kubernetes首爆嚴重安全漏洞,請升級你的Kubernetes

Kubernetes最近爆出特權升級漏洞,這是Kubernetes的首個重大安全漏洞。爲了修補這個嚴重的漏洞,Kubernetes近日推出了幾個新版本。

谷歌高級工程師Jordan Liggitt在週一發佈的Kubernetes安全公告中稱,Kubernetes v1.10.11、v1.11.5,v1.12.3和v1.13.0-rc.1已經發布了修復版本,修復了特權升級漏洞CVE-2018-1002105(https://access.redhat.com/security/vulnerabilities/3716411)。

這個錯誤的嚴重程度被指定爲9.8(滿分10分),因爲它可以遠程執行,攻擊並不複雜,不需要用戶交互或特殊權限。

根據Liggitt的說法,惡意用戶可以通過Kubernetes API服務器連接到後端服務器,利用API服務器的TLS憑證進行身份驗證併發送任意請求。

API服務器是Kubernetes的主要管理實體,它與分佈式存儲控制器etcd和kublet發生交互,這些代理會監視容器集羣中的每個節點。

Rancher Labs的首席架構師兼聯合創始人Darren Shepherd發現了這個漏洞。

Red Hat OpenShift是一個面向企業的容器平臺,已經爲所有產品打上了補丁。

Red Hat OpenShift總經理Ashesh Badani在一篇博文中表示:“這是一個大問題。不法分子不僅可以竊取敏感數據或注入惡意代碼,還可以從企業防火牆內破壞應用程序和服務”。

該漏洞主要有兩個攻擊媒介。

  • 首先,默認情況下,擁有Pod exec/attach/portforward權限的個人可以成爲集羣管理員,從而​​獲得對Pod中任意容器及潛在信息的訪問權限。

  • 第二種方法可以讓一個未經身份驗證的用戶訪問API,創建未經批准的服務,這些服務可用於注入惡意代碼。

Red Hat產品安全保障經理Christopher Robinson在給The Register的一封電子郵件中解釋說,“任何未經身份驗證但有權限訪問Kubernetes環境的用戶都可以訪問用於代理聚合API服務器(不是kube-apiserver)的端點”。

“向API發送一個消息,造成升級失敗,但連接仍然活躍,這個時候可以重用任意標頭,獲得集羣管理員級別的訪問權限來訪問聚合API服務器。這可以被用於服務目錄,進而創建任意服務實例。”

這個漏洞之所以令人如此不安,是因爲未經授權的請求很難被檢測到。根據Liggitt的說法,它們不會出現在Kubernetes API服務器的審計日誌或服務器日誌中。惡意請求在kublet或聚合API服務器日誌中是可見的,但卻難以將它們與經過授權的請求區分開來。

現在的修復辦法只有一個,那就是升級Kubernetes,就現在。 Kubernetes v1.10.11,v1.11.5,v1.12.3和v1.13.0-rc.1已經發布了修補版本。

如果你仍在使用Kubernetes v1.0.x-1.9.x,請更新到修補版本。 如果由於某種原因無法升級,還是有補救措施,但破壞性很大:必須暫停使用聚合的API服務器,並從不應有kubelet API完全訪問權限的用戶中刪除pod exec / attach / portforward權限。Jordan Liggitt表示,這些補救措施可能具有破壞性。

所以唯一的解決方法是升級Kubernetes。

雖然現在還沒有人利用這個漏洞進行共計,但是濫用漏洞會在日誌中留下明顯的痕跡。 而且,既然有關Kubernetes特權升級漏洞的消息已經公開,那麼這個漏洞被濫用只是時間問題。

因此,在陷入困境之前,還是對Kubernetes系統進行升級吧。

參考鏈接:

https://www.theregister.co.uk/2018/12/03/container_code_clusterfact_theres_a_hole_in_kubernetes

https://www.zdnet.com/article/kubernetes-first-major-security-hole-discovered/#ftag=RSSbaffb68

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章