黑客利用微軟 Azure Functions 漏洞提升權限逃避 Docker 容器
網絡安全研究員Intezer Lab的Paul Litvak透露了Microsoft Azure Functions中未修補的漏洞,攻擊者可能利用此漏洞來提升權限并逃避托管它們的Docker容器。
專家和他的同事正在研究Azure計算基礎結構。
“我們在Azure Functions中發現了一個新漏洞,攻擊者可以利用該漏洞升級特權并將Azure Functions Docker容器轉交給Docker主機。” 閱讀Intezer實驗室發布的帖子。
“經過內部評估,Microsoft已經確定該漏洞對Function用戶沒有安全影響,因為Docker主機本身受到Hyper-V邊界的保護。“*
Azure Functions是一種事件驅動的按需計算體驗,它擴展了現有的Azure應用程序平臺,并具有實現由Azure或第三方服務以及本地系統中發生的事件觸發的代碼的功能。
Azure Functions可以由HTTP請求觸發,并且僅運行幾分鐘即可及時處理該事件。用戶的代碼在Azure托管的容器上運行,無需用戶管理自己的基礎結構即可提供服務。專家發現,代碼沒有安全地分段,可能會被濫用以逃逸訪問底層環境。
專家創建了一個HTTP觸發器來獲得對Function容器的立足點,然后他們編寫了一個反向Shell,以便在執行Function后可以連接到服務器,以操作交互式Shell。
研究人員注意到,他們在具有“ SandboxHost ”主機名的端點中以無特權的“ app ”用戶身份運行,因此他們使用容器查找屬于具有“ root ”特權的進程的套接字。
研究人員發現了三個具有開放端口的特權進程,一個沒有已知漏洞的NGINX以及MSI和Mesh進程。
Intezer在“ Mesh ”過程中發現了一個漏洞,可以利用該漏洞升級到容器中的根目錄。
在攻擊的最后階段,專家擴展了分配給容器的特權,以逃避Docker容器并在主機上運行任意命令。
專家發布了PoC漏洞利用代碼,用squashfs設置反向外殼,以升級Azure Function中的特權,并逃脫Docker環境。