十、深入理解Cookie机制

https://blog.****.net/ak739105231/article/details/102561723

前言:cookie是很简单的知识,也是Web端一个重要的数据来源;现在就利用Fiddler来抓取HTTP请求,理解cookie实现登录原理;

一、会话机制

http协议是无状态的;即:对于浏览器的每一次请求,服务器都会独立处理,请求之间不相关联;这样服务器并不知道是哪个用户的请求,为了让服务器识别到对应浏览器;就需要服务器、浏览器共同维持一个状态,这就是会话机制;

十、深入理解Cookie机制

cookie机制是一种会话机制,cookie是浏览器用来存储少量数据的一种机制,以“key=value”形式存储。

二、认识cookie

浏览器---》服务器,通过http请求header,如:"Cookie : ip_country=CN……"

服务器---》浏览器,通过http响应header,如:"Set-Cookie :  ip_country=CN……"

1.cookie的属性:

Expires属性:Expires的值是一个时间,代表过期时间;

Path属性:表示Cookie所属的路径,asp.net默认是“/”;就是根目录;cookie只能让其path路径下的页面访问

HttpOnly属性:这是关于安全方面的属性,将一个Cookie下设置HttpOnly后,javaScript脚本将无法读取cookie信息;有效的防止了XSS攻击;

十、深入理解Cookie机制

十、深入理解Cookie机制

2.cookie的作用:

a.除了用来做用户认证外,还可以保存用户的一些其它信息;

b.cookie也可以用于互联网精准广告定向技术,例如:某个用户浏览了某些商品,就可以用cookie将其记下,对其精准定位。

二、cookie分类

1.会话cookie是一种临时的cookie,它记录了用户的访问站点时的设置和偏好;关闭浏览器,会话cookie就被删除了;

2.持久cookie存储在硬盘上,不管浏览器退出或者计算机重启,持久cookie都继续存在。持久cookie有过期时间;

三、cookie保存在哪里?

Cookie时存在硬盘上的,每个浏览器的cookie存储目录不同,互不干涉。

四、使用和禁用cookie

在控制面板--internet选项--》可以禁用cookie

十、深入理解Cookie机制

五、网站自动登录的原理(截图也有植入cookie的方式

在登录页面输入密码、用户名,选择保存密码单击登录(此时,你的计算机已保存好了登录的cookie,你可以找到cookie,复制下来),然后清空缓存,访问你刚刚访问的链接,带上你复制的cookie,你自己已经是登录状态了;

实例:不需用账号、密码,就可访问一个网址(如:http://athena-mf.x'x'x'x'x.com/index

1.在B计算机登录,获取到cookie:

Cookie: JSESSIONID=0b015a9a-5741-47eb-a707-4fd2b1dc75ab;

2.在A计算机上,使用Fiddler的FiddlerScript编辑脚本,在request的header中add 这个cookie;然后在浏览器中直接访问http://athena-mf.x'x'x'x'x.com/index,你会发现你已成功登录;

十、深入理解Cookie机制

六、cookie与文件缓存的区别

很多人把cookie和文件缓存混淆,其实他们是完全不一样的东西;唯一可能一样的是他们存在硬盘上的同一个目录下;