一.struts2命令执行漏洞
struts2框架给开发人员开发用的。
struts2框架搭建好后,有个明显的标志:漏洞它的扩展名末尾是.do或.action
打开虚拟机里的Jspstudy,查看端口为8181(输入apache和tomcat端口都可以)
进入页面http://192.168.18.36:8181/struts2-showcase/
采用Acunetix-Targets扫描
采用k8 Struts2 Exp 20170309扫描
上传文件(传输木马文件)
上传小马文件
s2-045漏洞还原
连接小马
上传木马,控制服务器
要上传小马文件,然后通过webshell上传大马文件
s2-048攻击过程还原
通过工具Struts048.py验证
s2-052攻击过程还原
https://www.cnblogs.com/Hi-blog/p/7510987.html
S2-057漏洞复现
命令执行漏洞
打开struts.xml文件
首先在struts.xml配置文件添加<constant name="struts.mapper.alwaysSelectFullNamespace" value="true" />
关掉struts.xml ,其次修改配置文件struts-actionchaining.xml 删掉namespace属性,或使用了通配符*
最后把type="chain"改成type="redirectAction"
重启jspstudy
跳转到这个页面,如图
然后抓包
如图添加${(1+1)}
说明命令执行
如图,再次进行实验,复制${#_memberAccess=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS,@java.lang.Runtime@getRuntime().exec('calc.exe')}