歡迎光臨
每天分享高質量文章

RunC曝出容器逃逸漏洞,允許惡意人士對主機系統進行root訪問

 

日前,runC(一款廣泛用於生成及運行容器的CLI工具)當中曝出嚴重安全漏洞,其可能被用於破壞高權限runC容器內的runC主機二進制檔案,這意味著攻擊者將能夠立足底層主機系統獲取root訪問權限。
runC是一套位於Docker、CRI-O、containerd以及Kubernetes等基礎設施與引擎之下的底層容器運行時。

 

關於此項安全漏洞(CVE-2019-5736)

 

CVE-2019-5736漏洞由研究人員Adam Iwaniuk與Borys Poplawski向runC專案的維護者們上報,後者立即著手對問題展開修複。
runC團隊的Aleksa Sarai解釋稱,“此項安全漏洞允許惡意容器(在最低用戶交互等級下)改寫主機runC二進制檔案,這意味著攻擊者將藉此獲得在主機上以root層級執行代碼的權限。”
“具體來講,攻擊者能夠利用一套其可以控制的鏡像創建新的容器,或者是向其能夠訪問的現有容器之內添加docker exec檔案。在這類情況下的任意容器當中,該攻擊者都將能夠通過當前用戶交互等級以root權限運行任意命令(無論命令本身是否由攻擊者所控制)。”
他同時發現,類似的安全漏洞也存在於LXC以及Apache Mesos專案當中。他解釋稱,“除了少數事先已經採取相應緩解措施的運行時專案”,這個問題有可能會影響到當前市面上的大多數其它容器運行時方案。
目前面向runC以及LXC的修複補丁都已經正式發佈。
紅帽公司警告稱,用戶需要更新“docker”與“runc”軟體包(您可以點擊此處[1]瞭解更多與此項漏洞相關的安全影響)。另外,Debian與Ubuntu也在著手發佈修複補丁。
Docker v18.09.2 版本已經順利修複了這一漏洞。(您可點擊此處[2]獲取適用於同Docker打包發佈的舊版runC的補丁。)
AWS方面已經針對旗下各款產品(包括Amazon Linux、Amazon ECS、Amazon EKS以及AWS Fargate等)的用戶群體發佈了關於如何修複及緩解此項漏洞的說明與建議。Google Cloud也發佈了同樣的指導性信息。

 

此項安全漏洞的影響

 

runC團隊為這項安全漏洞給出了CVSSv3 7.2的評分,但其具體嚴重程度將根據集成、配置以及當前緩解情況而有所區別。
Twistlock公司CTO John Morello表示,此次安全漏洞可以說是多年以來容器領域曝出的最為嚴重的問題。
他在接受採訪時指出,“如果組織運行那些從不受信任的來源處獲取到的鏡像,那麼其主機很有可能被攻擊者所全面接收,這意味著此項安全漏洞無疑是一種相對易被利用的真正威脅。考慮到相對簡單的攻擊實現方式以及相關利用代碼在未來一周之內就有可能出現,我們也許馬上就會看到與之相關的實際攻擊活動。”
“在完成修複之前,容器環境下的大多數預設配置都易受此類攻擊的影響。當然,一部分關鍵性緩解措施——例如堅決不運行不可靠的鏡像——將能夠顯著降低此漏洞遭到利用的可能性。”
紅帽公司容器子系統團隊首席產品經理Scott McCarty則指出,這並不是容器運行時環境中曝出的第一個重大缺陷,也絕對不可能是最後一個。
他總結稱,“正如去年掀起軒然大波的Spectre/Meltdown漏洞代表著安全研究工作開始從軟體架構轉向處理器架構一樣,我們預計在此次事件之後,像runC這樣的底層容器運行時以及Docker等容器引擎未來也將受到研究人員以及潛在惡意攻擊者們的高度重視。”
紅帽公司產品安全保障專案經理Chris Robinson評論稱,“隨著整個行業以及我們的客戶逐步轉向超密集型架構,逃逸與權限升級問題將帶來遠高於傳統裸機系統中類似問題的廣泛影響。具體來講,容器化背景下的安全隱患將帶來更為廣泛的威脅範圍,而不再像過去那樣僅僅局限於單一系統。”
“值得慶幸的是,對於紅帽客戶而言,紅帽企業Linux為我們的雲平臺及容器產品提供了更為安全的基礎。預設啟用的SELinux策略能夠幫助我們的用戶緩解此類問題,同時確保他們能夠根據實際業務需求規劃時間以部署軟體更新工作。”
內容更新(2019年2月13日凌晨2:20):
Sarai在開源安全郵件串列中宣佈,“已經有禁令範圍之外的人士發佈了面向CVE-2019-5736漏洞的概念驗證方案(儘管並沒有使用相同的攻擊載體,但仍具有高度相關性)。由於初始研究人員已經發佈了相關博文[3]以詳盡解釋這項漏洞,我決定儘早發佈漏洞利用代碼,從而最大限度幫助各相關方瞭解問題的產生原因。”
相關鏈接:
  1. https://www.redhat.com/en/blog/it-starts-linux-how-red-hat-helping-counter-linux-container-security-flaws

  2. https://github.com/rancher/runc-cve

  3. https://blog.dragonsector.pl/2019/02/cve-2019-5736-escape-from-docker-and.html

原文鏈接:https://www.helpnetsecurity.com/2019/02/12/runc-container-escape-flaw/

赞(0)

分享創造快樂