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

  • 相关阅读:
    C# SQLiteHelper
    C# 自定义等待窗口
    C# Work PPT to PDF
    SQL 分隔字符串
    SQL 客户端查看
    SQL 自定义四舍五入
    SQL 并联更新
    C# 委托简单例子
    每天一个Linux命令(52)telnet命令
    每天一个Linux命令(51)ss命令
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3140038.html
Copyright © 2011-2022 走看看