跨站脚本功攻击,xss,一个简单的例子让你知道什么是xss攻击

https://blog.csdn.net/Ideality_hunter/article/details/80621138

https://www.cnblogs.com/unclekeith/p/7750681.html

7)HttpOnly,如果在Cookie中设置了"HttpOnly"属性,那么通过程序(JS脚本、Applet等)将无法读取到Cookie信息。

Cookie上直接设置HttpOnly属性

https://blog.csdn.net/jinming1109/article/details/80281380

1.需要在web.xml中配置过滤器
 <!-- cookie添加HttpOnly属性 -->
    <filter>
        <filter-name>CookieFilter</filter-name>
        <filter-class>文件目录.CookieFilter</filter-class>
    </filter> 
    <filter-mapping>
        <filter-name>CookieFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

2.java文件

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;


import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class CookieFilter implements Filter {
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        HttpServletRequest req = (HttpServletRequest) request;
        HttpServletResponse resp = (HttpServletResponse) response;


        Cookie[] cookies = req.getCookies();


        if (cookies != null) {
            Cookie cookie = cookies[0];
            if (cookie != null) {
                /*
                 * cookie.setMaxAge(3600); cookie.setSecure(true); resp.addCookie(cookie);
                 */


                // Servlet 2.5不支持在Cookie上直接设置HttpOnly属性
                String value = cookie.getValue();
                StringBuilder builder = new StringBuilder();
                builder.append("JSESSIONID=" + value + "; ");
                builder.append("Secure; ");
                builder.append("HttpOnly; ");
                Calendar cal = Calendar.getInstance();
                cal.add(Calendar.HOUR, 1);
                Date date = cal.getTime();
                Locale locale = Locale.CHINA;
                SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss", locale);
                builder.append("Expires=" + sdf.format(date));
                resp.setHeader("Set-Cookie", builder.toString());
            }
        }
        chain.doFilter(req, resp);
    }


    public void destroy() {
    }


    public void init(FilterConfig arg0) throws ServletException {
    }
}
--------------------- 
作者:游魂明仔 
来源:CSDN 
原文:https://blog.csdn.net/jinming1109/article/details/80281380 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/didixiao_/article/details/92097691
今日推荐