PyTorch 基础设施遭到破坏

PyTorch

PyTorch 徽标

最近的有关攻击的详细信息已发布 用于开发机器学习框架的基础设施受到影响 PyTorch。在透露的技术细节中,提到 攻击者设法提取访问密钥 它允许您将任意数据放入 GitHub 和 AWS 存储库中,替换存储库主分支中的代码,并通过依赖项添加后门。

这件事 构成重大风险,因为 PyTorch 版本的欺骗可用于攻击 Google、Meta、波音和洛克希德马丁等在其项目中使用 PyTorch 的大公司。

四个月前,Adnan Khan 和我利用了世界领先的机器学习平台之一 PyTorch 中的一个关键 CI/CD 漏洞。 PyTorch 被谷歌、Meta、波音和洛克希德马丁等巨头使用,是黑客和民族国家的主要目标。

幸运的是,我们在坏人之前利用了这个漏洞。

我们就是这样做的。

关于这次攻击,有人提到 这取决于在持续集成服务器上运行代码的能力 执行重建并运行作业来测试推送到存储库的新更改。该问题影响使用外部“自托管运行程序”驱动程序的项目 使用 GitHub 操作。与传统的 GitHub Actions 不同,自托管控制器不在 GitHub 基础设施上运行,而是在自己的服务器或开发人员维护的虚拟机上运行。

在服务器上运行构建任务允许您组织代码的发布,这些代码可以扫描公司的内部网络,搜索本地 FS 中的加密密钥和访问令牌,并使用参数分析环境变量以访问外部存储或云服务,这样,通过这些驱动程序,攻击者能够在自己的服务器上执行编译任务,这使他们能够扫描公司的内部网络以搜索加密密钥和访问令牌。

在 PyTorch 和其他使用 Self-Hosted Runner 的项目中,开发人员可以运行构建作业n 仅在您的更改经过审核后。然而,攻击者通过首先发送一个较小的更改来设法绕过该系统 然后,一旦被接受, 自动获得“协作者”状态 它允许您在与存储库或监督组织关联的任何 GitHub Actions Runner 环境中运行代码。在攻击过程中,GitHub 访问密钥和 AWS 密钥被拦截,从而使攻击者能够破坏基础设施。

事实证明,指向“贡献者”状态的链接很容易绕过:首先提交一个微小的更改并等待它被接受到代码库中就足够了,之后开发人员会自动收到活跃参与者的状态。其拉取请求可以在 CI 基础设施中进行测试,无需单独验证。为了获得活跃的开发人员身份,该实验包括一些细微的外观更改以修复文档中的拼写错误。为了获得对 PyTorch 版本的存储库和存储的访问权限,在“自托管运行器”中执行代码时的攻击期间,用于从构建过程访问存储库的 GitHub 令牌被拦截(GITHUB_TOKEN 也允许写入访问)作为保存构建结果所涉及的 AWS 键。

因此,提到 这个问题并不是 PyTorch 特有的,也会影响其他大型项目 它使用 GitHub Actions 中“自托管运行器”的默认配置。

此外,还提到了加密货币、区块链、微软 Deepspeed、TensorFlow 等项目遭受类似攻击的可能性,并可能造成严重后果。研究人员已向漏洞赏金计划提交了 20 多份申请,寻求价值数十万美元的奖励。

最后,如果你是 有兴趣了解更多,您可以在中查看详细信息 以下链接。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。