第1章 网络安全综述 1
1.1 安全的概念和术语 1
1.2 网络安全威胁 1
1.2.1 脆弱性、威胁和风险 2
1.2.2 网络威胁的类型 2
1.3 网络攻击 3
1.3.1 网络攻击的定义 3
1.3.2 攻击的一般过程 4
1.3.3 攻击的主要方式 5
1.4 X.800安全体系结构 7
1.4.1 安全攻击、安全机制和安全服务 7
1.4.2 安全服务 7
1.4.3 安全机制 8
1.4.4 服务和机制之间的关系 9
1.5 X.805安全体系框架 10
1.6 网络安全模型 11
1.7 安全评估与风险管理 13
1.7.1 评估方法 14
1.7.2 评估标准 15
1.7.3 评估的作用 17
1.7.4 安全风险管理 17
参考文献 21
思考题 21
第2章 对称密码学 23
2.1 密码系统模型 23
2.2 古典密码 24
2.2.1 替代密码 24
2.2.2 置换密码 31
2.3 数据加密标准(DES) 33
2.3.1 分组密码简介 33
2.3.2 DES算法的描述 34
2.3.3 DES密码分析 40
2.3.4 DES工作模式 41
2.3.5 三重DES 44
2.4 高级加密标准(AES) 45
2.4.1 代数基础 45
2.4.2 AES算法描述 50
2.4.3 字节代替(SubBytes) 51
2.4.4 行移位(ShiftRows) 54
2.4.5 列混淆(MixColumns) 54
2.4.6 轮密钥加(AddRoundKey) 55
2.4.7 密钥调度 56
2.4.8 AES安全性分析 57
2.5 流密码算法 58
2.5.1 列密码简介 58
2.5.2 A5算法 58
参考文献 59
思考题 60
第3章 单向散列函数 63
3.1 MD5算法 64
3.1.1 算法 64
3.1.2 举例 67
3.2 安全散列函数(SHA) 67
3.2.1 算法 67
3.2.2 SHA-1与MD5的比较 69
3.2.3 举例 69
3.3 消息认证码(MAC) 72
参考文献 74
思考题 74
第4章 公钥密码系统 75
4.1 数论基础 76
4.1.1 素数 76
4.1.2 费马小定理 76
4.1.3 欧拉定理 77
4.2 RSA密码系统 78
4.3 Diffie-Hellman密钥交换 79
4.3.1 Diffie-Hellman算法 79
4.3.2 中间人攻击 80
4.3.3 认证的Diffie-Hellman密钥交换 80
4.3.4 三方或多方Diffie-Hellman 81
4.4 数字签名 81
4.4.1 基本概念 81
4.4.2 数字签名算法 82
4.4.3 RSA签名方案 82
4.4.4 其它数字签名方案 83
参考文献 83
思考题 84
第5章 因特网与TCP/IP安全 85
5.1 TCP/IP协议栈 85
5.2 协议封装 86
5.3 IP协议 88
5.3.1 IP协议简述 88
5.3.2 基于IP协议缺陷的攻击 89
5.4 TCP协议 90
5.4.1 TCP协议简述 90
5.4.2 TCP安全缺陷与LAND攻击 91
5.4.3 IP欺骗攻击 93
5.5 UDP协议 97
5.6 ARP/RARP协议 98
5.7 网络服务的安全性 100
5.7.1 文件传输协议 100
5.7.2 域名系统(DNS) 105
参考文献 111
思考题 111
第6章 VPN和IPSec 112
6.1 VPN定义 112
6.2 VPN优势 113
6.3 VPN的安全考虑 113
6.4 常见VPN应用环境 116
6.5 VPN安全策略 118
6.6 VPN数据安全性 118
6.6.1 认证(Authentication) 118
6.6.2 加密(Encryption) 118
6.6.3 完整性(Integrity) 119
6.7 VPN协议 119
6.7.1 PPTP 119
6.7.2 L2TP 119
6.7.3 IPSec 120
6.8 IPSec协议 120
6.8.1 安全关联(Security Association) 121
6.8.2 SA管理的创建和删除 121
6.8.3 SA参数 122
6.8.4 安全策略 123
6.8.5 选择符 124
6.8.6 IPSec模式 124
6.9 IPSec数据包信息格式 125
6.9.1 认证报头(AH) 125
6.9.2 AH模式 126
6.9.3 封装安全有效载荷(ESP) 127
6.9.4 SA组合 131
6.10 因特网密钥管理协议 133
6.10.1 IPSec的密钥管理需求 133
6.10.2 认证方法(Authentication) 134
6.10.3 密钥交换(Key Exchange) 134
6.10.4 IKE阶段综述 134
6.10.5 ISAKMP消息结构 136
6.10.6 IPSec/IKE系统处理 137
参考文献 139
思考题 139
第7章 SSL和TLS 140
7.1 SSL协议体系结构 140
7.2 SSL/TLS记录协议 143
7.2.1 SSL3.0的MAC计算 143
7.2.2 TLS1.2的MAC计算 144
7.3 改变密码规范协议 145
7.4 告警协议 145
7.5 握手协议 147
7.5.1 常规握手过程 148
7.5.2 带客户端认证的握手过程 149
7.5.3 恢复SSL/TLS会话 150
7.5.4 SSL 2.0握手过程 151
7.6 密钥计算 152
7.6.1 计算主密钥 152
7.6.2 伪随机函数(PRF) 153
7.6.3 计算其它密钥参数 154
7.6.4 安全HTTP通信 155
参考文献 155
思考题 155
第8章 身份认证及其应用 156
8.1 引言 156
8.2 身份认证的方法 156
8.2.1 基于用户知道什么的身份认证 156
8.2.2 基于用户拥有什么的身份认证 157
8.2.3 基于用户是谁的身份认证 158
8.2.4 指纹识别技术 158
8.2.5 击键特征识别 160
8.3 第三方认证 161
8.3.1 Kerberos概述 161
8.3.2 Kerberos V4认证消息对话 162
8.3.3 Kerberos基础结构和交叉领域认证 163
8.3.4 Kerberos版本5 165
8.4 X.509 166
8.4.1 认证协议——简单认证过程 167
8.4.2 认证协议——强认证程序 168
8.5 数字证书 169
8.5.1 证书的获取 171
8.5.2 证书的吊销 172
8.6 验证证书 172
8.6.1 单向认证 173
8.6.2 双向认证 174
8.6.3 三向认证 174
8.7 CA系统结构 175
8.7.1 CA服务器 176
8.7.2 RA服务器 176
8.7.3 证书目录服务器(CA Directory Service Server) 177
8.7.4 CA操作步骤 177
8.7.5 证书链构造 178
8.7.6 证书验证过程 178
8.7.7 小结 179
参考文献 179
思考题 180
第9章 访问控制与系统审计 183
9.1 访问控制 184
9.1.1 基本概念 184
9.1.2 自主访问控制 185
9.1.3 强制访问控制 188
9.1.4 访问控制模型 189
9.1.5 基于角色的访问控制 191
9.1.6 RBAC标准模型 192
9.1.7 总结 195
9.2 计算机安全等级的划分 195
9.3 系统审计 196
9.3.1 审计及审计跟踪 197
9.3.2 安全审计 197
参考文献 198
思考题 199
第10章 防火墙技术 200
10.1 防火墙的概念、原理 200
10.2 防火墙技术(层次) 201
10.2.1 包过滤防火墙(TCP、IP) 201
10.2.2 应用代理防火墙(Application Layer) 202
10.2.3 电路级网关型防火墙(Session Layer) 203
10.2.4 状态包检测(Stateful-inspection) 205
10.3 防火墙体系结构 206
10.3.1 双重宿主主机体系结构(Dual Homed Host) 207
10.3.2 屏蔽主机体系结构(Screened Host) 207
10.3.3 屏蔽子网结构(Screened Subnet Architectures) 208
10.4 包过滤技术 209
10.4.1 创建包过滤规则 209
10.4.2 IP头信息 210
10.4.3 TCP头信息 210
10.4.4 UDP端口过滤 213
10.4.5 无状态操作和有状态检查 214
10.5 堡垒主机(Bastion) 215
10.6 应用网关和代理服务器 217
10.6.1 网络地址转换器 218
10.6.2 内容屏蔽和阻塞 221
10.6.3 日志和报警措施 222
参考文献 222
思考题 222
第11章 入侵检测系统 224
11.1 引言 224
11.2 入侵检测基本原理 225
11.2.1 入侵检测的基本概念 225
11.2.2 入侵检测系统 226
11.3 入侵检测系统分类 227
11.3.1 按数据来源的分类 227
11.3.2 按分析技术的分类 229
11.3.3 其它的分类 232
11.4 入侵检测系统模型 232
11.4.1 入侵检测系统的CIDF模型 232
11.4.2 Denning的通用入侵检测系统模型 233
11.5 分布式入侵检测系统 234
11.6 小结 235
参考文献 236
第12章 安全编程 237
12.1 缓冲区溢出(buffer overflow) 237
12.1.1 背景知识 237
12.1.2 缓冲区溢出基本原理 239
12.1.3 缓冲区溢出攻击方式 240
12.1.4 有关Shellcode 241
12.1.5 安全建议 241
12.2 格式化字符串(Format String) 243
12.2.1 格式化函数和格式化字符串 243
12.2.2 格式化字符串漏洞基本原理 245
12.2.3 格式化字符串攻击 246
12.2.4 安全建议 251
12.3 整数安全 252
12.3.1 整数 252
12.3.2 整数类型转换 253
12.3.3 整数溢出漏洞 253
12.3.4 安全建议 256
12.4 条件竞争 256
12.4.1 用户ID 256
12.4.2 条件竞争 257
12.4.3 安全建议 257
12.5 临时文件 259
12.6 动态内存分配和释放 260
12.6.1 背景知识 260
12.6.2 安全隐患 262
参考文献 262
思考题 262
第13章 恶意代码安全 266
13.1 恶意代码 266
13.2 恶意代码的命名规则 267
13.3 恶意代码工作机理 269
13.3.1 恶意代码自我保护技术 270
13.3.2 恶意代码入侵技术 273
13.3.3 恶意代码隐藏技术 274
13.3.4 恶意代码防范 275
13.4 恶意代码分析技术 280
13.4.1 静态分析技术 280
13.4.2 文件类型分析 280
13.4.3 字符串提取分析 283
13.5 动态分析 285
13.5.1 注册表监视 286
13.5.2 监控文件变动 287
13.5.3 网络行为分析 288
参考文献 290
思考题 290
第14章 无线局域网安全 291
14.1 无线和有线的区别 291
14.1.1 物理安全 291
14.1.2 设备局限性 292
14.2 安全威胁 292
14.2.1 窃听和网络通信流分析 292
14.2.2 信任传递 292
14.2.3 基础结构 293
14.2.4 拒绝服务 293
14.3 WLAN概述 294
14.3.1 协议堆栈 294
14.3.2 无线拓扑结构 294
14.3.3 基本和扩展服务集 295
14.3.4 WLAN网络服务 296
14.4 无线局域网的安全机制 297
14.4.1 SSID匹配 297
14.4.2 MAC地址过滤 298
14.4.3 认证和关联 298
14.4.4 WEP协议 299
14.4.5 WEP加密机制存在的安全问题 300
14.5 IEEE 802.1X协议 301
14.6 WPA(WiFi Protected Access)规范 304
14.6.1 WPA认证 304
14.6.2 WPA加密 304
14.6.3 WPA完整性 307
14.7 IEEE 802.11i 308
14.8 WAPI——中国的W LAN安全标准 309
参考文献 310
思考题 310