承接国内外服务器租用托管、定制开发、网站代运营、网站seo优化托管接单、网站代更新,新老站点皆可!!咨询QQ:3787320601

怎么解决:jsp怎么解决XSS攻击

管理员 2023-03-31 09:39:11 互联网圈 35 ℃ 0 评论 3588字 收藏

jsp怎样解决XSS攻击

jsp如何解决XSS攻击

jsp解决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();

  }

}

文章来源:丸子建站

文章标题:怎么解决:jsp怎么解决XSS攻击

https://www.wanzijz.com/view/5972.html

TAG: xss jsp xss攻击
X

截屏,微信识别二维码

微信号:weimawl

(点击微信号复制,添加好友)

打开微信