Cookie测试大纲
一. Cookie技术背景说明
1. Cookie文件的实质
Cookie实际上是Web服务端与客户端(典型的是浏览器)交互时彼此传递的一部分内容,内容可以是任意的,但要在允许的长度范围之内。客户端会将它保存在本地机器上(如IE便会保存在本地的一个txt文件中),由客户端程序对其进行管理,过期的Cookie会自动删除。每当客户端访问某个域下某个目录中的网页时,便会将保存在本地并且属于那个域下对应目录的有效Cookie信息附在网页请求的头部信息当中一并发送给服务端。
2. Cookie文件的保存位置
不同的客户端,其Cookie的保存方式、保存位置各不相同,这里只说一下Windows系统中IE的Cookie文件保存位置。
在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文件的格式
IE的Cookie文件实际上就是一个txt文本文件,只不过换行符标记为Unix换行标记(0x0A),由于记事本对Unix换行标记不兼容,打开后内容全在一行看起来不方便,我们可以用EditPlus或UltraEdit-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) 开启UAC,administrator,自建管理员,标准用户(提升/不提升权限)
b) Ie开启保护模式和关闭保护模式
c) 其他IE核心浏览器
d) Internet选项隐私等级设置
e) Cookie完整性级别高于应用程序完整性级别
3. 应用程序写Cookie方式
说明:
a) 通常情况下,写cookie不能跨域,例如当前页面是s.sohu.com域下,种cookie的js在v.sohu.com上,那么这时候通常不会写不成功的
b) 如果需要跨域写cookie,那么需要用到Crossdomain.Xml,简单来说这文件是一份白名单,指定的站点是能与该站点进行跨域数据传输的
测试影响因素:
a) 种cookie的文件与当前页面属于不同域
4. Cookie内容及安全性
说明:
a) 通常情况下cookie文件中的信息,会交由其他应用程序进行处理(通常情况下是ie在进行浏览的时候读取这些信息,也有另外的应用程序会对这些cookie信息进行分析然后用于自己的特定用途)
测试影响因素:
a) 需求实现的检验
b) 破坏各行数据进行容错性测试
c) 修改服务器时间使过期
d) 修改特定行key所对应的value为js或者正则或者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
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Anlegor/archive/2009/12/07/4959400.aspx
分享到:
相关推荐
【WEB安全测试大纲】主要关注的是确保Web应用程序的安全性,防止各类攻击,保护用户数据和系统资源。以下是对大纲中各个知识点的详细说明: 1. 输入校验:这是防止恶意输入的第一道防线,包括长度校验和特殊字符...
### CISP-PTE渗透测试工程师知识体系大纲解析 #### 一、CISP-PTE知识体系框架结构 **CISP-PTE(注册信息安全专业人员-渗透测试工程师)**是中国信息安全测评中心推出的针对渗透测试领域的专业认证。该认证旨在培养...
### .NET技术学习大纲 #### 第一部分:.Net基础 - **.Net基础**:学习.NET平台的基础概念,包括数据类型、变量、运算符、分支结构、循环结构、方法等基本编程元素。此外,理解反编译器的作用,掌握递归的概念及其...
这样可以在流程图清晰的基础上,根据测试大纲快速设计出有效的测试用例。 #### 二、页面元素测试 除了流程测试之外,还需要关注页面元素的测试。主要包括以下几个方面: 1. **页面响应性**:检查页面加载速度是否...
包含以下实验:MyEclipse+Tomcat开发环境的安装与配置、HTML+CSS+JavaScript页面的设计、Servlet的应用测试、Cookie对象与Session对象的应用、JSP的基本语法练习、EL表达式和JSTL标签库的应用、MySQL数据库与表格的...
DestinationRule是另一个关键组件,它用于定义如何路由到特定的后端服务实例,比如蓝绿部署、金丝雀发布或A/B测试。蓝绿部署允许在一个版本服务完全替换另一个版本前,逐步将流量切换,而金丝雀发布则是在新版本服务...
8. **安全和会话管理**:学习者需要理解如何保护Web应用,包括身份验证、授权和加密,以及如何使用session和cookie来管理用户会话。 模拟试题将测试以上各个领域的知识,每份包含50题,共计100题。试题可能涵盖理论...
"《网站开发技术》教学大纲(本科)" 网站开发技术 网站开发技术是一门构建Internet信息资源站、拓展Internet范围信息共享及实现Internet分布式应用的课程。通过该课程学习,学生应能掌握网站相关基本概念、网站工作...
- **Cookie的应用**:个性化推荐、广告追踪等。 ##### 8. 系统实现与维护 - **实现阶段任务**:编码、测试、部署等。 - **系统测试**:单元测试、集成测试、系统测试等。 - **系统切换**:直接切换、并行运行等。 ...
- **DAO设计模式**:理解其在数据访问层的重要性,提高代码复用性和可测试性。 - **连接池**:了解连接池的概念和作用,以及如何在Web应用中配置和使用。 - **数据源配置**:在`web.xml`中声明数据源,以及在...
2. 课程管理:教师可以发布课程信息,包括课程简介、教学大纲、课件资源等。学生则可以浏览、搜索并选择感兴趣的课程进行学习。 3. 在线测试:为检验学生学习效果,系统可提供在线测试功能。教师能创建试题库,设置...
2. 实验过程中,学生需要启动集成开发环境,调试程序,测试和运行代码。 3. 实验结束后,整理实验报告。 实验项目涵盖了网页开发的各个方面,例如: 1. 创建基本的网页,包括超链接和图像,让学生熟悉基本的HTML...
MVC(Model-View-Controller)模式则更适合于追求代码分离和测试驱动开发的开发者。Web API则专为构建RESTful服务而设计,适用于构建数据驱动的Web应用程序。 二、C#语言 C#是ASP.NET的主要编程语言,它是一种面向...
- **课程管理**:管理员可添加、编辑和删除课程,设置课程详情如简介、讲师信息、课程大纲等。 - **学习路径**:系统可创建课程学习路径,指导学生按顺序完成课程。 - **讨论区**:学员可以在每个课程下进行讨论...
该网站集成了丰富的教学资源,包括课程大纲、讲义、习题、在线测试以及论坛互动等功能,为学生和教师提供了一个互动式的在线学习平台。 首先,我们要理解JSP的基础知识。JSP是一种动态网页技术,允许开发者在HTML...
5. **测试**:JUnit测试类,用于验证代码的正确性。 6. **资源文件**:图片、图标、样式表、字体等静态内容,用于美化用户界面。 7. **构建工具**:可能是Maven或Gradle的配置文件,用于自动化构建和依赖管理。 8. *...
3. **状态管理**:ASP.NET提供了多种状态管理机制,如ViewState、Session、Cookie等,以确保在页面间保持用户数据。 4. **页面生命周期**:ASP.NET页面有一个清晰的生命周期,包括初始化、加载、验证、呈现和卸载等...
10. **单元测试和持续集成**:利用PHPUnit进行单元测试,了解Jenkins等工具进行持续集成。 【学习资源】: 压缩包内的“PHP视频教程基础班和就业班百度云资料.txt”可能包含详细的课程大纲、课件链接、练习题目或者...