您有一个计算机系统,用于开发和运行您的 Top Secret™ 项目,并且您不允许它直接访问互联网。
但是,您想使用 Maven,因为它提供了所有优势,因此您允许 Maven 访问您的 Intranet 存储库,然后它可以访问 Internet 存储库。
问题是——如果有人知道你的绝密项目,并且知道你在使用 Maven,他们是否可以利用它来尝试渗透你的系统并检索信息?
您有一个计算机系统,用于开发和运行您的 Top Secret™ 项目,并且您不允许它直接访问互联网。
但是,您想使用 Maven,因为它提供了所有优势,因此您允许 Maven 访问您的 Intranet 存储库,然后它可以访问 Internet 存储库。
问题是——如果有人知道你的绝密项目,并且知道你在使用 Maven,他们是否可以利用它来尝试渗透你的系统并检索信息?
这当然是过去。请参阅http://blog.ontoillogical.com/blog/2014/07/28/how-to-take-over-any-java-developer/
Maven Central 支持 HTTPS,截至 2014 年 7 月。
Maven Central 需要工件的 PGP 签名。有一个插件来验证签名:http ://www.simplify4u.org/pgpverify-maven-plugin/index.html
现在,badguy 可以编写恶意程序并使用 PGP 对其进行签名,并且它会得到验证,因此您需要检查 PGP 签名是否属于您信任的组织/开发人员。
除了公认的答案之外,您的 Intranet Maven 存储库可能会被您组织内有权访问您的 Intranet Maven 存储库的人毒害。我建议对您的 Intranet Maven 存储库应用严格的访问控制。根据我的经验,许多 Maven 存储库都有一个管理员用户,许多开发人员都知道该用户的密码。
通过毒化大多数 Maven 项目使用的 maven-compiler-plugin 也可能进行“交叉构建注入 (XBI) ”攻击。
Dilettante是利用旧版本的 Maven 仍然通过 HTTP 而不是 HTTPS 连接这一事实的代理。