点击劫持:X-Frame-Options未配置

X-Frame-Options未配置
可以配置的参数有三个:
1.DENY:浏览器拒绝当前页面加载任何Frame页面。
2.SAMEORIGIN:页面只能加载入同源域名下的页面。
3.ALLOW-FROM uri:只能被嵌入到指定域名的框架中。
一般选第二个参数就可以了。

方式一:每个页面添加设置:

<% response.addHeader("x-frame-options","SAMEORIGIN");%>

方式二:项目代码中加过滤器设置:

public class FrameFilter implements Filter {
 
 
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
    HttpServletRequest request = (HttpServletRequest) req;  
    HttpServletResponse response = (HttpServletResponse) res;  
    //设置x-frame-options
    response.setHeader("x-frame-options", "SAMEORIGIN");  
    chain.doFilter(request, response);
    }  
 
    public void init(FilterConfig config) throws ServletException {
    }
    
    public void destroy() {
    }

}

然后web.xml中配置此过滤器,不再赘述。

方式三:tomcat中设置(如果使用的服务器是tomcat,可以在tomcat中设置,tomcat下所有应用都会生效)    

tomcat目录/conf/web.xml中的找httpHeaderSecurity配置,将其前面的注释去掉即可。
 
        httpHeaderSecurity
        /*
        REQUEST
    


        httpHeaderSecurity
        org.apache.catalina.filters.HttpHeaderSecurityFilter
        true
        // 添加以下代码start
      
        antiClickJackingEnabled
        true
      

      
        antiClickJackingOption
        SAMEORIGIN
      
    //添加end

    

以上三种方式都可以,是项目情况而定使用哪种!

你可能感兴趣的:(漏洞)