Cookie测试大纲

来源:互联网 发布:仓库管理数据库设计 编辑:程序博客网 时间:2024/05/21 09:54

一.   Cookie技术背景说明

1.  Cookie文件的实质

  Cookie实际上是Web服务端与客户端(典型的是浏览器)交互时彼此传递的一部分内容,内容可以是任意的,但要在允许的长度范围之内。客户端会将它保存在本地机器上(如IE便会保存在本地的一个txt文件中),由客户端程序对其进行管理,过期的Cookie会自动删除。每当客户端访问某个域下某个目录中的网页时,便会将保存在本地并且属于那个域下对应目录的有效Cookie信息附在网页请求的头部信息当中一并发送给服务端。

 

2.  Cookie文件的保存位置

  不同的客户端,其Cookie的保存方式、保存位置各不相同,这里只说一下Windows系统中IECookie文件保存位置。

  在Windows 2000/XP系统中,Cookie默认保存在C:/Documents and Settings/<username>/Cookies/目录下(此处的<username>为你登录系统时使用的用户名,在开始->运行中输入cookies便可打开该目录),命名规则为<username>@<domain>.txt

  与2000/XP不同的是,在Windows 95/98/ME系统中Cookie文件默认是保存在C:/Windows/Cookies/目录下的。

 

3.  Cookie文件的格式

  IECookie文件实际上就是一个txt文本文件,只不过换行符标记为Unix换行标记(0x0A),由于记事本对Unix换行标记不兼容,打开后内容全在一行看起来不方便,我们可以用EditPlusUltraEdit-32打开,打开之后,会看到形式如下的内容:

name

value

domain/

1600

1263382784

30020896

452781968

30020892

*

每一行的内容说明:

第一行 Cookie变量名

第二行 Cookie变量值

第三行 该Cookie变量所属域,形如csdn.net/blog.csdn.net/blog.csdn.net/lixianlin/

第四行 可选标志

第五行 该Cookie过期时间(FILETIME格式)的高位整数

第六行 该Cookie过期时间(FILETIME格式)的低位整数

第七行 该Cookie创建时间(FILETIME格式)的高位整数

第八行 该Cookie创建时间(FILETIME格式)的低位整数

第九行 Cookie记录分隔符(为一个星号*

 

第三行中Cookie变量所属域,如csdn.net/,它是一个根域,也就是一级域,表示该Cookie变量在该根域下的所有目录中的网页都有效,不管访问该域下的哪个目录中的网页,浏览器都会将该Cookie信息附在网页头部信息当中发送给服务端;blog.csdn.net/,是一个二级域,表示该Cookie只对blog这个二级域下目录中的网页有效;blog.csdn.net/lixianlin/,是一个二级域下的目录,只有访问blog这个二级域下lixianlin这个目录中的网页时,才会把该Cookie信息附在请求头部信息当中发送给服务端。需要指出的是csdn.net/www.csdn.net/并不相同,前者是根域,后者是一个二级域,只是人们习惯了www这样的形式,所以大多数的网站首页都用http://www.xxx.com/这样的二级域来访问

二. Cookie测试

1.  Cookie的保存路径

说明:

a)   通常情况下cookie的保存路径可以通过:注册表“HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders/Cookies ”查看

b)   比较异常的情况,cookie保存路径为“%userprofile%/Local Settings/Temp/Cookies

测试影响因素:

a)   默认cookie目录

b)   用户自定义cookie目录(目录为系统盘,其他磁盘,中文,全半角,简繁体,特殊字符,空格,超长路径)

c)   系统用户名为中文

d)   目标文件夹不存在

e)   目标文件夹只读

f)   目标文件夹隐藏

g)   目标文件夹无访问权限

h)   开启UAC

 

2.  应用程序写Cookie权限

说明:

a)   Vista下开启UAC之后,会涉及到用户权限提升及虚拟化

b)   Ie保护模式下,其完整性级别为低,而其他ie核心的浏览器启动时,完整性级别为高,cookie目录的完整性级别为低

测试影响因素:

a)   开启UACadministrator,自建管理员,标准用户(提升/不提升权限)

b)   Ie开启保护模式和关闭保护模式

c)   其他IE核心浏览器

d)   Internet选项隐私等级设置

e)   Cookie完整性级别高于应用程序完整性级别

 

3.  应用程序写Cookie方式

说明:

a)   通常情况下,写cookie不能跨域,例如当前页面是s.sohu.com域下,种cookiejsv.sohu.com上,那么这时候通常不会写不成功的

b)   如果需要跨域写cookie,那么需要用到Crossdomain.Xml,简单来说这文件是一份白名单,指定的站点是能与该站点进行跨域数据传输的

测试影响因素:

a)   cookie的文件与当前页面属于不同域

 

4.  Cookie内容及安全性

说明:

a)   通常情况下cookie文件中的信息,会交由其他应用程序进行处理(通常情况下是ie在进行浏览的时候读取这些信息,也有另外的应用程序会对这些cookie信息进行分析然后用于自己的特定用途)

测试影响因素:

a)   需求实现的检验

b)   破坏各行数据进行容错性测试

c)   修改服务器时间使过期

d)   修改特定行key所对应的valuejs或者正则或者sql语句,检验基本的安全性

 

5.  Cookie的冲突

说明:

a)   因为cookie是需要操作本地磁盘文件的,因而需要考虑杀毒软件及安全监控软件

测试影响因素:

a)  cookie过程中各类安全监控软件是否提示

b)  cookie后使用各种杀毒软件扫描是否提示异常

三. 参考资料

http://blog.csdn.net/lixianlin/archive/2008/07/30/2738229.aspx

http://www.flashas.net/asbc/20080310/2632.html

 

原创粉丝点击