漏洞描述
Spring Cloud Config目录遍历漏洞的本质是允许应用程序通过spring-cloud-config-server模块获取任意配置文件。攻击者可以构建恶意URL以利用目录遍历漏洞。
漏洞危害
由于spring-cloud-config-server模块未对传入路径进行安全限制,攻击者可以利用多个…%252f进行目录遍历,查看服务器其他路径的敏感文件,造成敏感信息泄露。
漏洞影响版本
Spring Cloud Config 2.1.0 to 2.1.1
Spring Cloud Config 2.0.0 to 2.0.3
Spring Cloud Config 1.4.0 to 1.4.5
其他较早版本
漏洞分析
Spring Cloud Config Server是Spring为了分布式管理的一个组件,在Server端中负责存储配置,Client可以通过http的形式获取配置值。payload对应的路由存在于org.springframework.cloud.config.server.resource.ResourceController#retrieve()中,其代码
{name}/{profile}/{label}:name对应仓库名,profile对应配置文件,label为git分支名,一般上都有一个master分支。实际测试中name、profile值无所谓,但是label分支名必须存在。调试跟进getFilePath
这