网络安全知攻晓防:Struts2-057 漏洞环境搭建+案例

来源:史忆讲车 2018-09-07 11:45:07

一、struts2 搭建

这几天为了复现struts2-057的漏洞,自己试着去搭建一下环境,但是以前对JAVA不是太熟悉,进入了知识的盲区,慢慢摸索进行,跳了很多坑,总之还是完成了struts2的环境搭建,这里总结一下,希望大家少走弯路,有所帮助。

二、struts2 环境说明

系统环境:Windows 7Web服务器:TOMCAT 9.0(apache-tomcat-9.0.11-windows-x64)JAVA 环境:JDK1.8(jdk-8u181-windows-x64)Eclipse 环境:Eclipse-inst-win64Struts2:struts-2.3.20-all.zip

为了大家方便,我直接把所有的包传到百度网盘,给大家分享出来,包都是来自官网:

链接:https://pan.baidu.com/s/1orpMO2zYHWK2xqsSm510-A 密码:9nkh

三 、安装前的说明

安装的顺序为JDK+TOMCAT+Eclipse+Struts2, 这里的一定要注意JDK和TOMCAT的版本搭配,目前我测试过的位JDK1.8+ TOMCAT9.0 是没有问题的,在这上面可算栽大跟头了。所以大家一定要多注意这点。基础环境的版本很重要。

四 、JDK环境安装配置

Step1:URL下载链接

http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html

Step2:安装过程

JDK安装很简单,点击下一步安装即可,默认安装就可以了,这里需要记住自己的安装路径,下面介绍一下JDK的环境变量的配置。

Step3:环境变量

Windows7的电脑属性----》高级系统设置----》环境变量

增加系统变量(不是用户变量)JAVA_HOME, 变量内容:安装JDK的路径,截图如下

配置Path的环境变量,在path环境后面增加JAVA_HOME 内容如下:;%JAVA_HOME%/bin,截图如下:

五、 TOMCAT环境安装配置

Step1:下载链接:

https://tomcat.apache.org/

Step2:下载二进制文件,免安装

Step3:配置一下环境变量,跟JDK的配置步骤一样

%TOMCAT_HOME%/bin

Step4:测试一下是否成功,在命令行下执行 startup 启动tomcat服务器,然后在浏览器中输入:localhost:8080

六、Eclipse 安装

Eclipse的安装不存在坑,只要正常安装即可,但是必须之前安装JDK和TOMCAT, Eclipse本身就是一个编译器,为了更加高效的开发。

七 、struts环境的部署

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。

Step1:下载Strust2 URL地址:https://archive.apache.org/dist/struts/

Step2:Eclipse 创建一个dynamic web project

step3:配置项目创建

八、 struts工作流程

其实用最简单的七个步骤:

1:客户端在浏览器中输入一个url地址; 2:这个url请求通过http协议发送给tomcat; 3:tomcat根据url找到对应项目里面的web.xml文件; 4:在web.xml里面会发现有struts2的配置; 5:然后会找到struts2对应的struts.xml配置文件; 6:根据url解析struts.xml配置文件就会找到对应的class; 7:调用完class返回一个结果result,根据struts.xml返回到对应的jsp;

具体文档可以参考:https://blog.csdn.net/liuyinghui523/article/details/48290625

九、 struts的一个案例

struts2 案例中,分为了 导入struts2的基础包和引用、配置web.xml 、创建Action和struts.xml 和创建视图result.jsp。具体的步骤为:

step1: 导入struts2的基础包

step2:修改一下web.xml 文件

helloworldstruts2org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilterstruts2/*index.jsp

step3:创建一个方法Action

step4:配置helloworld的java文件如下:

package com.imooc.action;import com.opensymphony.xwork2.ActionSupport;public class HelloWorldAction extends ActionSupport { @Override public String execute() throws Exception { // TODO Auto-generated method stub System.out.println("执行Action"); return SUCCESS; }}

step5:创建一个视图文件result.jsp 文件

Insert title here

this is result.jsp

step6:进行测试

点击查看原文

相关链接