Linux容器化工作负载中的Service Fabric权限提升漏洞解析

本文详细分析了CVE-2022-30137漏洞,该漏洞允许攻击者通过受损容器在Linux Service Fabric集群中进行权限提升,获得节点和集群控制权,并介绍了微软的修复措施和安全建议。

Service Fabric权限提升:从Linux容器化工作负载出发

在协调漏洞披露(CVD)框架下,云安全供应商Palo Alto Networks向微软报告了一个影响Service Fabric(SF)Linux集群的问题(CVE-2022-30137)。该漏洞使得攻击者能够通过访问受损容器,提升权限并控制资源所在的SF节点及整个集群。

尽管该漏洞存在于两个操作系统(OS)平台,但仅在Linux上可利用;Windows经过全面审查,未发现受此攻击影响。此权限提升问题的修复于2022年5月26日提供,并已应用于所有订阅自动更新的客户。

客户影响

未启用自动更新的客户应将其Linux集群升级至最新的SF版本。版本说明可在此处找到。Linux集群已启用自动更新的客户无需采取进一步行动。

此外,如果您运行的是SF Windows集群,则不受此问题影响。然而,我们始终建议保持更新至最新版本。

微软建议客户继续审查所有允许访问其主机集群的容器化工作负载(包括Linux和Windows)。默认情况下,SF集群是单租户环境,因此应用程序之间没有隔离。创建隔离是可能的,有关托管不受信任代码的更多指导可在Azure Service Fabric安全最佳实践页面上找到。

微软的缓解措施

一旦此问题报告给微软,我们采取了以下步骤进行调查和缓解:

  • 2022年5月24日:我们在SF运行时中修复了权限提升错误,并开始为启用自动更新的客户进行更新;具体来说,SF诊断收集代理(DCA)被修改为不再使用用户生成的文件写入容器的日志文件夹。
  • 2022年6月9日:我们更新了公共安全指南,包括有关托管不受信任代码或容器受损的影响的详细信息。
  • 2022年6月14日:为此问题发布了CVE-2022-30137,修复程序已部署给利用自动更新的客户。未启用自动更新的客户通过Azure Service Health收到门户通知。

技术细节

要成功利用此漏洞进行攻击,需要以下有序步骤:

  1. 步骤1:攻击者必须破坏由Linux SF集群所有者部署的容器化工作负载。
  2. 步骤2:容器内运行的恶意代码可以用符号链接替换DCA读取的索引文件。

通过额外的定时攻击,攻击者可以获得托管SF节点的机器的控制权。

根据设计,托管SF节点的机器上的root访问在SF集群中不被视为安全边界;节点上最高权限的角色在同一集群中的任何地方都具有同等权限。

Palo Alto Networks发布了一篇关于此问题的博客,可在此处查看。我们感谢有机会调查Palo Alto Networks报告的发现,并感谢他们在我们的漏洞赏金计划条款下进行安全研究。有关Microsoft漏洞赏金计划及其条款和条件的更多信息,可使用这些链接找到。

附加参考

  • 微软发布的CVE-2022-30137
  • Azure Service Fabric版本说明
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计