程序员的知识教程库

网站首页 > 教程分享 正文

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

henian88 2024-08-12 19:44:25 教程分享 82 ℃ 0 评论

一、struts2 搭建

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

二、struts2 环境说明

系统环境:Windows 7
Web服务器:TOMCAT 9.0(apache-tomcat-9.0.11-windows-x64)
JAVA 环境:JDK1.8(jdk-8u181-windows-x64)
Eclipse 环境:Eclipse-inst-win64
Struts2: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 文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
 <display-name>helloworld</display-name>
 
 <filter>
 <filter-name>struts2</filter-name>
 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
 </filter>
 
 <filter-mapping>
 <filter-name>struts2</filter-name>
 <url-pattern>/*</url-pattern>
 </filter-mapping>
 <welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
</web-app>

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 文件

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
this is result.jsp
</body>
</html>

step6:进行测试

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表