当前位置:首页 > 工业技术
软件安全
软件安全

软件安全PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:任伟编著
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2010
  • ISBN:9787118069037
  • 页数:217 页
图书介绍:本书内容覆盖大纲要求主要包括:软件安全的概念,软件缺陷和漏洞产生的机理,恶意代码的基本机理和防范手段,软件安全测试。同时,在部分章节加入适用性强,内容较新的小节。
《软件安全》目录
标签:编著 软件

第1章 软件安全概述 1

1.1 软件的概念 1

1.1.1 软件的定义 1

1.1.2 软件的分类 1

1.2 软件安全的概念 2

1.3 软件安全的知识体系 9

1.4 软件安全与其他相关领域的关系 10

1 4.1 软件工程 10

1.4.2 软件保证 11

1 4.3 软件质量 11

1.4.4 软件可靠性 14

1.4.5 软件容错 15

1 4.6 应用安全 15

1.5 专有名称及定义 16

1.6 软件安全工具简介 19

1.6.1 反汇编器 19

1.6.2 调试器 21

1.6.3 反编译器 24

1.6.4 系统监控工具 24

1.6.5 修补和转储工具 28

小结 33

参考文献 33

习题 34

第2章 预备知识 35

2.1 Windows API编程简介 35

2.1.1 Windows应用程序的组成 35

2.1.2 Windows API 35

2.1.3 Windows编程的基本概念 37

2.1.4 Win32数据类型、句柄、命名法 38

2.1.5 函数指针 41

2.1.6 消息结构、类型与机制 41

2.2 Win32汇编语言程序设计简介 48

2.2.1 80x86处理器寄存器 48

2.2.2 IA-32指令系统 50

2.2.3 Win32汇编程序举例 51

2.2.4 函数调用时栈的变化 53

2.3 PE文件格式布局及其装载 60

2.3.1 PE文件结构布局 60

2.3.2 PE文件中的地址概念 61

2.3.3 PE文件内存映射方法 63

2.3.4 载入并执行PE文件的过程 64

2.3.5 PE文件执行时的内存布局 65

小结 66

参考文献 66

习题 66

第3章 软件缺陷和漏洞 67

3.1 缺陷和漏洞简介 67

3.1.1 缺陷和漏洞的定义 67

3.1.2 软件缺陷存在的原因 67

3.1.3 软件安全漏洞存在的原因 68

3.2 软件漏洞产生的机理 68

3.2.1 栈溢出漏洞 69

3.2.2 堆溢出漏洞 83

3.2.3 格式化串漏洞 88

3.2.4 SQL注入漏洞 94

3.3 漏洞的分类 95

小结 96

参考文献 96

扩展阅读建议 97

习题 97

研究参考题 97

第4章 恶意代码分析 98

4.1 恶意软件的分类和区别 98

4.2 病毒的机理与防治 100

4.2.1 病毒的定义 100

4.2.2 病毒的分类 101

4.2.3 文件型病毒的感染技术 102

4.2.4 病毒的检测 109

4.3 蠕虫的机理与防治 112

4.3.1 蠕虫和病毒的区别及联系 112

4.3.2 蠕虫的分类 113

4.3.3 蠕虫与软件漏洞的关系 113

4.3.4 蠕虫的基本结构 114

4.3.5 蠕虫的工作方式 115

4.3.6 蠕虫技术的发展 115

4.3.7 蠕虫的防治与检测 116

4.4 木马的机理与防治 117

4.4.1 木马的定义 117

4.4.2 木马的结构 117

4.4.3 木马实施网络入侵的基本步骤 118

4.4.4 木马的基本原理 119

4.4.5 木马的传播方式 120

4.5 其他恶意代码的机理 120

4.5.1 移动代码 120

4.5.2 广告软件和间谍软件 121

4.5.3 粘人软件 121

4.5.4 网页恶意脚本程序 121

4.5.5 即时通信病毒 121

4.5.6 手机病毒 122

4.5.7 宏病毒 123

4.6 恶意代码分析技术 124

4.6.1 分析前的准备 124

4.6.2 分析过程(脱壳与动态分析) 124

小结 128

参考文献 128

扩展阅读建议 128

习题 129

研究思考题 129

第5章 安全软件开发生命周期 130

5.1 软件开发生命周期概述 130

5.1.1 软件过程 130

5.1.2 软件生存周期 131

5.2 传统软件开发生命周期 132

5.3 安全软件开发生命周期 135

5.4 其他安全软件开发生命周期模型 136

5.4.1 微软可信计算安全开发生命周期 137

5.4.2 安全软件开发的小组软件过程 137

5.4.3 安全敏捷开发 139

5.4.4 软件可信成熟度模型 140

5.4.5 软件安全框架 141

5.4.6 BSI成熟模型 143

小结 144

参考文献 144

扩展阅读建议 144

习题 144

研究思考题 145

第6章 软件体系安全分析 146

6.1 风险分析简介 146

6.2 基于标准的风险分析 147

6.2.1 NIST ASSET 147

6.2.2 CMU SEI的OCTAVE 147

6.2.3 信息系统审核与控制协会的COBIT 147

6.2 STRIDE模型 148

6.3.1 STRIDE威胁模型 148

6.3.2 威胁建模的过程 149

小结 151

参考文献 151

习题 151

第7章 软件安全需求分析 152

7.1 安全规则与规章简介 152

7.1.1 OWASP的WASS 152

7.1.2 HIPPA 152

7.1.3 FISMA 153

7.2 软件安全原则 154

7.3 软件安全相关标准 160

7.4 安全需求工程 161

7.4.1 安全需求的基本概念 161

7.4.2 安全需求分析 164

7.4.3 安全需求工程工具 166

7.4.4 基于滥用和误用案例的安全需求 166

小结 167

参考文献 167

习题 167

研究思考题 168

第8章 安全编码 169

8.1 安全编码原则 169

8.1.1 CERT安全编码建议 169

8.1.2 CERT C语言的安全编码标准 170

8.1.3 避免缓冲区溢出 170

8.2 源代码审核 173

8.2.1 源代码审核概述 173

8.2.2 代码审核方面的工具 174

8.3 二进制代码审核 176

小结 177

参考文献 177

扩展阅读建议 178

习题 178

研究思考题 178

第9章 软件安全测试 179

9.1 传统软件测试方法回顾 179

9.1.1 传统软件测试的类型 179

9.1.2 软件测试的步骤 179

9.2 软件安全测试简介 182

9.2.1 安全测试的基本步骤 183

9.2.2 软件安全测试与传统软件测试的差别 183

9.2.3 软件安全测试的原则 183

9.3 白箱、黑箱、灰箱测试 184

9.3.1 白箱测试 184

9.3.2 黑箱测试 185

9.3.3 灰箱测试 185

9.4 Fuzz测试 186

9.4.1 Fuzz测试的步骤及其分类 186

9.4.2 三种常见的Fuzz测试 187

9.5 软件渗透测试 189

9.5.1 软件渗透测试简介 189

9.5.2 渗透测试工具及其使用 189

9.6 基于风险分析的软件安全测试 191

9.6.1 风险评估模型 191

9.6.2 风险分析方法 191

9.7 测试计划 194

9.7.1 基于风险分析的测试时间安排 194

9.7.2 测试计划举例 194

小结 196

参考文献 196

习题 196

研究思考题 197

第10章 软件保护 198

10.1 常见软件保护技术 198

10.1.1 基于介质的保护 198

10.1.2 序列号(注册码) 198

10.1.3 基于硬件的保护 199

10.2 高级软件保护技术 200

10.2.1 密码处理器 200

10.2.2 数字水印技术 201

10.2.3 可信计算 202

10.2.4 软件即服务(SaaS) 203

10.3 反逆向技术 203

10.3.1 逆向工程简介 203

10.3.2 防御反编译——消除符号信息 204

10.3.3 防御反汇编——代码混淆法 205

10.3.4 防御反调试——添加反调试器代码 206

小结 208

参考文献 208

习题 209

第11章 软件安全的国际研究现状 210

11.1 新的研究热点 210

11.2 重要论文与书籍 210

小结 215

参考文献 216

后记 217

相关图书
作者其它书籍
返回顶部