经过大量努力,将问题缩减为一个最小复现项目。
这只是一个空项目,用于展示我在公司规定下被迫使用的 dependency-check-maven 的问题。
请检查 pom.xml 并执行验证:
mvn org.owasp:dependency-check-maven:RELEASE:aggregate
或者如果您有 NVD_API_KEY 环境变量,可以更快地执行:
mvn org.owasp:dependency-check-maven:RELEASE:aggregate -DnvdApiKey=${NVD_API_KEY}
然后您会看到大量问题,包括: ... [ERROR] maven-core-3.6.3.jar (pkg:maven/org.apache.maven/[email protected], cpe:2.3🅰️apache:maven:3.6.3:::::::*): CVE-2021-26291(9.1) ...
"看似"具有误导性的 dependency-check-report.html 显示:
maven-core-3.6.3.jar
项目/作用域中引用:test (plugins)
包含自:pkg:maven/org.owasp/[email protected] (plugins)
问题源于公司强制使用的(庞大)父 POM,且其配置为:
<failBuildOnCVSS>7</failBuildOnCVSS>
<scanPlugins>true</scanPlugins>
在公司父 POM 或其依赖中,没有任何地方显式引用 maven-core 3.6.3。以下命令返回空结果:
mvn help:effective-pom | grep 3.6.3