OWASP 依赖性检查确定错误的工件

OWASP Dependency Check determines wrong artifacts

我在多模块项目中使用 Maven Plugin of the OWASP Dependency Check

有一个模块带有 artifactId "links" 和另一个(我称之为 "war") 依赖于此模块的模块。两者都有 groupId "de.mygroup".

当我现在 运行 mvn dependency-check-maven:check 我收到以下警告:

links-5.0.0-SNAPSHOT.jar (cpe:/a:hot_links:hot_links:5.0.0, cpe:/a:links:links:5.0.0, de.mygroup:links:5.0.0-SNAPSHOT) : CVE-2006-7086

据我了解此警告,这是一个误报,因为依赖项检查只查找 artifactId 而不管 groupId。这是正确的吗?

我能做些什么来告诉插件我使用的是哪一个?但我认为它应该自动确定这一点。

我查看了 maven 插件的源代码并在 BaseDependencyCheckMojo.java:652 中找到了 dependencyNode.getArtifact().getId() 但这应该 return 工件的完整限定坐标。所以我不明白为什么它会找到多个 "candidates" 然后用来搜索漏洞。

有什么建议吗?


编辑:我刚刚用当前的 master from GitHub 进行了测试,因为我发现依赖关系的确定发生了一些变化。上面的警告现在消失了。 但是我有第三个模块 artifactId "indesign" (和 groupId "de.mygroup") 为此,我收到此警告:

indesign-5.0.0-SNAPSHOT.jar (cpe:/a:adobe:indesign:5.0.0, de.mygroup:indesign:5.0.0-SNAPSHOT) : CVE-2006-0525

我认为这是同一个问题,但我不明白为什么第一个警告消失而第二个警告仍然存在。

此问题已在项目的 github 问题列表中得到解答(请参阅问题 #550)。