Kubernetes CLI 工具安全漏洞可使攻擊者在主機運行代碼

Kubernetes 項目最近修補了一個危險的安全漏洞,這個漏洞允許狡猾的攻擊者在主機上運行代碼。該漏洞不會影響 Kubernetes 系統本身,而是會影響到 kubectl( Kube 控件),該控件是用於 Kubernetes 安裝的官方命令行實用程序。安全研究人員在 kubectlcp(複製)操作中發現了一個安全漏洞,該操作用於將文件從容器傳輸到用戶主機。

StackRox 聯合創始人兼產品副總裁 Wei Lien Dang 認爲該漏洞非常危險。Kubernetes 產品安全委員會委員 Joel Smith 表示此漏洞的詳細信息與 CVE-2019-1002101 非常相似。建議安裝 Kubernetes 的公司和開發人員將 kubectl 和 Kubernetes 升級到1.12.9,1.13.6 或 1.14.2 或更高版本。

黑客可通過“複製”操作執行代碼

Kubernetes 產品安全委員會委員 Joel Smith 說:“爲了從容器中複製文件,Kubernetes 會在容器內運行 tar 以創建一個 tar 存檔,再通過網絡複製它,kubectl 最後會將其解壓到用戶的機器上。”

他說:“如果容器中的 tar 二進制文件是惡意的,那麼它可以運行任何代碼並輸出惡意結果。當調用 kubectlcp 時,攻擊者可以使用該 tar 將文件寫入用戶計算機上的任何路徑,而僅受本地用戶系統權限的限制。“但利用這個漏洞並不簡單,因爲攻擊者需要首先將惡意文件放在 Kubernetes 容器中,然後等待 Kubernetes 管理員將這些文件傳輸到系統中。惡意文件會自動執行。然而,這種攻擊還需要運氣和一點社交手段才能成功。

主機侵入可能導致系統徹底被攻破

儘管如此,StackRox 聯合創始人兼產品副總裁 Wei Lien Dang 認爲該漏洞非常危險。Wei 在一封電子郵件中告訴外媒 ZDNet,“此漏洞令人擔憂,因爲它允許攻擊者覆蓋敏感文件路徑或添加惡意程序文件,然後利用這些文件破壞 Kubernetes 環境的重要組成部分” 。

“這種類型的漏洞顯示了客戶端漏洞如何潛在地被用來破壞生產環境,特別是鑑於我們觀察到人們並不總是遵循降低這種威脅的最佳實踐……例如,用戶可能正在生產節點上運行 kubectl,或者沒有適當地基於角色的訪問控制來限制對整個集羣的訪問權,或者用戶使用了提升後的本地系統權限,”Wei 補充道。 “此外,該漏洞修復程序需要被升級到最新版的 kubectl 中,但這可能更難執行,因爲它需要個人用戶自己去升級。”

該漏洞目前已經打了兩次補丁

該漏洞編號爲 CVE-2019-11246,由 Atredis Partners 公司的 Charles Holmes 發現,是雲原生計算基金會贊助的安全審計的一部分。“這個漏洞是之前披露的漏洞 (CVE-2019-1002101) 不完整修復之後留下的問題,”Wei說,漏洞首次修復於今年3月。

“此漏洞的詳細信息與 CVE-2019-1002101 非常相似。該問題的原始修復程序不完整,並且我們還發現了一種新的利用漏洞的方法,”Smith說。

我們建議自行安裝 Kubernetes 的公司和開發人員將 kubectl 和 Kubernetes 升級到1.12.9,1.13.6 或 1.14.2 或更高版本。

谷歌雲 K8S 同樣脆弱

在安全報告中,Google Cloud 管理員表示,“所有 Google Kubernetes Engine (GKE) gcloud 版本都受到此漏洞的影響,因此我們建議您在 gcloud 補丁版本可用時升級到最新版本。”

目前,這個補丁還沒有出來。“即將推出的補丁版本將包括此漏洞風險的緩解措施,”谷歌表示。谷歌建議 Google Cloud 客戶留意該工具的更新日誌,以下載與 kubectl 相關的安全修復程序。

作者介紹:
Catalin Cimpanu,ZDNet的一名安全記者,報道主題包括:網絡安全、數據違規、非法侵入等。此前,他曾擔任 Bleeping Computer 和 Softpedia 的安全記者。現居住於羅馬尼亞。

原文鏈接
Kubernetes CLI tool security flaw lets attackers run code on host machine

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