zoukankan      html  css  js  c++  java
  • 常用的web安全处理

    1用户名和密码认证通过后,必须更换会话标识,以防止会话固定(session fixation)漏洞。

    实施指导:

    在用户名和密码认证通过后增加以下两行代码:

    request.getSession().invalidate();

    request.getSession();

     

    2验证码字符串要求是随机生成,生成的随机数必须是安全的。

    说明:对于java语言可以使用类 java.security.SecureRandom来生成安全的随机数。

     

    3禁止带有敏感数据的Web页面缓存。

    说明:带有敏感数据的Web页面都应该禁止缓存,以防止敏感信息泄漏或通过代理服务器上网的用户数据互窜问题。

    实施指导:

    在HTML页面的<HEAD>标签内加入如下代码:

    <HEAD>

    <META HTTP-EQUIV="Expires" CONTENT="0">

    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">

    <META HTTP-EQUIV="Cache-control" CONTENT="no-cache">

    <META HTTP-EQUIV="Cache" CONTENT="no-cache">

    </HEAD>

    在JSP页面的最前面加入如下代码:

    <%

    response.setHeader("Cache-Control","no-cache");

    response.setHeader("Pragma","no-cache");

    response.setDateHeader("Expires",0);

    %>

    注意:以上代码对于采用强制缓存策略的代理服务器不生效(代理服务器默认是不缓存的),要防止代理服务器缓存页面,可以在链接后加入一个随机数pageid,此时链接变成:http://localhost:8080/query.do?a=2&pageid=2245562, 其中2245562数字是随机生成的,每次请求此页面时,随机数都不同,IE始终认为此为一个新请求,并重新解析,生成新的响应页面。

  • 相关阅读:
    计算机网络概述
    虚拟机网卡配置
    元类
    反射和内置方法
    面向对象的三大特性
    MYSQL中EXISTS的用法
    Guava中的常见集合操作用法
    集合操作交并补的三种Java实现
    P9 get和resize操作(Java 13)
    P8 Java 13中 HashMap的 put方法
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3140038.html
Copyright © 2011-2022 走看看