MavenGate:破坏软件供应链

阅读量59751

发布时间 : 2024-01-24 15:59:46

如何使用域名破解 Android 应用程序?

Java和Android应用程序 中使用的许多流行库已被发现存在漏洞,使它们容易受到名为 MavenGate 的新软件供应链攻击方法的影响。这 是由移动应用安全公司 Oversecured 宣布的 。

Oversecured 的分析指出了项目因购买域名而受到损害的风险。由于大多数默认构建配置都容易受到攻击,因此可能很难甚至不可能确定是否发生了攻击。成功利用这些缺陷可能会允许攻击者拦截依赖项中的工件并将恶意代码注入到应用程序中。更糟糕的是,攻击者可以通过恶意插件破坏构建过程。

Oversecured 报告称,所有基于 Maven 的技术(包括Gradle)都容易受到攻击。该公司向 200 多家公司发送了报告,包括 Google、Facebook*、Signal 和 Amazon。

网络犯罪分子可以针对公共存储库,使用添加到已知存储库的废弃库进行供应链中毒攻击。这是通过购买由依赖项所有者控制的过期反向域并获得对 groupId(对象的开发人员 ID)的访问权限来实现的。如果 groupId 已在存储库中注册,则攻击者可以尝试通过联系存储库支持来获取对其的访问权限。

Oversecured 将其测试 Android 库上传到 Maven Central 和 JitPack 以测试攻击场景。通过将 Maven Central 和 JitPack 添加到 Gradle 构建脚本中的依赖项存储库列表中来发生攻击。声明顺序决定了 Gradle 在运行时如何检查依赖关系。

研究人员发现,黑客可以通过发布更新版本来攻击库的现有版本,或者通过发布低于合法版本的版本来攻击新版本。在分析的 33,938 个域中,发现 6,170 个域(18.18%)容易受到 MavenGate 的攻击,攻击者可以利用该漏洞拦截依赖项并注入其代码。

Maven Central 的所有者 Sonatype 表示, 所描述的攻击策略 “由于现有的自动化,是不可能的”。不过,作为安全措施,该公司已禁用与过期域名和 GitHub 项目相关的所有帐户。

Oversecured强调开发人员不仅要对直接依赖负责,还要对传递依赖负责。库创建者应对他们声明的依赖项负责,并为其依赖项发布公钥哈希值。

本文转载自:

如若转载,请注明出处:

安全客 - 有思想的安全新媒体

分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

内容需知
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全客 All Rights Reserved 京ICP备08010314号-66