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始终认为此为一个新请求,并重新解析,生成新的响应页面。

  • 相关阅读:
    CF1454F Array Partition
    leetcode1883 准时抵达会议现场的最小跳过休息次数
    leetcode1871 跳跃游戏 VII
    leetcode1872 石子游戏VIII
    CF1355C Count Triangles
    CF1245D Shichikuji and Power Grid
    CF1368C Even Picture
    CF1368D AND, OR and square sum
    CF1395C Boboniu and Bit Operations
    SpringBoot和开发热部署
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3140038.html
Copyright © 2011-2022 走看看