图书介绍

模糊测试—强制性安全漏洞发掘2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

模糊测试—强制性安全漏洞发掘
  • (美)斯顿(Sutton 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111257554
  • 出版时间:2009
  • 标注页数:363页
  • 文件大小:51MB
  • 文件页数:384页
  • 主题词:软件-测试

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

模糊测试—强制性安全漏洞发掘PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 背景1

第1章 安全漏洞发掘方法学1

1.1 白盒测试1

1.1.1 源代码评审1

1.1.2 工具和自动化3

1.1.3 优点和缺点5

1.2 黑盒测试5

1.2.1 人工测试6

1.2.2 自动测试或模糊测试7

1.2.3 优点和缺点8

1.3 灰盒测试9

1.3.1 进制审核9

1.3.2 自动化的二进制审核11

1.3.3 优点和缺点12

1.4 小结12

第2章 什么是模糊测试13

2.1 模糊测试的定义13

2.2 模糊测试的历史14

2.3 模糊测试阶段17

2.4 模糊测试的局限性和期望18

2.4.1 访问控制缺陷18

2.4.2 设计逻辑不良19

2.4.3 后门19

2.4.4 内存破坏19

2.4.5 多阶段安全漏洞20

2.5 小结20

第3章 模糊测试方法和模糊器类型21

3.1 模糊测试方法21

3.1.1 预先生成测试用例21

3.1.2 随机方法21

3.1.3 协议变异人工测试22

3.1.4 变异或强制性测试23

3.1.5 自动协议生成测试23

3.2 模糊器类型23

3.2.1 本地模糊器24

3.2.2 远程模糊器25

3.2.3 内存模糊器27

3.2.4 模糊器框架28

3.3 小结29

第4章 数据表示和分析30

4.1 什么是协议30

4.2 协议域31

4.3 简单文本协议32

4.4 二进制协议32

4.5 网络协议35

4.6 文件格式36

4.7 常见的协议元素38

4.7.1 名字-值对39

4.7.2 块标识符39

4.7.3 块长度39

4.7.4 校验和39

4.8 小结39

第5章 有效模糊测试的需求40

5.1 可重现性和文档记录40

5.2 可重用性41

5.3 过程状态和过程深度42

5.4 跟踪、代码覆盖和度量44

5.5 错误检测44

5.6 资源约束45

5.7 小结46

第二部分 目标和自动化第6章 自动化测试和测试数据生成47

6.1 自动化测试的价值47

6.2 有用的工具和库48

6.2.1 ETHEREAL/WIRESHARK48

6.2.2 LIBDASM和LIBDISASM48

6.2.3 LIBNET/LIBNETNT49

6.2.4 LIBPCAP49

6.2.5 METRO PACKET LIBRARY49

6.2.6 PTRACE49

6.2.7 PYTHON EXTENSIONS49

6.3 编程语言的选择50

6.4 测试数据生成和模糊启发式50

6.4.1 整型值51

6.4.2 字符串重复53

6.4.3 字段分隔符53

6.4.4 格式化字符串55

6.4.5 字符翻译55

6.4.6 目录遍历56

6.4.7 命令注入56

6.5 小结57

第7章 环境变量和参数的模糊测试58

7.1 本地化模糊测试介绍58

7.1.1 命令行参数58

7.1.2 环境变量58

7.2 本地化模糊测试准则60

7.3 寻找目标程序60

7.4 本地化模糊测试方法63

7.5 枚举环境变量63

7.6 自动化的环境变量测试64

7.7 检测问题65

7.8 小结67

第8章 环境变量和参数的模糊测试:自动化68

8.1 iFUZZ本地化模糊器的特性68

8.2 iFUZZ的开发69

8.3 iFUZZ的开发语言73

8.4 实例研究73

8.5 益处和改进的余地74

8.6 小结74

第9章 Web应用程序和服务器模糊测试75

9.1 什么是Web应用程序模糊测试75

9.2 目标应用77

9.3 测试方法78

9.3.1 建立目标环境78

9.3.2 输入79

9.4 漏洞88

9.5 异常检测90

9.6 小结91

第10章 Web应用程序和服务器的模糊测试:自动化92

10.1 Web应用模糊器92

10.2 WebFuzz的特性94

10.2.1 请求94

10.2.2 模糊变量95

10.2.3 向应96

10.3 必要的背景知识97

10.3.1 识别请求97

10.3.2 漏洞检测98

10.4 WebFuzz的开发100

10.4.1 开发方法100

10.4.2 开发语言的选择100

10.4.3 设计100

10.5 实例研究106

10.5.1 目录遍历106

10.5.2 溢出107

10.5.3 SQL注入109

10.5.4 XSS脚本111

10.6 益处和改进的余地114

10.7 小结114

第11章 文件格式模糊测试115

11.1 目标应用115

11.2 方法116

11.2.1 强制性或基于变异的模糊测试117

11.2.2 智能强制性或基于生成的模糊测试118

11.3 输入118

11.4 漏洞119

11.4.1 拒绝服务119

11.4.2 整数处理问题119

11.4.3 简单的栈和堆溢出120

11.4.4 逻辑错误121

11.4.5 格式化字符串121

11.4.6 竞争条件121

11.5 漏洞检测121

11.6 小结122

第12章 文件格式模糊测试:UNIX平台上的自动化测试123

12.1 NOTSPIKEFILE和SPIKEFILE123

12.2 开发方法124

12.2.1 异常检测引擎124

12.2.2 异常报告(异常检测)124

12.2.3 核心模糊测试引擎125

12.3 有意义的代码片段126

12.3.1 通常感兴趣的UNIX信号127

12.3.2 不太感兴趣的UNIX信号128

12.4 僵死进程128

12.5 使用的注意事项130

12.5.1 ADOBE ACROBAT131

12.5.2 REALNETWORKS REALPLAYRE131

12.6 实例研究:REALPLAYER REALPIX格式化字符串漏洞131

12.7 语言133

12.8 小结133

第13章 文件格式模糊测试:Windows平台上的自动化测试134

13.1 Windows文件格式漏洞134

13.2 FileFuzz的特性136

13.2.1 创建文件136

13.2.2 应用程序执行138

13.2.3 异常检测138

13.2.4 保存的审核139

13.3 必要的背景知识140

13.4 FileFuzz的开发142

13.4.1 开发方法143

13.4.2 开发语言的选择143

13.4.3 设计143

13.5 实例研究149

13.6 益处和改进的余地152

13.7 小结152

第14章 网络协议模糊测试153

14.1 什么是网络协议模糊测试153

14.2 目标应用155

14.2.1 数据链路层156

14.2.2 网络层156

14.2.3 传输层157

14.2.4 会话层157

14.2.5 表示层157

14.2.6 应用层157

14.3 测试方法158

14.3.1 强制性或基于变异的模糊测试158

14.3.2 智能强制性模糊测试和基于生成的模糊测试158

14.3.3 修改的客户端变异模糊测试159

14.4 错误检测159

14.4.1 人工方法(基于调试器)160

14.4.2 自动化方法(基于代理)160

14.4.3 其他方法160

14.5 小结160

第15章 网络协议模糊测试:UNIX平台上的自动化测试161

15.1 使用SPIKE进行模糊测试161

15.1.1 选择测试目标161

15.1.2 协议逆向工程162

15.2 SPIKE 101164

15.2.1 模糊测试引擎164

15.2.2 通用的基于行的TCP模糊器165

15.3 基于块的协议建模166

15.4 SPIKE的额外特性167

15.4.1 特定于协议的模糊器167

15.4.2 特定于协议的模糊测试脚本167

15.4.3 通用的基于脚本的模糊器168

15.5 编写SPIKE NMAP模糊器脚本168

15.6 小结171

第16章 网络协议模糊测试:Windows平台上的自动化测试172

16.1 ProtoFuzz的特性172

16.1.1 包结构172

16.1.2 捕获数据173

16.1.3 解析数据173

16.1.4 模糊变量174

16.1.5 发送数据175

16.2 必要的背景知识175

16.2.1 错误检测175

16.2.2 协议驱动程序175

16.3 ProtoFuzz的开发176

16.3.1 开发语言的选择176

16.3.2 包捕获库176

16.3.3 设计177

16.4 实例研究181

16.5 益处和改进的余地182

16.6 小结183

第17章 Web浏览器模糊测试184

17.1 什么是Web浏览器模糊测试184

17.2 目标185

17.3 方法185

17.3.1 测试方法185

17.3.2 输入186

17.4 漏洞193

17.5 错误检测194

17.6 小结195

第18章 Web浏览器的模糊测试:自动化196

18.1 组件对象模型的背景知识196

18.1.1 在Nutshell中的发展历史196

18.1.2 对象和接口197

18.1.3 ActiveX197

18.2 模糊器的开发199

18.2.1 枚举可加载的ActiveX控件200

18.2.2 属性、方法、参数和类型203

18.2.3 模糊测试和监视207

18.3 小结208

第19章 内存数据的模糊测试209

19.1 内存数据模糊测试的概念及实施该测试的原因209

19.2 必需的背景知识210

19.3 究竟什么是内存数据模糊测试213

19.4 目标214

19.5 方法:变异循环插入214

19.6 方法:快照恢复变异215

19.7 测试速度和处理深度216

19.8 错误检测217

19.9 小结217

第20章 内存数据的模糊测试:自动化219

20.1 所需要的特性集219

20.2 开发语言的选择220

20.3 Windows调试API222

20.4 将其整合在一起225

20.4.1 如何在特定点将“钩子”植入目标进程226

20.4.2 如何处理进程快照和恢复228

20.4.3 如何选择植入钩子的点231

20.4.4 如何对目标内存空间进行定位和变异231

20.5 一个最好的新工具PyDbg231

20.6 一个构想的示例233

20.7 小结244

第三部分 高级模糊测试技术第21章 模糊测试框架245

21.1 模糊测试框架的概念245

21.2 现有框架247

21.2.1 antiparser247

21.2.2 Dfuz249

21.2.3 SPIKE252

21.2.4 Peach255

21.2.5 通用模糊器257

21.2.6 Autodafé259

21.3 定制模糊器的实例研究:Shockwave-Flash260

21.3.1 SWF文件的建模261

21.3.2 生成有效的数据270

21.3.3 对环境进行模糊测试271

21.3.4 测试方法272

21.4 模糊测试框架Sulley272

21.4.1 Sulley目录结构272

21.4.2 数据表示274

21.4.3 会话282

21.4.4 事后验证阶段286

21.4.5 一个完整的实例分析290

21.5 小结295

第22章 自动化协议解析297

22.1 模糊测试存在的问题是什么297

22.2 启发式技术299

22.2.1 代理模糊测试299

22.2.2 改进的代理模糊测试300

22.2.3 反汇编启发式规则302

22.3 生物信息学303

22.4 遗传算法305

22.5 小结309

第23章 模糊器跟踪310

23.1 我们究竟想要跟踪什么310

23.2 二进制代码可视化和基本块311

23.2.1 CFG312

23.2.2 CFG示例312

23.3 构造一个模糊器跟踪器313

23.3.1 刻画目标特征314

23.3.2 跟踪314

23.3.3 交叉引用316

23.4 对一个代码覆盖工具的分析318

23.4.1 PStalker设计概览319

23.4.2 数据源320

23.4.3 数据探查321

23.4.4 数据捕获321

23.4.5 局限性321

23.4.6 数据存储322

23.5 实例研究324

23.5.1 测试策略325

23.5.2 测试方法327

23.6 益处和改进的余地330

23.7 小结333

第24章 智能故障检测334

24.1 基本的错误检测方法334

24.2 我们所要搜索的内容336

24.3 选择模糊值时的注意事项340

24.4 自动化的调试器监视341

24.4.1 一个基本的调试器监视器341

24.4.2 一个更加高级的调试器监视器344

24.5 调试器在应用程序前先看到的异常和调试器再次看到程序未捕获的异常的比较347

24.6 动态二进制插装348

24.7 小结350

第四部分 展望351

第25章 汲取的教训351

25.1 软件开发生命周期351

25.1.1 分析353

25.1.2 设计353

25.1.3 编码354

25.1.4 测试354

25.1.5 维护354

25.1.6 在SDLC中实现模糊测试355

25.2 开发者355

25.3 QA研究者355

25.4 安全问题研究者356

25.5 小结356

第26章 展望357

26.1 商业工具357

26.1.1 安全性测试工具beSTORM357

26.1.2 BreakingPoint系统BPS-1000358

26.1.3 Codenomicon358

26.1.4 GLEG ProtoVer Professional360

26.1.5 安全性测试工具Mu-4000361

26.1.6 Security Innovation Holodeck361

26.2 发现漏洞的混合方法362

26.3 集成的测试平台362

26.4 小结363

热门推荐