最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
struts如何解决xss攻击
时间:2026-08-28 20:29:49 编辑:袖梨 来源:一聚教程网

struts解决xss攻击的方法:
1.采用struts2的拦截器过滤,将提交上来的参数转码来解决,例如配置struts.xml,代码如下:
<package name="default" namespace="/" extends="struts-default, json-default"> <!-- 配置拦截器 --> <interceptors> <!-- 定义xss拦截器 --> <interceptor name="xssInterceptor" class="...此处填写拦截器类名"></interceptor> <!-- 定义一个包含xss拦截的拦截栈 --> <interceptor-stack name="myDefault"> <interceptor-ref name="xssInterceptor"></interceptor-ref> <interceptor-ref name="defaultStack"></interceptor-ref> </interceptor-stack> </interceptors> <!-- 这个必须配置,否则拦截器不生效 --> <default-interceptor-ref name="myDefault"></default-interceptor-ref> <action> ...此处省略n个action </action> </package>2.使用Java代码,拦截器实现类,例如:
import java.util.Map; import org.apache.commons.lang3.StringEscapeUtils; import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.AbstractInterceptor; public class XssInterceptor extends AbstractInterceptor{ @Override public String intercept(ActionInvocation invocation) throws Exception { // TODO Auto-generated method stub ActionContext actionContext = invocation.getInvocationContext(); Map<String, Object> map = actionContext.getParameters(); for (Map.Entry<String, Object> entry : map.entrySet()) { String value = ((String[])(entry.getValue()))[0]; entry.setValue(StringEscapeUtils.escapeHtml4(value));//将提交上来的字符串进行转码 //System.out.println((entry.getValue())); } return invocation.invoke(); }}
相关文章
- 小米路由救砖工具怎么使用(小米路由救砖工具使用方法) 08-28
- 小米路由r1d脱离硬盘固件怎么设置(小米路由r1d脱离硬盘固件设置方法) 08-28
- 心动小镇2026年4月14日溜溜橡木及无暇萤石位置 08-28
- 小米路由r1d刷机红灯常亮怎么回事(小米路由r1d刷机红灯常亮什么原因) 08-28
- 小米路由r1d如何上传(小米路由r1d上传方法) 08-28
- #讲了什么-主要信息和内容重点 08-28