moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
阅读:1095回复:0

小甜饼

楼主#
更多 发布于:2002-07-18 11:25
Cookie的安全性及拒绝方法讨论

张林

  摘 要:简要介绍了Cookie的基本概念、安全性问题,以及拒绝的方法。
  关键词:Cookie 浏览器 安全性

1 Cookie简介
  Cookie是由Netscape开发并将其作为持续保存状态信息和其它信息的一种方式,目前绝大多数的浏览器支持Cookie协议。如果能够链入Web网或其它网络的话,就可以使用Cookie来传递某些具有特定功能的小信息块。Cookie是一个储存于浏览器目录中的文本文件,约由255个字符组成,仅占4KB硬盘空间。当用户正在浏览某站点时,它储存于用户机的RAM中;退出浏览器后,它储存于用户的硬盘中。储存在Cookie中的大部分信息是普通的,如:当你浏览一个站点时,此文件记录了每一次的击键信息和被访站点的URL等。但是许多Web站点使用Cookies来储存针对私人的数据,如:注册口令、用户名、信用卡编号等。MSN(微软提供的网络在线服务)、Netscape都完全采用了使用Cookies储存信息的个性化处理。假如你想查看储存在Cookie文件中的信息,可以从你的浏览器目录中查找名为Cookie.txt或MagicCookie(Mac机)的文件,然后利用文本编辑器和字处理软件打开查看即可。

2 Cookie的安全性
  HTTP Cookie不会给机器带来任何伤害,比如从硬盘中获取数据、取得E-mail地址、或窃取某些私人的敏感信息等。实际上,Java与JavaScript早期的运行版本存在这方面的缺陷,但这些安全方面漏洞的绝大部分已经被堵塞了。可执行属性是储存于一个文件中的程序代码执行其功能的必要条件,而Cookies是以标准文本文件形式储存的,因此不会传递任何病毒,所以从普通用户意义上讲,Cookie本身是安全可靠的。
  但是,随着互联网的迅速发展,网上服务功能的进一步开发和完善,利用网络传递的资料信息愈来愈重要,有时涉及到个人的隐私。因此关于Cookies的一个值得关心的问题并不是Cookies对你的机器能做些什么,而是它能存储些什么信息或传递什么信息到链接的服务器。HTTP Cookies可以被用来跟踪网上冲浪者访问过的特定站点,尽管站点的跟踪不用Cookies也容易实现,不过利用Cookies使跟踪到的数据更加坚固可靠些。由于一个Cookie是Web服务器放置在你的机器上的、并可以重新获取你的档案的唯一的标识符,因此Web站点管理员可以利用Cookies建立关于用户及其浏览特征的详细档案资料。当用户登录到一个Web站点后,在任一设置了Cookies的网页上的点击操作信息都会被加到该档案中。档案中的这些信息暂时主要用于站点的设计维护,但除站点管理员外并不否认被别人窃取的可能,假如这些Cookies持有者们把一个用户身份链接到他们的Cookie ID,利用这些档案资料就可以确认用户的名字及地址。此外某些高级的Web站点(如许多的网上商业部门)实际上采用了HTTP Cookies的注册鉴定方式。当用户在站点注册或请求信息时,经常输入确认他们身份的登记口令、E-mail地址或邮政地址到Web页面的窗体中,窗体从Web页面收集用户信息并提交给站点服务器,服务器利用Cookies持久地保存信息,并将其放置在用户机上,等待以后的访问。这些Cookies内嵌于HTML信息中,并在用户机与站点服务器间来回传递,如果用户的注册信息未曾加密,将是危险的。因此许多人认为Cookie的存在对个人隐私是一种潜在的威胁。

3 拒绝Cookie的方法
  如果感到不安全的话,可以拒绝Web服务器设置的Cookie信息或当服务器在你的浏览器上设置Cookie时显示警告窗口,它将告知你设置的Cookies的值及其删除所花费的时间。在Windows下拒绝接受Cookie,可以删除Cookie文件内容,或把文件属性设置为只读和隐含。在浏览器下拒绝的具体方法:
  1.在IE中禁止。IE3.0及以上版本不是把所有的Cookies存储在单个文件中,而是把每个Cookie作为独立的文件储存在“Windows\cookies”目录下,因此禁止Cookies较困难。如果想禁止个别的Cookies,如:记录双击键操作的Cookies,可以通过删除相应文件内容来破坏这些Cookies,然后把文件属性改为只读、隐藏、系统属性,并且存储文件,当登录到一个设置了这种Cookies的站点时,它既不能从你的Cookies读取任何信息,也不会传递新的给你。或者在接受某Cookie之前,设置浏览器提示警告信息,如:在中文IE4.0的“查看| Inte rnet选项‖高级”列表中选择“接受Cookies时总是显示警告窗”的对应项。如果想完全禁止Cookies,可删除注册表中的如下条目:
  [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\InternetSettings\\Cache\\Special Paths\\Cookies]
然后重启动机器,并删除“Windows、cookoes”目录。
  2.在NETSCAPE中禁止。在Netscape的目录下有一个cookies.txt文件(在Mac机上称为Magiccookie),可以利用文本编辑器大胆地删除文件的内容,并把文件重新存为具有只读、隐藏、系统属性的文件,然后运行Windows的注册表编辑器,打开[HKEY_CURRENT_USER\\Software\\Netscape\\Netscape Navigator\\Cookies]主键,将键值名“Cookie File”设置为“Cookie File”=“NUL”,此时硬盘上就不会再有持续保存的信息了。上述方法仅是禁止了长期设在硬盘上的Cookies,当浏览器正在运行时,设在内存中的Cookies仍然未被禁止,但关闭浏览器后因其无法将Cookies写入硬盘会清除掉这些Cookies。它的优点是在浏览器运行过程中,仍可以交换某些信息。同样也可以设置Cookies时显示警告窗口。
  3.如果使用了其他支持Cookies的浏览器,那么一种较好的方法是使用某些可以拒绝Cookies的工具软件,如:Internet Junkbrster 2.0(可免费下载)是一个非常好的选择,它几乎能用于所有的浏览器,作为一个代理存在与浏览器和Internet网之间,可以拒绝大约99%的Cookies。除了访问你允许设置Cookies的站点外,在你使用浏览器时它可以禁止所有Cookies写入你的硬盘。

作者单位:湖南长沙国防科技大学电子工程学院(410073)

参考文献
 1 http://www.cookiecentral.com/
 2 http://webreference.com/javascript/
 3 http://www.epic.org/privacy/internet/cookies/

(收稿日期:1998-10-16)
按第一贴的“给分”键,给分。
游客

返回顶部