【问题标题】:log4j vulnerability - Sleuth dependencylog4j 漏洞 - Sleuth 依赖
【发布时间】:2022-01-16 23:16:08
【问题描述】:

我们听说log4j-core.jar 很容易受到攻击。
我们注意到spring-cloud-starter-sleuth(2.2.2.RELEASE 版)依赖带来了一个使用log4j-core.jar(2.13.0 版)和provided 范围的依赖,如下所示:

<dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-core</artifactId>
  <version>${log4j.version}</version>
  <scope>provided</scope>
</dependency>

带来log4j依赖的确切jar是:

<groupId>io.zipkin.brave</groupId>
<artifactId>brave-context-log4j2</artifactId>
<version>5.10.1</version>

我们没有在我们的代码或配置中使用 Zipkin,只是使用了 Sleuth。
我们的代码是否易受攻击?

【问题讨论】:

  • 不,它是一个提供的依赖意味着它不采用那个版本。因此,除非您实际上包含该版本(或 2.15 以外的任何版本),否则您很容易受到攻击。
  • @M.Deinum - 如果没有提供,它会在运行时失败吗?
  • 没有。如果它现在有效,那么它就有效。 provided 依赖不是部署的一部分(仅编译和运行时)。因此,如果这不在您的可部署(您的 jar 或战争)中,那也不是问题。
  • @M.Deinum 那么如果我在提供的范围内使用带有易受攻击的 log4j 的侦探的 spring logback 怎么办,这是否意味着我没有什么好害怕的?
  • 不,因为只有 API 而不是 log4j-core 存在漏洞。这里也有详细解释spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot

标签: java spring-boot log4j spring-cloud-sleuth


【解决方案1】:

Spring Cloud Sleuth 2.x 不再受支持,正如 M. Deinum 所说,由于 provided 范围,Sleuth 不会为您带来这些依赖项。您可以通过运行 gradlew dependenciesmvn dependency:tree 来测试它。

【讨论】:

猜你喜欢
  • 2022-01-17
  • 2022-01-22
  • 2022-01-23
  • 2022-01-15
  • 2019-10-26
  • 2022-01-18
  • 2018-08-31
  • 2022-12-17
  • 2022-01-20
相关资源
最近更新 更多