一.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')}

 

 

 

posted on 2021-01-11 19:48  i竹子  阅读(142)  评论(0编辑  收藏  举报