关键漏洞信息 漏洞描述 当解析依赖项时,Gradle 会按声明顺序搜索仓库。如果遇到连接错误,Gradle 会禁用该仓库并导致依赖项解析失败。这在可重复制性和安全性方面是必要的,以防止依赖项从其他仓库解析而没有警告。 在以前的版本中,Gradle 未能将某些异常作为致命错误处理,因此在遇到这些异常时,不会禁用仓库。如果构建遇到了这些异常之一,Gradle 会继续去下一个仓库,并可能从不同的仓库解析依赖项。 影响 如果在达到最大重试次数后,Gradle 仍继续尝试从下一个仓库解析依赖项,可能会导致服务被攻击者破坏,并利用另一个仓库提供恶意工件。 漏洞修复 Gradle 在 9.3.0 和 8.14.4 版本中引入了行为更改,以在遇到错误时停止搜索其他仓库。 修复方案 升级到 9.3.0 或 8.14.4 可以保护您免受上述漏洞的影响。 工作区绕过 如果你无法更新 Gradle 版本,配置 是确保构建仅解析预期依赖项的最佳方法。 引用 安全功能在失败仓库上快速失败似乎未实现 仓库禁用 有关未知主机的仓库的建议 相关漏洞类型 CWE-494 CWE-829