如何检查我的 Java 项目是否使用 Log4j 以及哪个版本?

Jok*_*eri 13 java log4j ivy maven

由于Log4Shell 漏洞,我想搜索并找出我的 Java 项目是直接实现 Log4j 还是通过依赖项实现,以及哪个版本。

例如,我有一个使用这些依赖管理工具的项目:

  1. Maven项目
  2. Apache Ivy项目
  3. 没有任何依赖管理的旧遗留项目

如何在这些类型的依赖管理工具上执行此操作?

有关漏洞的详细信息(包括缓解步骤):

CVE-2021-44228

Apache Log4j 安全漏洞

Tim*_*sen 6

您可以从项目内的命令行运行 Maven 依赖关系树:

mvn dependency:tree
Run Code Online (Sandbox Code Playgroud)

在输出中搜索log4j. 如果您找到它,则可能意味着您的项目直接包含,或者另一个依赖项作为传递依赖项log4j包含在内。log4j