黑客利用微软 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环境。
