我最近在向 pom.xml 添加依赖项时在 Maven 项目中遇到了一个漏洞。该漏洞报告为 CVE-2023-2976,严重级别为“高”,表示“外部各方可访问文件或目录”漏洞。有问题的依赖项是 com.google.guava:guava:31.1-jre。
以下是我的项目设置的具体细节:
我尝试通过排除有问题的依赖项来缓解该漏洞,如下所示:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-saml2-service-provider</artifactId>
<exclusions>
<exclusion>
<groupId>org.opensaml</groupId>
<artifactId>opensaml-core</artifactId>
</exclusion>
</exclusions>
</dependency>
但是问题依然存在
您始终可以通过将版本指定为大于 32.0.1 来覆盖依赖项。问题已经解决了
在 pom.xml 中添加依赖项
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>32.1.0-jre</version>
</dependency>
您排除的依赖可能会也可能不会引入番石榴。
您可以生成完整的依赖关系树来查找哪个依赖项正在使用 guava 引入
mvn dependency:tree
并排除它,以防项目不需要或使用它