软件安全测试艺术

软件安全测试艺术

(美) 威斯波尔 (Wysopal,C.) 等, 著

出版社:机械工业出版社

年代:2007

定价:20.0

书籍简介:

本书分为三个主要部分。第一部分讨论了一些现实情况,主要介绍漏洞是怎样藏到软件中来的、安全的软件开发生命周期、基于风险的安全测试和分析的滤光器:白盒、灰盒和黑盒测试;第二部分详细讨论了如何进行攻击。诸如常见的网络故障注入、应用程序攻击、代理服务器以及本地错误注入等;第三部分给出一种分析方法,并展示了如何判定漏洞的可利用性。

作者介绍:

Chris Wysopal,是Veracode公司CTO。曾任@stake公司的研发副总。他领导了无线、架构及应用程序安全工具的开发。他是LophtCrack密码审计攻击的合作开发者。他曾在美国国会进行过安全声明,并曾在Black Hat大会和西点军校讲演。   Lucas Nelson,是Symantec公司的纽约地区技术经理,他领导着Semantec的Application Security Center Of Excellence(卓越应用程序安全中心),该中心主要开发一些应用程序安全实践和指导原则,并对新员工进行应用程序测试方法的培训。   Dino Dai Zovi,是Matasano安全公司的主要成员,为企业和供应商提供软件安全化服务。他是在MacOSX、802.11以及硬件可视化方面受人尊敬的研究人员和权威。Dino经常出席包括Black Hat和Microsoft公司的BlueHat等大会。   Elfriede Dustin,是《Effective Software Testing》一书的作者,也是《Automated Software Testing》和《Quality Web Systems》这两本书的第一作者。他是自动化测试生命周期方法(ATLM)的创始人。

书籍目录:

本书的“美誉”

译者序

序言

前言

致谢

关于作者

第一部分综述

第1章从传统软件测试转变2

1.1安全测试和传统软件测试的对比4

1.2安全测试转变的范式6

1.3高级安全测试策略7

1.4像攻击者一样思考9

1.4.1排定工作的优先级10

1.4.2在侦测工作中使用辅助工具11

1.4.3从漏洞知识中学习12

1.5小结13

第2章漏洞是怎样藏到软件中的15

2.1设计漏洞与实现漏洞16

2.2常见的安全设计问题17

2.2.1密码技术使用的败笔17

2.2.2对用户及其许可权限进行

跟踪19

2.2.3有缺陷的输入验证20

2.2.4薄弱的结构性安全21

2.2.5其他设计缺陷23

2.3编程语言的实现问题24

2.3.1编译型语言:C/C++24

2.3.2解释型语言:Shell脚本

和PHP32

2.3.3虚拟机语言:Java和C#35

2.4平台的实现问题36

2.4.1问题:符号链接37

2.4.2问题:目录遍历37

2.4.3问题:字符转换38

2.5常见的应用程序安全实现问题39

2.5.1SQL注入39

2.5.2跨站点执行脚本40

2.6开发过程中的问题41

2.6.1安全需求和前提条件的文档

记录贫乏41

2.6.2交流和文档的匮乏42

2.6.3在开发过程中缺少安全过程42

2.7部署上的薄弱性43

2.8漏洞根源分类法44

2.9 小结44

第3章安全的软件开发生命周期46

3.1将安全测试融入到软件开发

生命周期中47

3.2阶段1:安全原则、规则

及规章49

3.3阶段2:安全需求:攻击用例51

3.4阶段3:架构和设计评审/威胁建模53

3.5阶段4:安全的编码原则53

ⅩⅩⅣ3.6阶段5:白盒/黑盒/灰盒测试54

3.7阶段6:判定可利用性54

3.8安全地部署应用程序55

3.9补丁管理:对安全漏洞进行管理55

3.10角色和职责56

3.11SSDL与系统开发生命周期的

关系56

3.12小结58

第4章基于风险的安全测试61

4.1信息搜集61

4.1.1与架构师会谈62

4.1.2运行时检查63

4.2Windows平台63

4.3UNIX痕迹检查67

4.4完成信息搜集工作69

4.5建模过程69

4.5.1识别威胁路径70

4.5.2识别威胁73

4.5.3识别漏洞74

4.5.4将与漏洞相关的风险进行

分级75

4.6判定可利用性76

第5章白盒、黑盒和灰盒测试77

5.1白盒测试77

5.2黑盒测试78

5.3灰盒测试78

5.4建立用于测试的实验室79

5.4.1侦探程序80

5.4.2嗅探器80

5.4.3调试器81

5.4.4 硬件81

5.4.5商业的测试设备81

5.4.6网络硬件82

5.5开展应用程序攻击82

5.5.1实验室环境82

5.5.2网络攻击83

第二部分攻击演练

第6章常见的网络故障注入90

6.1网络90

6.2端口发现91

6.2.1netstat和本地工具91

6.2.2端口扫描94

6.3代理95

6.3.1最简单的代理:随机TCP/UDP

故障注入程序96

6.3.2构建故障注入数据集100

6.3.3中间人代理103

6.4结论104

6.5小结104

第7章会话攻击106

7.1将要测试应用程序作为攻击目标106

7.2身份鉴别和授权106

7.3对会话和资源ID进行攻击107

7.4Cookie搜集111

7.5判断SID的长度:阶段步进分析113

7.6跨站执行脚本115

7.7 结论118

7.8小结118

第8章Web应用程序的常见问题119

8.1绕过授权120

8.2SQL注入121

8.2.1SQL注入基础121

8.2.2数据库模式探索126

8.2.3在SQL服务器上执行命令130

8.3上传可执行内容133

8.4文件枚举135

8.5源代码泄露漏洞138

8.6HTTP中的隐藏字段140

8.7结论143

8.8 小结143

第9章使用WebScarab144

9.1WebScarab代理144

9.2结论156

9.3小结156

第10章实现定制的侦探工具158

10.1协议发现158

10.2SOAP和WSDL161

10.3SOAPpy库163

10.4结论170

10.5小结170

第11章本地故障注入171

11.1本地资源和进程间通信171

11.1.1Windows NT对象172

11.1.2UNIX上的setuserid进程

和进程间通信174

11.2对本地应用程序进行威胁建模175

11.2.1列举Windows应用程序资源176

11.2.2列举UNIX应用程序资源176

11.3测试可执行脚本的ActiveX对象接口178

11.4识别可“安全”执行脚本对象179

11.5测试对象接口181

11.5.1手工的接口测试181

11.5.2自动的ActiveX接口测试183

11.5.3 对崩溃进行评估183

11.6对文件格式进行侦探184

11.7文件破坏测试185

11.8文件破坏自动化185

11.9对命令行工具进行侦探186

11.10Immunity公司的ShareFuzz187

11.11暴力的二进制测试程序188

11.12CLI Fuzz188

11.13共享内存192

11.14小结194

第三部分分析

ⅩⅩⅤ第12章判定可利用性198

12.1漏洞分级198

12.1.1时间198

12.1.2可靠性/再现性198

12.1.3访问199

12.1.4定位200

12.2内存侵害和任意代码执行201

12.3计算机体系结构202

12.3.1栈203

12.3.2栈缓存区溢出205

12.3.3堆205

12.4判定可利用性208

12.4.1进程崩溃转储208

12.4.2被控制的内存和寄存器208

12.4.3缓解因素:栈和堆保护212

12.5更多资料213

内容摘要:

本书深入讲解软件安全方面最新的实用技术,用于在破坏之前预防并识别软件的安全问题。
  本书作者具有近十年应用和渗透测试方面的经验,从简单的“验证”性测试方法讲起,进而介绍先发制人的“攻击”性测试方法。作者首先系统地回顾了软件中出现的设计和编码方面的安全漏洞,并提供了避免出现这些安全漏洞的实用指导。然后,向读者展示了定制用户化软件调试工具的方法,用以对任何程序的各个方面独立地进行测试,之后对结果进行分析,从而识别可被利用的安全漏洞。
  主要内容
  ●如何从软件攻击者的角度来思考从而增强防御策略。
  ●兼顾成本效益,将安全测试整合到软件开发的生命周期。
  ●基于最高风险领域,使用威胁模型来排定测试的优先顺序。
  ●构建用于进行白盒测试、灰盒测试和黑盒测试的软件测试实验。
  ●针对每个测试工程,选用恰当的工具。
  ●执行当前主要的软件攻击,从故障注入到缓冲区溢出。
  ●哪些缺陷在现实世界中最可能被攻击者利用。
  本书是每一个负责软件安全的技术人员必备的读物:无论是测试人员、QA专家、安全从业者、开发人员,还是其他相关的人员。对于IT管理人员,本书提供了经实践检验的行动计划,用于实现有效安全测试或加强现有测试流程。

书籍规格:

书籍详细信息
书名软件安全测试艺术站内查询相似图书
9787111219736
如需购买下载《软件安全测试艺术》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位机械工业出版社
版次1版印次1
定价(元)20.0语种简体中文
尺寸26装帧平装
页数 180 印数 3000

书籍信息归属:

软件安全测试艺术是机械工业出版社于2007.08出版的中图分类号为 TP311.5 的主题关于 软件可靠性-测试 的书籍。