第1章 计算机系统安全概论 1
1.1 计算机系统安全相关概念及发展 1
1.1.1 计算机系统 1
1.1.2 计算机系统安全的属性 1
1.1.3 安全概念的发展 3
1.2 计算机系统安全问题的产生 6
1.2.1 威胁 6
1.2.2 脆弱点 7
1.3 计算机系统安全防护的基本原则 9
1.4 计算机系统安全研究的内容 11
1.5 思考与练习 12
第2章 密码学基础 14
2.1 概述 14
2.2 密码学基本概念 14
2.2.1 现代密码系统的组成 15
2.2.2 密码体制 15
2.2.3 密码算法设计的两个重要原则 16
2.2.4 密码分析学 16
2.2.5 密码算法的安全性 18
2.3 对称密码体制 19
2.3.1 常见的对称密码算法 19
2.3.2 高级加密标准 21
2.4 公钥密码体制 27
2.4.1 对称密码体制的缺陷与公钥密码体制的产生 27
2.4.2 公钥密码体制内容 28
2.4.3 加密与签名的顺序问题 30
2.4.4 基本数学概念 30
2.4.5 RSA算法 31
2.5 散列函数 33
2.5.1 散列函数的概念 33
2.5.2 SHA-1算法 34
2.5.3 散列函数的应用 35
2.6 数字签名 35
2.6.1 数字签名的概念 35
2.6.2 DSA算法 36
2.7 信息隐藏与数字水印 37
2.7.1 信息隐藏 37
2.7.2 数字水印 38
2.7.3 信息隐藏实例 41
2.8 无线网络中的密码应用 44
2.9 思考与练习 45
第3章 计算机硬件与环境安全 47
3.1 计算机硬件与环境安全问题 47
3.1.1 计算机硬件安全问题 47
3.1.2 计算机环境安全问题 48
3.2 计算机硬件安全技术 50
3.2.1 PC物理防护 50
3.2.2 基于硬件的访问控制技术 51
3.2.3 可信计算与安全芯片 52
3.2.4 硬件防电磁泄漏 55
3.3 环境安全技术 58
3.3.1 机房安全等级 58
3.3.2 机房位置及设备布置要求 59
3.3.3 机房环境要求 59
3.4 思考与练习 60
第4章 操作系统安全 62
4.1 操作系统安全问题 62
4.1.1 操作系统易用性与安全性的矛盾 62
4.1.2 操作系统面临的安全问题 63
4.2 操作系统的安全性设计 63
4.3 存储保护 64
4.3.1 内存保护 64
4.3.2 运行保护 67
4.3.3 I/O保护 68
4.4 用户认证 68
4.4.1 基于口令的认证 69
4.4.2 一次性口令认证 72
4.4.3 生物特征认证 76
4.5 访问控制 77
4.5.1 访问控制模型 77
4.5.2 自主访问控制 80
4.5.3 强制访问控制 82
4.5.4 基于角色的访问控制 85
4.5.5 新型访问控制 87
4.6 其他安全机制 88
4.6.1 最小权限管理 88
4.6.2 可信路径 89
4.6.3 审计 90
4.7 Windows系统安全 90
4.7.1 Windows系统安全等级 91
4.7.2 Windows系统安全机制 91
4.7.3 Windows安全子系统的结构 93
4.7.4 Windows安全子系统的组件 96
4.8 思考与练习 99
第5章 网络安全 102
5.1 网络安全问题 102
5.1.1 黑客与网络攻击 102
5.1.2 IPv4版本TCP/IP的安全问题 105
5.2 网络攻击防护 112
5.2.1 网络攻击的分层防护技术 112
5.2.2 网络安全体系框架 113
5.3 防火墙 115
5.3.1 防火墙概念 115
5.3.2 防火墙技术 118
5.3.3 防火墙体系结构 129
5.3.4 防火墙的局限性和发展 133
5.4 入侵检测 135
5.4.1 入侵检测概念 135
5.4.2 入侵检测技术 138
5.4.3 入侵检测体系结构 140
5.4.4 入侵检测的局限性和发展 142
5.5 网络隔离 146
5.5.1 网络隔离概念 146
5.5.2 网络隔离技术和应用 147
5.5.3 网络隔离的局限性和发展 154
5.6 公钥基础设施和权限管理基础设施 155
5.6.1 公钥基础设施 155
5.6.2 权限管理基础设施 162
5.7 网络安全协议 166
5.7.1 应用层安全协议 166
5.7.2 传输层安全协议SSL 173
5.7.3 网络层安全协议(IPSec) 177
5.8 IPv6新一代网络的安全机制 185
5.8.1 IPv6的新特性 185
5.8.2 IPv6安全机制对现行网络安全体系的新挑战 186
5.9 思考与练习 187
第6章 数据库安全 192
6.1 数据库安全问题 192
6.2 数据库安全控制 193
6.2.1 数据库的安全需求和安全策略 193
6.2.2 数据库的安全存取控制 195
6.2.3 数据库的完整性控制 199
6.2.4 数据库的备份与恢复 204
6.2.5 推理控制与隐通道分析 207
6.2.6 数据库可生存性控制 209
6.2.7 数据库隐私保护 212
6.3 数据库安全研究的发展 215
6.4 思考与练习 217
第7章 应用系统安全 219
7.1 应用系统安全问题 219
7.1.1 恶意代码 219
7.1.2 代码安全漏洞 228
7.1.3 软件侵权 236
7.2 软件可信验证 237
7.2.1 软件可信验证模型 238
7.2.2 软件可信验证关键技术 238
7.3 安全编程 241
7.3.1 CERT安全编码建议 242
7.3.2 C语言的安全编程 243
7.3.3 Java语言的安全编程 244
7.4 软件保护 246
7.4.1 软件保护的原理及基本原则 246
7.4.2 软件保护常用技术 247
7.4.3 软件保护技术的发展 250
7.5 安全软件工程 251
7.5.1 需求分析 252
7.5.2 设计与验证 253
7.5.3 编程控制 255
7.5.4 测试控制 256
7.5.5 运行维护管理 258
7.5.6 行政管理控制 260
7.6 Web安全防护 261
7.6.1 Web安全问题 261
7.6.2 Web安全威胁建模 265
7.6.3 Web安全开发 268
7.6.4 Web安全检测与维护 276
7.7 思考与练习 278
第8章 应急响应与灾难恢复 282
8.1 应急响应 282
8.1.1 应急响应的概念 283
8.1.2 应急响应组织 283
8.1.3 应急响应体系研究 284
8.2 容灾备份和恢复 288
8.2.1 容灾备份与恢复的概念 288
8.2.2 容灾备份与恢复的关键技术 290
8.3 网站备份与恢复系统实例 295
8.3.1 系统工作原理与总体结构 296
8.3.2 系统采用的关键技术 297
8.4 计算机取证 297
8.4.1 计算机取证的概念 298
8.4.2 计算机取证技术及发展 300
8.5 入侵追踪 303
8.5.1 IP地址追踪 303
8.5.2 攻击源追踪 304
8.6 思考与练习 306
第9章 计算机系统安全风险评估 308
9.1 安全风险评估简介 308
9.1.1 安全风险评估途径 308
9.1.2 安全风险评估基本方法 309
9.1.3 安全风险评估工具 312
9.2 安全风险评估的实施 314
9.2.1 风险评估依据 314
9.2.2 风险要素 314
9.2.3 风险评估过程 315
9.3 信息系统安全风险评估 324
9.3.1 风险评估模型 324
9.3.2 风险评估实例 326
9.4 思考与练习 327
第10章 计算机系统安全管理 329
10.1 计算机系统安全管理简介 329
10.1.1 安全管理的重要性 329
10.1.2 安全管理的目的和任务 330
10.1.3 安全管理原则 331
10.1.4 安全管理程序和方法 331
10.2 信息安全标准及实施 332
10.2.1 信息安全标准分类及体系结构 332
10.2.2 国际主要标准 333
10.2.3 我国主要标准 336
10.2.4 我国计算机安全等级保护标准 339
10.3 安全管理与立法 342
10.3.1 我国信息安全相关法律法规介绍 342
10.3.2 我国有关计算机软件知识产权的保护 345
10.4 思考与练习 349
参考文献 350