面對runc逃逸漏洞,華為雲容器為您保駕護航

CCE_huawei發表於2019-02-14

背景資訊


基於runc執行時的容器存在安全漏洞,攻擊者可以透過惡意容器映象等方式獲取宿主機root執行許可權。漏洞CVE-2019-5736

的詳細資訊,請參見



漏洞原理分析


本次漏洞典型的攻擊方式是透過惡意映象:在惡意映象中,將攻擊函式隱藏在惡意動態庫如(libseccomp.so.2)中,並使執

行命令指向/proc/self/exe。


當runc動態編譯時,會從容器映象中載入動態連結庫,導致載入惡意動態庫;當開啟/prco/self/exe即runc時,會執行惡意動

態連結庫中的惡意程式,由於惡意程式繼承runc開啟的檔案控制程式碼,可以透過該檔案控制程式碼替換host上的runc。


此後,再次執行runc相關的命令,則會產生逃逸。


影響範圍


本次漏洞對所有采用runc的容器引擎均生效,runc是Docker容器的核心元件,因此對絕大部分容器均會產生影響。其中主要

影響的是多使用者共享節點的場景,可導致某使用者透過滲透進而控制節點並攻擊整叢集。


華為雲CCE容器服務:

CCE容器服務建立的Kubernetes叢集屬於單租戶專屬,不存在跨租戶共享,影響範圍較小,對於多使用者場景需要關注。

當前CCE採用華為最佳化的iSula Docker容器,其中RUNC採用靜態編譯,目前公開披露的攻擊方法無法成功入侵。為確保容器

服務安全穩定執行,CCE容器服務將會在近日對在執行Docker容器進行熱升級。


華為雲CCI容器例項服務:

CCI引擎採用華為iSula Kata容器引擎,提供單節點上多容器高安全的hypervisor級別的隔離能力,並沒有採用runc容器,因

此本次漏洞將不會對CCI產生影響。


修復方法


華為雲CCE容器服務:


近日CCE容器服務會對執行的Docker進行無損熱升級,包含正在執行的1.11.2, 17.06等歷史版本均會提供對應補丁版本,無

需更新到18.09版本,已執行容器將不受影響,請各位關注升級公告。


自建kubernetes或使用開源容器引擎:


· 升級Docker到18.09.2版本, 由於開源Docker在17.06之後的版本做了較大變更,涉及架構解耦重構,該辦法可能會導致使用者

容器業務中斷,建議做好充分驗證,並按節點逐步滾動升級。


· 僅升級runc,對於17.06等Docker版本,可以不中斷已執行業務,當前runc官方尚未釋出包含漏洞修復補丁的新版本,如果

要單獨升級runc,使用者可自行編譯。


· 另特別提醒,本次Docker官方補丁使用了高版本Linux核心的系統呼叫,在低版本核心部分版本上可能會失效,若補丁失效

時,建議升級至3.17以上核心。華為雲CCE容器服務提供的補丁針對官方補丁進行了最佳化適配,已驗證在多版本核心上均可

生效。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69908804/viewspace-2633738/,如需轉載,請註明出處,否則將追究法律責任。

相關文章