Google 修复了可能导致远程代码执行的 GCP Composer 缺陷

2024-09-16 22:38:13 0 225

Google 修复了可能导致远程代码执行的 GCP Composer 缺陷



影响 Google Cloud Platform (GCP) Composer 的严重安全漏洞现已得到修补,攻击者可以利用该漏洞通过一种名为依赖混淆的供应链攻击技术在云服务器上实现远程代码执行。

Tenable Research将这个漏洞的代号定为CloudImposer 。

安全研究员 Liv Matan 在与 The Hacker News 分享的一份报告中表示:“该漏洞可能允许攻击者劫持 Google 在每个 Google Cloud Composer 管道编排工具上预安装的内部软件依赖项。”

依赖混淆 (又名替代攻击)于 2021 年 2 月首次由安全研究员 Alex Birsan 记录下来,指的是一种软件供应链泄露,其中包管理器被诱骗从公共存储库中提取恶意包,而不是从内部存储库中提取同名的预期文件。

因此,威胁行为者可以通过将假冒软件包发布到公共软件包存储库来发动大规模供应链攻击,该存储库的名称与公司内部开发的软件包相同,但版本号更高。

这反过来又导致包管理器在不知情的情况下从公共存储库而不是私有存储库下载恶意包,从而有效地用恶意包替换现有的包依赖项。

Tenable发现的问题与之类似,它可能被滥用将名为“google-cloud-datacatalog-lineage-producer-client”的恶意包上传到 Python 包索引 (PyPI) 存储库,然后可以将其预安装在具有提升权限的所有 Composer 实例上。

尽管 Cloud Composer 要求相关软件包是版本固定的(即版本 0.1.0),但 Tenable 发现在“pip install”命令期间使用“--extra-index-url”参数会优先从公共注册表中获取软件包,从而导致依赖性混淆。

有了此权限,攻击者可以执行代码,窃取服务帐户凭据,并在受害者的环境中横向移动到其他 GCP 服务。

在 2024 年 1 月 18 日负责任地披露后,Google 于 2024 年 5 月修复了该问题,确保仅从私有存储库安装该软件包。它还增加了额外的预防措施,即验证软件包的校验和,以确认其完整性并验证其未被篡改。

据称,Python 打包管理局 (PyPA) 至少从 2018 年 3 月就已经意识到“--extra-index-url”参数带来的风险,并敦促用户在需要提取内部包时不要使用 PyPI。

“软件包的名称和版本应该是唯一的,因此 pip 会将具有相同软件包名称和版本的两个 wheel 视为无法区分的,”一名 PyPA 成员当时指出。“这是软件包元数据的一个刻意功能,不太可能改变。”

作为修复的一部分,谷歌现在还建议开发人员使用“--index-url”参数而不是“–extra-index-url”参数,并且 GCP 客户在需要多个存储库时使用 Artifact Registry 虚拟存储库。

Matan 说:“‘--index-url’ 参数通过仅搜索注册表中定义为该参数的给定值的包来降低依赖混淆攻击的风险。”

关于作者

maojila95篇文章398篇回复

评论0次

要评论?请先  登录  或  注册