一、漏洞概述
Eureka是SpringCloudNetflix模块的子模块,它是SpringCloud对NetflixEureka的二次封装,主要负责SpringCloud的服务注册与发现功能,开发人员只需引入相关依赖和注解轻松将SpringBoot与Eureka进行整合。
安全人员(MichaelStepankin)发现,服务注册与发现功能可能被滥用,当eureka.client.serviceUrl.defaultZone属性被设置为恶意的外部eurekaserverURL地址并/refresh触发目标机器请求远程URL,提前架设的fakeeurekaserver就会返回恶意的payload。目标机器解析payload,触发XStream反序列化,造成RCE漏洞。
二、利用条件
1.目标可出网
2.目标使用的eureka-client1.8.7(存在spring-cloud-starter-netflix-eureka-client依赖)
3.可用POST方式请求目标网站的/env接口,并设置zone属性
4.可用POST方式请求目标网站的/refresh接口刷新配置(存在spring-boot-starter-actuator依赖)
三、漏洞环境
Web服务器:WindowsServer,JDK8u(1.13..)
VPS:Ubuntu16.04.7LTS(.14.73.)
四、正常访问
访问URL: