内容简介
本书分为五个部分:第一部分提供了本书的概述并阐明了本书的主要框架。第二部分为“测试计划”,并涉及围绕着计划测试效果的一些相关事项。第三部分“测试设计”是本书的重点,大部分内容为详细列举的各种各样的可选测试,这一部分包括了第3、4、5、6、7、8章。第四部分是“测试实施”,讲述如何地执行这些测试,即由谁来实际做这些工作、需要使用什么工具以及以什么顺序执行测试(排列测试优先级),这部分包括第9章和第10章。在全书的,还附有丰富的附录,提供了大量的背景知识。 ? ? 本书使用了的材料,书中所列各种测试方法都有实际的步骤及具体的项目,因而操作性较强,是一本不可多得的好书。本书适合专业的网站安全评估人员阅读,对于各公司的CIO、系统管理员以及广大的网络技术研究者也很有参考价值。 ? ? 计划安全测试的效果:策略、测试团队以及工具 ? ? 如何定义项目的范围 ? ? 测试网络安全和系统软件的配置 ? ? 检查Web应用的安全性漏洞 ? ? 评估一个组织如何有效防范那些使用社会工程、垃圾搜寻、内部同谋以及物理破坏方式的攻击 ? ? 有关对那些用来混淆入侵者的设计进行测试的挑战 ? ? 使用风险分析来关注对组织具有威胁的领域的测试效果。
目录
第一部分 本 书 概 述第1章 概述 31.1 本书的目的 41.2 本书的测试方法 51.3 本书的组织 61.4 本书所用的术语 71.4.1 黑客. 破解者. 脚本玩家及心怀不满的内部人员 71.4.2 测试词汇 81.5 本书的读者对象 101.6 小结 10第二部分 计划测试效果第2章 测试计划 132.1 需求 132.1.1 澄清要求 132.1.2 安全策略 142.2 测试计划的结构 152.2.1 测试计划标识 172.2.2 介绍 172.2.3 项目范围 172.2.4 变动控制过程 182.2.5 待测的特性 182.2.6 不测的特性 192.2.7 方法 192.2.8 通过/未通过标准 222.2.9 暂停标准和重置要求 232.2.10 测试交付物 232.2.11 环境需要 272.2.12 配置管理 272.2.13 责任 292.2.14 提供人员和培训需要 302.2.15 进度 312.2.16 项目结束 312.2.17 预计风险和应急措施 322.2.18 情况 332.2.19 假设 332.2.20 约束和依赖 332.2.21 简写和定义 332.2.22 引用 342.2.23 批准 342.3 主测试计划 342.4 小结 35第三部分 测 试 设 计第3章 网络安全 393.1 界定方法 403.2 界定样例 413.2.1 旅馆连锁店 413.2.2 家具制造厂 423.2.3 会计公司 423.2.4 搜索引擎 433.2.5 测试实验室 433.2.6 暂停标准 443.3 设备清单 443.4 网络拓扑 463.5 确认网络设计 473.5.1 网络设计修订 483.5.2 网络设计检验 483.6 核对设备清单 493.6.1 物理位置 493.6.2 未授权的设备 503.6.3 网络地址 513.7 核对网络拓扑 533.7.1 网络连接 533.7.2 设备可访问性 543.8 补充的网络安全 563.8.1 网络地址破坏 563.8.2 安全的LAN通信 583.8.3 无线网段 593.8.4 DoS攻击 593.9 小结 62第4章 系统软件安全 654.1 安全认证 654.2 补丁 664.3 强化 694.4 屏蔽 704.5 服务 724.6 目录和文件 774.7 用户ID与密码 794.7.1 手工猜测用户ID和密码 804.7.2 自动猜测用户ID和密码 824.7.3 经由社会工程获得信息 844.7.4 心怀不满的雇员策划违法行为 844.8 用户组 854.9 小结 85第5章 客户端应用程序安全 875.1 应用程序攻击点 875.2 客户端识别和验证 885.2.1 基于用户知道的信息:knows-something方法 895.2.2 基于用户拥有的东西:has-something方法 895.2.3 基于用户是什么的特性:生物测定学方法 925.3 用户许可 935.3.1 功能限制 935.3.2 数据限制 945.3.3 功能和数据交叉限制 945.4 测试非法导航 955.4.1 HTTP报头分析 955.4.2 HTTP报头期满 955.4.3 客户端应用程序代码 965.4.4 Session ID 965.4.5 导航工具 965.5 客户端数据 975.5.1 cookie 985.5.2 hidden字段 995.5.3 URL 995.5.4 本地数据文件 1005.5.5 Windows注册表 1005.6 安全的客户端传输 1005.6.1 数字证书 1015.6.2 加密强度 1015.6.3 混合加密和未加密内容 1025.6.4 避免加密瓶颈 1035.7 移动式应用程序代码 1045.7.1 ActiveX控件 1055.7.2 Java applet 1055.7.3 客户端脚本 1075.7.4 探测特洛伊木马移动式代码 1075.8 客户端安全 1105.8.1 防火墙 1105.8.2 浏览器安全设置 1115.8.3 客户端自适应代码 1135.8.4 客户端嗅探 1145.9 小结 114第6章 服务器端应用程序安全 1176.1 CGI 1176.1.1 语言选择 1186.1.2 CGI与输入数据 1196.1.3 许可和目录 1206.1.4 可扩充性 1216.2 第三方CGI脚本 1226.3 服务器端包含 1236.4 动态代码 1276.4.1 查看模板 1276.4.2 单点失败 1286.4.3 系统命令 1286.4.4 示范脚本 1286.4.5 有用的错误消息 1286.5 应用程序代码 1296.5.1 可编译源代码 1296.5.2 不可编译的源代码 1296.5.3 版权 1306.5.4 有用的错误消息 1316.5.5 旧版本 1316.6 输入数据 131