zoukankan      html  css  js  c++  java
  • Cookie安全概述

    Cookie工作原理[1]:

    1,服务器端发送给浏览器端一个含有 “Set-Cookie” 字段的HTTP头。

    2,浏览器端接收到 Set-Cookie 指令时,将Cookie的名称与值存储在浏览器的Cookie存放区,并记录该Cookie的 网域(例如: google.com)、路径、失效时间、安全标志。

    3,当浏览器发送HTTP请求时,首先查找浏览器Cookie存放区内有没有 该网域、该路径、尚未失效和是否为安全连接的Cookie,如果有的话,就会包含在HTTP请求header的“Cookie”中。

    注意,假如一个Web页面包含20张图片、3个CSS、2个JS,同一个Cookie就会发送25次到服务器端。

    Cookie特性[2]:

    1,Cookie个数受限,IE6每个域名最多20个,IE7之后版本最多50个。Firefox 50,Safari和Chorme没有硬性规定。

    2,Cookie大小受限,一般将Cookie长度限制在4095字节(byte)以内。

    3,Cookie的名称和值在传送时必须是经过URL编码的。

     接下来要讲的终于要切入正题了,就是关于Cookie安全的[3]。

    Cookie攻击的两种手段:

    1,Cookie欺骗

      通过盗取、修改、伪造Cookie的内容来得到相应权限或者进行相应权限的操作。

    2,Cookie注入

      利用Cookie进行数据库SQL注入,很多人注意过滤通过Get和Post方式获取的参数,但是却疏于过滤从Cookie获取的参数,这点是要引起注意的。

    使用Cookie保存的数据

    一般不要用Cookie保存用户的个人信息,比如密码、邮箱等,但是如果想在用户链接到网站的时候,验证用户是否是上次登录的那个用户,可以用户每次登录成功后,将一个随机密码发送到浏览器端保存(当然在服务器端数据库也要保存该字段,假如字段名为CookiePassword,注意与用户登录密码不同),当用户再次登录时,首先验证用户发来的密码与CookiePassword字段(不是用户密码)中保存的是否一致,相同即可认为是上次正常登录的用户。

    正题好短,囧 -_-

    参考文献:

    [1]http://blog.miniasp.com/post/2008/02/23/Explain-HTTP-Cookie-in-Detail.aspx

    [2]JavaScript高级程序设计[M],Nicholas C. Zakas

    [3]黑客Web脚本攻击与技术防御核心剖析[M],郝永清

  • 相关阅读:
    jbox使用总结
    NOI 2012 【迷失游乐园】
    SCOI 2008 【奖励关】
    trie树——【吴传之火烧连营】
    状压DP——【蜀传之单刀赴会】
    NOIP提高组2016 D2T3 【愤怒的小鸟】
    NOIP提高组2013 D2T3 【华容道】
    [学习笔记] [KMP]字符串匹配算法
    SHOI 2014 【概率充电器】
    HNOI 2015 【亚瑟王】
  • 原文地址:https://www.cnblogs.com/realwall/p/2254706.html
Copyright © 2011-2022 走看看