图书介绍

软件安全测试艺术【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

软件安全测试艺术
  • (美)CHRISWYSOPALLUCASNELSONDINODAIZOVIELFRIEDEDUSTIN著;程永敬等译 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111219732
  • 出版时间:2007
  • 标注页数:213页
  • 文件大小:25MB
  • 文件页数:240页
  • 主题词:软件可靠性-测试

PDF下载


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

下载说明

软件安全测试艺术PDF格式电子书版下载

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

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

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

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

图书目录

第一部分 综述2

第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.1 SQL注入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.11 SSDL与系统开发生命周期的关系56

3.12 小结58

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

4.1 信息搜集61

4.1.1 与架构师会谈62

4.1.2 运行时检查63

4.2 Windows平台63

4.3 UNIX痕迹检查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

第二部分 攻击演练90

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

6.1 网络90

6.2 端口发现91

6.2.1 netstat和本地工具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.4 Cookie搜集111

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

7.6 跨站执行脚本115

7.7 结论118

7.8 小结118

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

8.1 绕过授权120

8.2 SQL注入121

8.2.1 SQL注入基础121

8.2.2 数据库模式探索126

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

8.3 上传可执行内容133

8.4 文件枚举135

8.5 源代码泄露漏洞138

8.6 HTTP中的隐藏字段140

8.7 结论143

8.8 小结143

第9章 使用WebScarab144

9.1 WebScarab代理144

9.2 结论156

9.3 小结156

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

10.1 协议发现158

10.2 SOAP和WSDL161

10.3 SOAPpy库163

10.4 结论170

10.5 小结170

第11章 本地故障注入171

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

11.1.1 Windows NT对象172

11.1.2 UNIX上的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.10 Immunity公司的ShareFuzz187

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

11.12 CLI Fuzz188

11.13 共享内存192

11.14 小结194

第三部分 分析198

第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

热门推荐