图书简介:
第1章 绪论 1
1.1 安全事件实例 1
1.1.1 Wannacry攻击事件 1
1.1.2 Mirai攻击事件 2
1.1.3 Stuxnet攻击事件 4
1.2 安全基本要素 5
1.2.1 机密性 6
1.2.2 完整性 7
1.2.3 可用性 9
1.3 安全问题与安全系统 10
1.4 系统安全学科领域 11
1.4.1 我国信息安全专业 11
1.4.2 我国网络空间安全学科 12
1.4.3 国际网络空间安全学科 13
1.5 本章小结 14
1.6 习题 15
附录A 安全攻击实例考察 16
场景一:诱惑与行动 16
场景二:技术性的打探 16
场景三:寻找突破口 17
场景四:设法扩大战果 20
场景五:登上制胜之巅 21
场景六:尾声 23
第2章 系统安全基础 24
2.1 系统安全概述 24
2.1.1 系统安全的演进 24
2.1.2 系统与系统安全 25
2.1.3 整体论与还原论 26
2.1.4 系统安全思维 28
2.2 系统安全原理 29
2.2.1 基本原则 29
2.2.2 威胁建模 31
2.2.3 安全控制 32
2.2.4 安全监测 34
2.2.5 安全管理 35
2.3 系统安全的体系结构 37
2.3.1 硬件系统安全 37
2.3.2 操作系统安全 39
2.3.3 数据库系统安全 43
2.3.4 应用系统安全 46
2.3.5 安全生态系统 48
2.4 本章小结 50
2.5 习题 51
第3章 系统安全硬件基础 53
3.1 问题与发展背景 53
3.1.1 纯软件安全机制的不足 53
3.1.2 可信计算技术的形成 54
3.1.3 可信计算的前期基础 55
3.1.4 可信计算的研究热潮 56
3.2 可信平台基本思想 57
3.2.1 基本概念 57
3.2.2 信任根的构成 59
3.2.3 对外证明 61
3.3 可信平台模块(TPM) 63
3.3.1 基本组成 63
3.3.2 基本功能 64
3.3.3 存储空间 66
3.4 TPM的基本用法 66
3.4.1 交互数据包 66
3.4.2 原始交互方法 68
3.4.3 软件体系结构 69
3.4.4 应用方案 71
3.5 TPM应用案例 72
3.5.1 BitLocker简介 72
3.5.2 BitLocker整卷加密 73
3.5.3 BitLocker引导检查 75
3.6 本章小结 76
3.7 习题 76
第4章 身份认证机制 79
4.1 身份认证技术概述 79
4.2 身份标识与认证 81
4.2.1 身份标识的基本方法 81
4.2.2 身份认证的基本过程 84
4.3 口令处理方法 85
4.3.1 口令信息的维护与运用 85
4.3.2 口令管理中的撒盐措施 88
4.3.3 口令信息与账户信息的分离 90
4.4 网络环境的身份认证 92
4.5 安全的网络身份认证 95
4.6 面向服务的再度认证 97
4.7 统一的身份认证框架 99
4.8 本章小结 101
4.9 习题 102
第5章 操作系统基础安全机制 104
5.1 基于权限位的访问控制机制 104
5.1.1 访问权限的定义与表示 104
5.1.2 用户的划分与访问控制 105
5.1.3 访问控制算法 107
5.2 访问控制的进程实施机制 108
5.2.1 进程与文件和用户之间的关系 109
5.2.2 进程的用户属性 110
5.2.3 进程有效用户属性的确定 111
5.3 基于ACL的访问控制机制 114
5.3.1 ACL的表示方法 114
5.3.2 基于ACL的访问判定 116
5.4 基于特权分离的访问控制机制 117
5.4.1 特权的意义与问题 117
5.4.2 特权的定义 118
5.4.3 基于特权的访问控制 119
5.5 文件系统加密机制 120
5.5.1 加密文件系统的应用方法 121
5.5.2 加密文件系统的基本原理 124
5.5.3 加密算法的加密密钥 125
5.6 安全相关行为审计机制 128
5.6.1 审计机制的结构 128
5.6.2 审计指令的配置 129
5.6.3 审计信息的分析 131
5.7 本章小结 132
5.8 习题 133
第6章 操作系统强制安全机制 136
6.1 安全模型关键思想 136
6.1.1 SETE模型与DTE模型的区别 136
6.1.2 SETE模型的访问控制方法 137
6.1.3 进程工作域切换授权 138
6.1.4 进程工作域自动切换 142
6.2 模型相关判定支撑 143
6.2.1 访问判定 143
6.2.2 切换判定 145
6.2.3 客体类型标签的存储 148
6.3 安全机制结构设计 149
6.3.1 Linux安全模块框架 149
6.3.2 SELinux内核体系结构 150
6.3.3 SELinux用户空间组件 152
6.4 策略语言支持架构 155
6.4.1 策略源文件及其编译 155
6.4.2 安全策略的构造与装载 157
6.4.3 策略源模块样例 158
6.5 本章小结 160
6.6 习题 161
第7章 数据库基础安全机制 163
7.1 关系数据库访问控制 163
7.1.1 自主访问控制 163
7.1.2 强制访问控制 164
7.2 关系数据库自主访问授权 165
7.2.1 授权的发放与回收 165
7.2.2 否定式授权 168
7.2.3 可选的授权回收方式 170
7.2.4 系统级的访问授权 172
7.3 基于视图的访问控制 173
7.3.1 基于内容的访问控制需求 173
7.3.2 基于视图的读控制 173
7.3.3 基于视图的写控制 175
7.3.4 视图机制的作用和不足 176
7.4 基于角色的访问控制
(RBAC) 177
7.4.1 RBAC的基本思想 177
7.4.2 RDBMS中的RBAC 178
7.4.3 角色授权与非递归式授权回收 179
7.5 数据库数据推理 180
7.5.1 数据库数据推理的方法 181
7.5.2 数据库数据推理的控制 186
7.6 本章小结 190
7.7 习题 190
第8章 数据库强制安全机制 192
8.1 安全模型OLS-BLP 192
8.1.1 安全标签基本构成 192
8.1.2 数据库强制访问控制 193
8.2 安全机制实现原理 195
8.2.1 安全机制实现思想 195
8.2.2 安全策略创建方法 196
8.3 安全标签运用方法 197
8.3.1 安全标签等级 198
8.3.2 安全标签类别 204
8.3.3 安全标签组别 210
8.4 安全标签管理 215
8.4.1 会话标签与记录标签 215
8.4.2 基于标签的授权架构 216
8.5 本章小结 221
8.6 习题 222
第9章 系统可信检查机制 224
9.1 系统引导的基本检查机制 224
9.1.1 系统引导过程 224
9.1.2 系统可信引导过程 225
9.1.3 组件完整性验证 227
9.1.4 系统安全引导过程 228
9.2 基于CPU的检查机制 230
9.2.1 完整性验证框架 230
9.2.2 完整性验证单元 233
9.2.3 硬件支持的验证 235
9.3 基于TPM硬件芯片的检查机制 236
9.3.1 度量对象的构成 237
9.3.2 基本度量策略 239
9.3.3 度量任务实现方法 241
9.4 文件系统检查机制 244
9.4.1 检查机制原理与组成 244
9.4.2 检查机制工作模式 246
9.4.3 检查策略的定义 247
9.4.4 检查机制基本用法 251
9.5 本章小结 252
9.6 习题 253
第10章 系统安全经典模型 254
10.1 贝尔-拉普杜拉模型 254
10.1.1 访问控制分类 254
10.1.2 模型的现实意义 255
10.1.3 模型的基本思想 256
10.2 毕巴模型 258
10.2.1 毕巴低水标模型 260
10.2.2 毕巴环模型 261
10.2.3 毕巴严格完整性模型 261
10.3 克拉克-威尔逊模型 262
10.3.1 基本概念的定义 262
10.3.2 模型的规则 263
10.3.3 模型的概括 266
10.4 域类实施模型 266
10.4.1 类型实施模型的基本思想 267
10.4.2 域类实施模型的基本思想 270
10.5 莫科尔树模型 273
10.5.1 哈希函数 273
10.5.2 莫科尔树 274
10.6 本章小结 277
10.7 习题 278
参考资料 280
展开
第3版前言
本书的第1版是在2009年出版的,至今,11年过去了。在这11年间,信息技术像摩尔定律预示的那样飞速发展,系统安全领域也取得了长足的进步。在学科和专业发展方面,当初,我国只有信息安全专业,如今,我国已经有了网络空间安全一级学科,国际上也发布了网络空间安全学科知识体系。
从2008年开始,作者便以本书内容作为讲义,用于中国人民大学系统安全课程的一线教学实践之中。本书出版后也得到了其他一些兄弟院校的师生的厚爱,被选作教材或教学参考书,用于他们的教学实践之中。由此,我获得了不少珍贵的反馈。
反映系统安全领域的最新发展和满足系统安全教学实践的实际需要是本书更新的根本动机。本书系统安全的主题没有变,但是,在第1版出版之时,系统安全是信息安全专业的一个方向,所以,当初的书名定为《信息系统安全概论》,现在,系统安全已成为网络空间安全学科的一个领域,因此,第3版更名为《网络空间系统安全概论》。
在内容编排方面,第1章已重写,主要是克服了第2版第1章中存在的内容偏多、不易教学、不易掌握的缺点。秉承本书案例分析与理论阐述相结合的一贯风格,新写的第1章精选了勒索病毒、物联网安全、工控安全三个方面近年来影响巨大的典型案例,以它们为契机,通过机密性、完整性、可用性三要素初步介绍网络空间安全的基本含义,进而勾画出系统安全学科领域的概况,以期使读者能够快速地对系统安全整体内容有个大致的印象,为后续各章的学习指明方向。
第2章是完全新增的内容,它的核心要义是把网络空间系统安全的本质思想阐述清楚,其中蕴涵着发展的思想、对抗的思想、系统的思想和生态的思想。网络空间系统安全领域取得的最新进步主要在这一章中体现,它阐明了系统安全包含的“系统的安全”和“系统化安全”两层含义,并明确了这两层含义是提升对系统安全的认知和正确理解系统安全的关键。
第2版中的“云计算环境安全机制”一章已被删除,主要原因是,对于没有云计算基础的读者而言,该章内容理解起来比较困难;而且从教学的实际情况看,由于课时的限制,往往不允许安排太多时间额外介绍云计算方面的基础知识;另外,该章内容对可信计算技术的要求也略为偏高,故而教学效果不理想。
本书更新后的内容由10章构成,各章之间的大致关系如图T.1所示。第1章介绍网络空间中的安全概念的基本含义,并展示系统安全知识体系的整体面貌,为读者提供一个了解网络空间系统安全的快速入门指引。第2章全面介绍系统安全的核心思想,阐明何为系统的安全以及何为系统化安全。只有辩证地理解这两层含义,才能正确把握系统安全的真正意义,才有可能在将来科学地解决系统安全问题。第1章是系统安全之旅的起点,第2章是统领系统安全的“魂”,这两章是本书的必读内容。
第3章呈现的硬件、第5章和第6章呈现的操作系统、第7章和第8章呈现的数据库系统、第9章呈现的应用软件是构成系统的代表性组件,了解这些组件的安全能力对于了解系统安全具有重要的意义,但作者特别想强调的是,在了解各组件的安全能力的同时,应该更多地思考组件间相互作用对系统安全性的影响。第5~8章分析的主要是访问控制机制,第9章分析的是完整性检查机制。第6章和第8章分别是在第5章和第7章基础上的增强性内容,深度和难度相对提高了一些,所以,第6章和第8章可以有选择地阅读或教学。
第9章除呈现了应用软件组件外,还呈现了操作系统组件。硬件是操作系统的基础,第3章的内容对于理解第5章和第9章的内容会有很大的帮助。第5~9章介绍的安全机制的背后是需要安全模型来支撑的。虽然作者在编写各章的时候已经考虑了使它们具有一定的独立性,但第10章介绍的安全模型毕竟是各章中隐含的安全模型的理论提升,因此阅读第10章可以在安全模型方面获得理论升华。第4章的身份认证机制是攻击者经常面对的众多软件安全机制中的第一道防线,尽管这章的内容也比较独立,但建议读者要对它有所了解。
在本书出版之际,感谢所有人提供的一切帮助。除免费提供不断改进的配套电子课件外,作者将一如既往地为本书的使用给读者提供全方位的支持。朋友们有任何意见、建议和需要,都欢迎通过以下电子邮件进行联系。
电子邮件:book_syssec@qq.com。
石文昌
2020年7月
于 北京 中关村 陋室
展开