Http Cookie

Cookie

Cookie的作用是管理服务器端和客户端之间状态,工作机制是用户识别和状态的管理,Web网站为了管理用户的状态会通过Web浏览器,把一些数据临时写入用户的计算机内,接着当用户访问改Web网站时,将存储的Cookie一并发送给服务器端,调用Cookie时,由于可以校验Cookie的有效期,以及发送方的域,路径,协议等信息,所以正规发布的Cookie内的数据不会因为来自其他Web站点和攻击者的攻击而泄露

Cookie服务的首部信息

首部字段 说明 首部类型
Set-Cookie 开始状态管理所使用的Cookie信息 响应首部字段
Cookie 服务器端接受到的Cookie信息 请求首部字段

Set-Cookie

当服务器准备开始管理客户端状态时,会事先告知各种信息

属性 说明
NAME=VALUE 赋予Cookie的名称和值(必须
expires=DATE Cookie的有效期(若不明确指定,则默认为浏览器关闭前为止,对与iOS而言则是应用关闭为止)一旦Cookie从服务器端发送至客户端,服务器端就不存在可以显示删除Cookie的方法,可以通过覆盖已过期的Cookie,实现对客户端Cookie的实质性删除
path=PATH 将服务器上的文件目录作为Cookie的适用对象(若不指定则默认为文档当前所在文件目录)不过另外有办法可以避开这个限制,所有将其作为安全机制的效果不理想
domain=域名 作为Cookie适用对象的域名(若不指定则默认为创建Cookie的服务器的域名)
Secure 仅在HTTPS安全通信时才会发送Cookie 发送方式:Set-Cookie: name=xxx;secure 只有当HTTPS才会对Cookie进行回收,如果省略,不论HTTP还是HTTPS都会回收
HttpOnly 加以限制,使Cookie不能被JavaScript脚本访问(主要目的是为防止跨站脚本攻击对Cookie信息的窃取) 也就是说通过document.cookie 无法读取附加 HttpOnly属性Cookie的内容了,因此,也就无法在XSS中利用JavaScript劫持Cookie了

Cookie

首部字段Cookie会告知服务器,当客户端想获得HTTP状态管理时,就会在请求中包含从服务器接收到的Cookie,接收到多个Cookie时,同样也可以以多个Cookie的形式发送。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章