当前位置: 首页 > 面试题库 >

使用Maven有多安全?

华修永
2023-03-14
问题内容

有人设置伪装的Maven存储库和/或IP流以提供伪装的原始但被注入恶意或有害代码的库副本的风险和可能性或场景是什么?

采取哪些步骤和措施来预防此类风险和可能性?


问题答案:

我想一个专门的,机智的攻击者可以执行一次MITM攻击,并拦截对公共Maven存储库的所有请求,然后将恶意字节码小心地注入JAR工件中,然后重新计算并提供SHA1哈希值。

对于客户端来说,它看起来像是合法的工件:二进制JAR和SHA1匹配,即使它们检查备用镜像也相同。

我想唯一真正的解决方案是请求中央存储库支持HTTPS(并相信TLS本身并未被破坏)。

或者,一种可行的方法可能是设置通过HTTPS为内部客户端提供服务的Maven代理(Artifactory或Nexus)。这减少了攻击面,这意味着您只需要保护从该服务器到外界的通信线路即可。我将使用完全独立的可信网络,定期检查代理上的JAR和哈希是否与公共镜像上的JAR和哈希匹配。

如果您确实确实希望安全,那么您就不会信任二进制文件,而是要下载 所有 源代码并在自己进行编译之前 手动 检查它们
但是前提是您拥有足够的合格资源和时间来执行二进制文件。首先要审查 信任您的整个构建工具链。

好吧,正如他们通常所说的那样,安全性是分层的。



 类似资料:
  • 本文向大家介绍Maven安装及MyEclipse中使用Maven,包括了Maven安装及MyEclipse中使用Maven的使用技巧和注意事项,需要的朋友参考一下 本文主要为大家分享了MyEclipse中安装使用Maven的方法,供大家参考,具体内容如下 Step1:下载mavenhttp://maven.apache.org/download.cgi,下载好后解压到一个路径中 Step2:配置环

  • 问题内容: 我目前正在使用MySql来存储我的会话。效果很好,但是有点慢。 我曾经被要求使用Redis,但是我想知道这是否是一个好主意,因为我听说Redis会延迟写入操作。我有点害怕,因为会话需要是实时的。 有没有人遇到过这样的问题? 问题答案: Redis非常适合存储会话。所有操作都在内存中执行,因此读和写将很快。 第二个方面是会话状态的持久性。Redis使您可以灵活地将会话状态持久化到硬盘。您

  • 我有3个maven项目。项目1,项目2 为此,我在项目2 pom.xml文件中添加了这个 我的pom。Project3的xml是- 在项目3中,我添加了testng。xml文件来运行测试。现在如果我运行这个测试。xml文件,那么我所有的测试用例都成功运行了。如果我尝试使用maven测试运行测试用例,那么它会失败。 我已经在下面的pom文件中包含了testng.xml文件,以便使用maven运行te

  • 我一直在使用maven汇编插件创建uber jar并部署到ArtiFactory。我切换到maven shaded插件来遮蔽一些依赖项。现在我的jar在安装阶段没有部署。 对于文档中的maven程序集插件

  • 问题内容: 也许标题的措词不好,但想不出更好的说法。 目前,我正在开发一个登录系统(还没有进行正式的实验,只是进行实验),并且计划使用PHPLiveX(一个AJAX库)来实现某些功能。基本上,您创建一些PHP函数,然后通过JavaScript对其进行调用。您可以将参数(getElementById)添加到转移到PHP函数的JavaScript。 我真正想知道的是,从JavaScript调用该函数而

  • 我将转向maven多模块构建。 我的项目结构如下所示: 是一个Maven Eclipse项目,由M2E构建。 我添加了MyProject-Core/src/main/java作为Eclipse源文件夹,但由于我将父pom中的依赖项部分更改为dependencyManagement,因此我从Eclipse中得到了构建错误。手动调用mvn包仍然可以正常工作。 如何配置Eclipse以正确解决核心pom