了解cookie和cookie的安全性

简介: 一、什么是cookie?打开你的Documents and Settings文件夹,进去以后,随便打开一个用户来看看,是不是有一个文件夹叫“Cookies”,里面装着一堆.txt文件?那么,这个Cookies到底是个什么东东呢?Cookie的英文原意是“甜饼”,但这里所讲的“Cookie”可不是糕点哦,它只是一个保存在客户机中的简单的文本文件,这个文件与特定的Web文档关联在一起,保存了该客户机访问这个Web文档时的信息,当客户机再次访问这个Web文档时这些信息可供该文档使用。

一、什么是cookie?

打开你的Documents and Settings文件夹,进去以后,随便打开一个用户来看看,是不是有一个文件夹叫“Cookies”,里面装着一堆.txt文件?那么,这个Cookies到底是个什么东东呢?

Cookie的英文原意是“甜饼”,但这里所讲的“Cookie”可不是糕点哦,它只是一个保存在客户机中的简单的文本文件,这个文件与特定的Web文档关联在一起,保存了该客户机访问这个Web文档时的信息,当客户机再次访问这个Web文档时这些信息可供该文档使用。由于“Cookie”具有可以保存在客户机上的神奇特性,因此它可以帮助我们实现记录用户个人信息的功能,而这一切都不必使用复杂的CGI等程序。是不是很有意思。

欢迎珈裙  四九六0三八649  学习交流,验证浇水。

二、Cookie的功能

1.定制个性化空间

用户访问一个站点,可能由于费用、带宽限制等原因,并不希望浏览网页所有的内容。Cookie可根据个人喜好进行栏目设定,即时、动态地产生用户所要的内容,这就迎合了不同层次用户的访问兴趣,减少用户项目选择的次数,更合理利用网页服务器的传输带宽。

2.记录站点轨迹

由于Cookie可以保存在用户机上,并在用户再次访问该Server时读回这一特性可以帮助我们实现很多设计功能,如显示用户访问该网页的次数;显示用户上一次的访问时间;甚至是记录用户以前在本页中所做的选择等等,这可免去我们再去研究复杂的CGI编程。

三、Cookie的组成

类似Javascript变量,Cookie由变量名和值组成。其属性里既有标准的Cookie变量,也有用户自己创建的变量,属性中变量是用“变量=值”形式来保存。

根据Netscape公司的规定,Cookie格式如下:

Set-Cookie: NAME=VALUE;Expires=DATE;Path=PATH;Domain=DOMAIN_NAME;SECURE

NAME=VALUE:

这是每一个Cookie均必须有的部分。NAME是该Cookie的名称,VALUE是该Cookie的值。在字符串“NAME=VALUE”中,不含分号、逗号和空格等字符。

Expires=DATE:Expires变量是一个只写变量,它确定了Cookie有效终止日期。该属性值DATE必须以特定的格式来书写:星期几,DD-MM-YY HH:MM:SS GMT,GMT表示这是格林尼治时间。反之,不以这样的格式来书写,系统将无法识别。该变量可省,如果缺省时,则Cookie的属性值不会保存在用户的硬盘中,而仅仅保存在内存当中,Cookie文件将随着浏览器的关闭而自动消失。

Domain=DOMAIN-NAME:Domain该变量是一个只写变量,它确定了哪些Internet域中的Web服务器可读取浏览器所存取的Cookie,即只有来自这个域的页面才可以使用Cookie中的信息。这项设置是可选的,如果缺省时,设置Cookie的属性值为该Web服务器的域名。

Path=PATH:Path属性定义了Web服务器上哪些路径下的页面可获取服务器设置的Cookie。一般如果用户输入的URL中的路径部分从第一个字符开始包含Path属性所定义的字符串,浏览器就认为通过检查。如果Path属性的值为“/”,则Web服务器上所有的WWW资源均可读取该Cookie。同样该项设置是可选的,如果缺省时,则Path的属性值为Web服务器传给浏览器的资源的路径名。

可以看出我们借助对Domain和Path两个变量的设置,即可有效地控制Cookie文件被访问的范围。

Secure:在Cookie中标记该变量,表明只有当浏览器和Web Server之间的通信协议为加密认证协议时,浏览器才向服务器提交相应的Cookie。当前这种协议只有一种,即为HTTPS。

四、cookie的安全性

上面我们说到的全都是cookie对我们的好处,但是实际上好象偷偷的被人放了东西在自己的硬盘里(而且还有很多人是在并不知道的情况下)毕竟感觉不是很舒服,尤其是这个文件还可以被远程的服务器长期的监控,修改,记录一些你冲浪的习惯甚至你的相关密码.....这个这个,虽然有一定的便利可图,但是始终感觉不对味....当然,如果遇到一个很正规的大网站当然不用怕,但是要知道世界上还是有很多黑客网站的哦!所以呢——你自己看着办拉,我只是提供这些信息而已,呵呵。

最后就是如果你觉得还是对cookie这种东东加以限制的好呢,下面有几种方法,你可以参考参考哦!

如果你用的浏览器是IE4:就右件点击Internet Exploer—>属性—>安全—>自定义级别—>选中“禁止所有Cookie使用”这个复选项就可以了;

如果你用的是IE5,哪就比较麻烦了,因为IE5还有本地、可信站点、受限站点等等级别之分,没办法,你就一个个的设吧。

上面的办法都比较麻烦,有没有什么简单点的办法呢?呵呵,其实你只要把刚刚咱们说的cookies文件夹设为“只读”不就完了吗?

不过最后还有些cookie不是放在你能看到的地方,而是放在注册表中的(一说到注册表我头就大了),哪就运行regedit,打开

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/ CurrentVersion/ InternetSettings / Cache/Special Paths/Cookies

删除其中所有的文件,OK拉,最后再用查找功能一个个的把“Cookies”找出来,一一删除就行拉!

目录
相关文章
|
存储 安全 JavaScript
cookie使用说明和安全性问题
cookie使用说明和安全性问题
180 0
|
Web App开发 安全 算法
|
存储 网络安全 Go
在 Go 语言中增强 Cookie 的安全性
本文讲的是在 Go 语言中增强 Cookie 的安全性,在我开始学习 Go 语言时已经有一些 Web 开发经验了,但是并没有直接操作 Cookie 的经验。我之前做过 Rails 开发,当我不得不需要在 Rails 中读写 Cookie 时,并不需要自己去实现各种安全措施。
1248 0
|
PHP JavaScript 内存技术
|
27天前
|
缓存 Java Spring
servlet和SpringBoot两种方式分别获取Cookie和Session方式比较(带源码) —— 图文并茂 两种方式获取Header
文章比较了在Servlet和Spring Boot中获取Cookie、Session和Header的方法,并提供了相应的代码实例,展示了两种方式在实际应用中的异同。
104 3
servlet和SpringBoot两种方式分别获取Cookie和Session方式比较(带源码) —— 图文并茂 两种方式获取Header
|
10天前
|
存储 安全 数据安全/隐私保护
Cookie 和 Session 的区别及使用 Session 进行身份验证的方法
【10月更文挑战第12天】总之,Cookie 和 Session 各有特点,在不同的场景中发挥着不同的作用。使用 Session 进行身份验证是常见的做法,通过合理的设计和管理,可以确保用户身份的安全和可靠验证。
12 1
|
2月前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
2月前
|
存储 前端开发 Java
JavaWeb基础7——会话技术Cookie&Session
会话技术、Cookie的发送和获取、存活时间、Session钝化与活化、销毁、用户登录注册“记住我”和“验证码”案例
JavaWeb基础7——会话技术Cookie&Session
|
2月前
|
存储 安全 NoSQL
Cookie、Session、Token 解析
Cookie、Session、Token 解析
49 0
|
2月前
|
存储 JSON 数据安全/隐私保护
Cookie + Session 的时代已经过去了?
在探讨“Cookie + Session”这一经典组合是否已经过时的议题时,我们首先需要理解它们在Web应用认证和会话管理中的历史地位与当前面临的挑战。随着Web技术的飞速发展,特别是无状态服务、OAuth、JWT(JSON Web Tokens)等技术的兴起,这一传统机制确实面临了前所未有的变革压力。但说它“完全过去”或许过于绝对,因为它在特定场景下仍发挥着重要作用。
33 0