【问题标题】:ActiveMQ version 5.16.0 has vulnerable dependency jarActiveMQ 5.16.0 版本存在易受攻击的依赖 jar
【发布时间】:2021-01-08 02:35:17
【问题描述】:

我正在使用从Apache 下载的 ActiveMQ 5.16.0。我看到一些 jar 是有漏洞的旧版本,例如:

  1. com.google.guava_guava 19.0
  2. core_jackson-databind 2.9.10.4
  3. shiro-core 1.5.3
  4. log4j-1.2.17

我看到以上所有易受攻击的罐子都位于apache-activemq-5.16.0\lib\optional\ 下。 optional 目录下的 jar 有什么用?是否有任何最新版本的 ActiveMQ 具有所有最新依赖项?

【问题讨论】:

    标签: java activemq


    【解决方案1】:

    可选的依赖就是:可选的。

    在您的案例中使用 Shiro 作为参考。

    可选依赖项:通常,您引用的库的核心功能不需要可选依赖项。在这种情况下,仅当您打算使用 Apache Shiro 特性或功能时才需要 Shiro。 Shiro 用于安全性,因此它不会被所有使用 ActiveMQ 的人使用。

    版本:很多时候(并非总是)可选的依赖版本不是一成不变的,可以在不破坏功能的情况下使用较新的版本。情况并非总是如此,因此如果您打算这样做,请从首选版本开始,并仅在功能正在测试后才升级。

    漏洞:仅仅因为存在漏洞,并不能使其适用于您的用例。仅仅因为依赖项中有一个已知漏洞可以执行 XYZ,如果您的用例不使用 XYZ,它可能不会影响您。诸如Apache Shiro 之类的安全报告有助于理解这一点。

    另外:我建议您在 Java 项目中使用 Maven 或 Gradle。这将消除一些需要担心这些类型的依赖管理问题,因为可选的依赖默认不包含在依赖层次结构中。

    【讨论】:

      猜你喜欢
      • 2022-01-16
      • 1970-01-01
      • 2016-04-04
      • 2022-06-16
      • 2021-09-27
      • 1970-01-01
      • 2021-12-25
      • 2018-06-24
      • 1970-01-01
      相关资源
      最近更新 更多