安全公司Intezer研究人員發(fā)現(xiàn)微軟的無服務器運算服務Azure Functions,存在一個特權(quán)提升漏洞,且程序代碼可從Azure Functions Docker容器逃脫(Escape)至Docker主機,但微軟提到,這個漏洞不影響用戶安全。
Azure Functions讓用戶不需要配置和管理基礎(chǔ)設(shè)施,就能簡單地開始執(zhí)行程序代碼,可由HTTP請求觸發(fā),并且一次最多只能執(zhí)行數(shù)分鐘處理該事件,用戶的程序代碼會在Azure托管的容器中執(zhí)行,無法逃脫受限的環(huán)境,但是這個Azure Functions的新漏洞,卻可讓程序代碼逃脫至Docker主機。
當程序代碼逃脫到了Docker,取得根訪問權(quán)限,就足以破壞Docker主機,并獲得更多的控制權(quán),除了逃脫可能受到監(jiān)控的容器,還能轉(zhuǎn)移到安全性經(jīng)常被忽略的Docker主機。微軟在收到漏洞報告后,認為這個漏洞并不影響Azure Functions用戶安全,因為即便可以逃脫,但Docker主機本身仍受Hyper-V邊界保護,微軟進一步限制了/etc和/sys的訪問。
即便這個漏洞沒有真正造成安全問題,但研究人員提到,這樣的案例一再發(fā)生,代表部分漏洞其實不受用戶控制,攻擊者可以攻擊第三方軟件,找到入侵的方法,因此用戶不僅需要減少可能攻擊面,還應采用零信任安全架構(gòu),當攻擊者在生產(chǎn)環(huán)境中執(zhí)行未經(jīng)授權(quán)的程序代碼,用戶應該采取保護措施,具備偵測并且終止惡意程序的能力。