1. 程式人生 > >新近爆出的runC容器逃逸漏洞,用戶如何面對?

新近爆出的runC容器逃逸漏洞,用戶如何面對?

只讀 緩解 osc lob 漏洞 列表 k8s 0.11 doc

runC是一個根據OCI(Open Container Initiative)標準創建並運行容器的CLI工具,目前Docker引擎內部也是基於runc構建的。 2019年2月11日,研究人員通過oss-security郵件列表(https://www.openwall.com/lists/oss-security/2019/02/11/2 )披露了runc容器逃逸漏洞的詳情,根據OpenWall的規定EXP會在7天後也就是2019年2月18日公開。

此漏洞允許以root身份運行的容器以特權用戶身份在主機上執行任意代碼。實際上,這意味著容器可能會破壞Docker主機(覆蓋Runc CLI),而所需要的只是能夠使用root來運行容器。***者可以使用受感染的Docker鏡像或對未受感染的正在運行的容器運行exec命令。針對此問題的已知緩解措施包括:

  • 使用只讀主機文件系統運行

  • 運行用戶命名空間

  • 不在容器中運行root

  • 正確配置的AppArmor / SELinux策略(當前的默認策略不夠)

Rancher團隊第一時間響應

收到披露郵件後,RancherOS團隊立刻嘗試編寫了***腳本,在一個普通容器中運行一個非常簡單的腳本就完成了對主機的***,將主機上的runc替換成了其他程序。

漏洞披露後,Docker在第一時間發布了18.09.2,用戶可升級到此版本以修復該漏洞。Rancher Labs研發團隊同樣第一時間響應,發布了Rancher v2.1.6、v2.0.11和v1.6.26,這三個新版本Rancher支持Docker剛剛發布的18.09.2,Rancher用戶可以升級Docker版本以防止被該安全漏洞影響。

無法升級Docker版本怎麽辦

通常由於各種因素,很多用戶的生產環境並不容易升級太新的Docker版本。

為了幫助無法按照Docker官方建議升級至最新版Docker 18.09.2的用戶解決此次問題,Rancher Labs團隊更進一步,已經將修復程序反向移植到所有版本的Docker,為Docker 1.12.6、1.13.1、17.03.2、17.06.2、17.09.1、18.03.1和18.06.1提供補丁,修復這次漏洞!相關修補程序以及安裝說明,請參考:

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

RancherOS的更新:v1.5.1 和 v1.4.3


RancherOS作為一款容器化操作系統,其中很多組件依賴runc,我們也在第一時間更新了補丁並發布了v1.5.1和v1.4.3兩個版本。


RancherOS的核心部件system-docker和user-docker都依賴runc,所以v1.5.1和v1.4.3都對他們進行了更新。而針對user-docker,RancherOS可以切換各種版本的docker engine, 所以我們對以下docker engine都進行了反向移植:

v1.12.6/v1.13.1/v17.03.2/v17.06.2/v17.09.1/v17.12.1/v18.03.1/v18.06.1。

如果是默認安裝v1.5.1或v1.4.3,補丁程序已經是內置的,你無需任何操作就可以避免該漏洞。如果你希望使用早期的docker版本,那麽切換user-docker時,請使用上面提到的補丁修復版本:

技術分享圖片

同時v1.5.1版本也是支持docker 18.09.2,你可以切換到該版本,如果你考慮使用Docker官方的修復版本,只需簡單運行: ros engine switch docker-18.09.2。

我們推薦您使用最新的RancherOS v1.5.1版本,該除了修復CVE-2019-5736漏洞外還支持其他新特性以及一些Bug Fix。當然,因為仍然有很多用戶在使用1.4.x版本,所以我們也發布了v1.4.3, 它只修復了runc漏洞,沒有其他額外的更新。

AWS相關鏡像已經上傳到各個region中,可以直接搜索查找並使用,包括AWS中國區。其他主要鏡像列表參考:

https://github.com/rancher/os/blob/v1.5.x/README.md#release

更多新特性和Bug Fix請參考v1.5.1的Release Notes:

https://github.com/rancher/os/releases/tag/v1.5.1


文檔說明:

https://rancher.com/docs/os/v1.x/en/

RancherOS專註於Docker在Linux上的精簡體驗,它還是一個小眾的開源項目,歡迎您下載使用並給RancherOS團隊提供更多反饋。 同時,Github上的Star也是鼓勵我們繼續前行的精神動力喔~

初心不忘,為用戶的Docker & K8S之旅護航

Rancher Kubernetes平臺擁有著超過一億次下載量,我們深知安全問題對於用戶而言的重要性,更遑論那些通過Rancher平臺在生產環境中運行Docker及Kubernetes的數千萬用戶。

2018年年底Kubernetes被爆出的首個嚴重安全漏洞CVE-2018-1002105,就是由Rancher Labs聯合創始人及首席架構師Darren Shepherd發現的。

2019年1月Kubernetes被爆出儀表盤和外部IP代理安全漏洞時,Rancher Labs也是第一時間向用戶響應,確保所有Rancher 2.x和1.6.x的用戶都完全不被漏洞影響。

未來,Rancher也將一如既往陪伴與支持在用戶的K8S之路左右??

新近爆出的runC容器逃逸漏洞,用戶如何面對?