云安全公司Orca Security在谷歌云构建(Google Cloud Build)服务中发现了一个关键的设计漏洞,该漏洞会让攻击者的权限升级,使他们可以在未经授权的情况下访问谷歌构件注册表(Google Artifact Registry)代码库。
该漏洞被称为 "Bad.Build",可使威胁者冒充谷歌云构建管理的服务账户,针对构件注册表运行 API 调用,并控制应用程序映像。
这样,他们就可以注入恶意代码,从而在客户环境中部署恶意软件,导致潜在的供应链攻击。
Orca安全研究员Roi Nisimi表示:潜在的威胁可能是多种多样的,所有使用构件注册中心作为主要或次要镜像库的组织都应该警惕。
最直接的影响是破坏依赖于这些镜像的应用程序。这也可能导致 DOS、数据窃取和向用户传播恶意软件。正如我们在 SolarWinds 以及最近的 3CX 和 MOVEit 供应链攻击中所看到的那样,这可能会产生深远的影响。
Orca Security的攻击利用了cloudbuild.builds.create来升级权限,允许攻击者使用artifactregistry权限来篡改谷歌Kubernetes引擎(GKE)的docker镜像,并以root身份在docker容器内运行代码。
在 Orca Security 报告该问题后,谷歌安全团队实施了部分修复措施,撤销了默认云构建服务账户中与构件注册表无关的 logging.privateLogEntries.list 权限。
但是,这一措施并不能直接解决Artifact Registry中的底层漏洞,权限升级和供应链攻击风险依然存在。
因此,企业必须密切关注谷歌云构建服务账户的行为。应用 "最小特权原则"(Principle of Least Privilege)和实施云检测与响应功能来识别异常从而降低风险。
美国东部时间 7 月 18 日谷歌发表了如下声明:
我们创建了漏洞奖励计划,专门用于识别和修复类似的漏洞。我们非常感谢 Orca 和更多的安全社区参与这些计划。我们感谢研究人员所做的工作,并已根据他们的报告在 6 月初发布的安全公告中进行了修复。