第Ⅰ部分 概述 3
第1章 信息安全概述 3
1.1 信息保护的重要性 3
1.2 信息安全的演变 5
1.3 合理的安全投资 7
1.3.1 业务灵活性 8
1.3.2 降低成本 8
1.3.3 可移植性 9
1.4 安全方法论 9
1.5 如何建立一个安全计划 12
1.5.1 授权 12
1.5.2 框架 13
1.5.3 评估 13
1.5.4 规划 13
1.5.5 实施 14
1.5.6 维护 14
1.6 不可能的工作 14
1.7 最薄弱的环节 15
1.8 战略与战术 16
1.9 业务流程与技术控制 17
1.10 本章小结 18
1.11 参考文献 19
第2章 风险分析 21
2.1 风险定义 21
2.1.1 入侵载体 22
2.1.2 威胁源和目标 24
2.2 攻击的种类 25
2.2.1 恶意移动代码 26
2.2.2 高级持续性渗透攻击(APT) 35
2.2.3 手动攻击 36
2.3 风险分析 43
2.4 本章小结 44
2.5 参考文献 44
第3章 遵循标准、法规和法律 47
3.1 信息安全标准 47
3.1.1 信息及相关技术控制目标(COBIT) 47
3.1.2 国际标准化组织(ISO)27000系列 48
3.1.3 美国国家标准与技术研究院(NIST) 50
3.2 影响信息安全专家的法规 52
3.2.1 注意义务 53
3.2.2 Gramm-Leach-Bliley法案(GLBA) 53
3.2.3 Sarbanes-Oxley法案 55
3.2.4 HIPAA隐私和安全规则 55
3.2.5 北美电力可靠性公司关键基础设施保护(NERC CIP) 57
3.2.6 PCI DSS:支付卡行业数据安全标准 57
3.3 影响信息安全专家的法律 58
3.3.1 黑客法律 59
3.3.2 电子通信法律 62
3.3.3 其他实质性法律 65
3.4 本章小结 67
3.5 参考文献 67
第4章 安全设计原则 69
4.1 CIA三元组和其他模型 69
4.1.1 机密性 69
4.1.2 完整性 69
4.1.3 可用性 70
4.1.4 其他概念 70
4.2 防御模型 71
4.2.1 棒棒糖模型 71
4.2.2 洋葱模型 72
4.3 可信区域 73
4.4 网络防御的最佳实践 75
4.4.1 安全的物理环境 75
4.4.2 密码保护启动 76
4.4.3 密码保护CMOS 76
4.4.4 禁止USB和CD引导 76
4.4.5 加固操作系统 76
4.4.6 保持补丁更新 77
4.4.7 使用防病毒扫描程序(实时扫描) 77
4.4.8 使用防火墙软件 77
4.4.9 安全的网络共享权限 77
4.4.10 使用加密 78
4.4.11 保护应用程序 78
4.4.12 系统备份 82
4.4.13 实施ARP中毒防御 83
4.4.14 建立计算机安全防御计划 83
4.5 本章小结 85
4.6 参考文献 85
第5章 安全策略、标准、流程和指南 87
5.1 安全策略 87
5.1.1 安全策略制定 88
5.1.2 安全策略参与者 89
5.1.3 安全策略阅读对象 90
5.1.4 策略种类 91
5.1.5 框架 91
5.1.6 安全意识 92
5.1.7 安全意识的重要性 93
5.1.8 意识计划的目标 93
5.1.9 提高效率 94
5.1.10 实施意识计划 95
5.1.11 执行 96
5.1.12 对供应商执行的策略 96
5.1.13 对员工执行的策略 97
5.1.14 基于软件的执行 97
5.1.15 安全策略主题示例 98
5.1.16 可接受的使用策略 98
5.1.17 计算机策略 99
5.1.18 网络策略 101
5.1.19 数据隐私策略 102
5.1.20 数据完整性策略 103
5.1.21 人事管理策略 105
5.1.22 安全管理策略 107
5.1.23 物理安全策略 108
5.2 安全标准 111
5.3 安全流程 112
5.4 安全指南 114
5.5 持续维护 115
5.6 本章小结 115
5.7 参考文献 116
第6章 安全组织 117
6.1 角色和职责 117
6.1.1 安全职位 118
6.1.2 安全事件响应小组 123
6.2 安全管理服务 125
6.2.1 通过MSSP提供的服务 126
6.2.2 可以通过MSSP监控的服务 127
6.3 安全委员会、指导委员会或董事会 128
6.4 与人力资源的相互关系 128
6.5 本章小结 129
6.6 参考文献 129
第7章 身份认证和授权 131
7.1 身份认证 131
7.1.1 用户名和密码 132
7.1.2 基于证书的认证 137
7.1.3 扩展认证协议(EAP) 141
7.1.4 生物识别 141
7.1.5 额外使用的认证 142
7.2 授权 142
7.2.1 用户权限 142
7.2.2 基于角色的授权(RBAC) 143
7.2.3 访问控制列表(ACL) 143
7.2.4 基于规则的授权 145
7.3 符合标准 145
7.3.1 NIST 146
7.3.2 ISO 27002 146
7.3.3 COBIT 146
7.4 本章小结 146
7.5 参考文献 147
第Ⅱ部分 数据安全 151
第8章 非结构化数据安全 151
8.1 结构化数据与非结构化数据 151
8.2 静态的、传输中的以及使用中的 152
8.3 保护非结构化数据的途径 153
8.3.1 数据库 154
8.3.2 应用程序 156
8.3.3 网络 158
8.3.4 计算机 159
8.3.5 存储(本地、移动或网络) 161
8.3.6 打印到现实世界的数据 162
8.4 保护非结构化数据的新途径 163
8.4.1 数据丢失防护(DLP) 163
8.4.2 信息权限管理 164
8.5 本章小结 165
8.6 参考文献 165
第9章 信息权限管理 167
9.1 概述 167
9.1.1 DRM和IRM的区别 168
9.1.2 EDRM、ERM、RMS、IRM如何命名 170
9.2 从加密演变到IRM 171
9.3 IRM技术细节 172
9.3.1 IRM技术的构成 172
9.3.2 架构 172
9.3.3 离线 182
9.3.4 非结构化数据格式 183
9.4 IRM入门 183
9.4.1 创建分类 183
9.4.2 用户供应 185
9.4.3 权限分配 185
9.4.4 保护内容 186
9.4.5 分发内容 186
9.4.6 安装和配置IRM客户端 187
9.4.7 身份认证 187
9.4.8 授权 188
9.4.9 权限检索和存储 188
9.4.10 内容访问和权限调用 188
9.4.11 访问审计和报表 188
9.4.12 权限撤销 188
9.5 本章小结 188
9.6 参考文献 189
第10章 加密 191
10.1 加密简史 191
10.1.1 早期编码 191
10.1.2 更现代的代码 192
10.2 对称密钥加密 193
10.3 公钥加密算法 195
10.4 公钥基础设施 195
10.4.1 结构和功能 196
10.4.2 CA的层次 196
10.4.3 证书的模板和注册 196
10.4.4 撤销 197
10.4.5 角色分离 197
10.4.6 交叉认证 198
10.5 遵循标准 198
10.5.1 NIST 198
10.5.2 ISO 27002 198
10.5.3 COBIT 198
10.6 本章小结 199
10.7 参考文献 199
第11章 存储安全 201
11.1 存储安全的演化 201
11.2 现代存储安全 202
11.2.1 存储基础设施 202
11.2.2 存储网络 204
11.2.3 阵列 205
11.2.4 服务器 205
11.2.5 管理通道 206
11.2.6 数据的风险 206
11.3 风险整治 208
11.3.1 机密性风险 208
11.3.2 完整性风险 211
11.3.3 可用性风险 212
11.4 最佳实践 214
11.4.1 分区 214
11.4.2 阵列 214
11.4.3 服务器 214
11.4.4 员工 214
11.4.5 异地数据存储 214
11.5 本章小结 215
11.6 参考文献 215
第12章 数据库安全 217
12.1 常用的数据库安全概念 217
12.2 理解数据库安全层次 218
12.2.1 服务器级安全 218
12.2.2 网络级安全 219
12.2.3 操作系统安全 220
12.3 理解数据库级安全 221
12.3.1 数据库管理安全 221
12.3.2 数据库角色和权限 222
12.3.3 对象级安全 223
12.3.4 使用其他数据库对象的安全 225
12.4 使用应用程序安全 226
12.4.1 应用程序级安全性的限制 228
12.4.2 支持互联网应用程序 228
12.5 数据库备份与恢复 230
12.5.1 确定备份约束 230
12.5.2 确定恢复需求 231
12.5.3 数据库备份的类型 231
12.6 保持服务器更新 232
12.7 数据库审计与监控 232
12.7.1 审查审计日志 233
12.7.2 数据库监控 234
12.8 本章小结 234
12.9 参考文献 234
第Ⅲ部分 网络安全 237
第13章 网络安全设计 237
13.1 安全的网络设计简介 238
13.1.1 可接受的风险 238
13.1.2 网络的安全设计 238
13.1.3 设计合适的网络 239
13.1.4 安全的成本 239
13.2 性能 240
13.3 可用性 242
13.4 安全性 244
13.4.1 无线对边界的影响 245
13.4.2 远程访问注意事项 246
13.4.3 内部安全实践 246
13.4.4 内部网、外部网和DMZ区 247
13.4.5 出站过滤 250
13.5 遵循的标准 251
13.5.1 NIST 251
13.5.2 ISO 27002 251
13.5.3 COBIT 252
13.6 本章小结 252
13.7 参考文献 252
第14章 网络设备安全 253
14.1 路由器和交换机基线配置 253
14.1.1 MAC地址、IP地址和ARP 253
14.1.2 TCP/IP协议 254
14.1.3 集线器 256
14.1.4 交换机 257
14.1.5 路由器 258
14.2 网络加固 260
14.2.1 安装补丁 260
14.2.2 交换机安全实践 260
14.2.3 访问控制列表 261
14.2.4 禁用多余服务 261
14.2.5 管理实践 262
14.2.6 互联网消息控制协议(ICMP) 266
14.2.7 反欺骗及源路由 267
14.2.8 日志 268
14.3 本章小结 268
14.4 参考文献 268
第15章 防火墙 269
15.1 概述 269
15.1.1 防火墙的发展历程 269
15.1.2 应用控制 270
15.1.3 防火墙的必备功能 271
15.1.4 防火墙核心功能 272
15.1.5 防火墙附加功能 275
15.2 防火墙设计 276
15.2.1 防火墙的优势和劣势 276
15.2.2 防火墙部署 277
15.2.3 防火墙配置 277
15.3 本章小结 277
15.4 参考文献 277
第16章 虚拟专用网 279
16.1 VPN的工作原理 279
16.2 VPN协议 280
16.2.1 IPSec 280
16.2.2 认证头AH 281
16.2.3 封装安全载荷ESP 281
16.2.4 AH和ESP比较 282
16.2.5 点对点隧道协议PPTP 282
16.2.6 基于IPSec的二层隧道协议L2TP 282
16.2.7 SSL VPNs 282
16.3 远程访问VPN的安全 283
16.3.1 认证过程 283
16.3.2 客户端配置 284
16.3.3 客户端网络环境 286
16.3.4 离线客户活动 288
16.4 站到站VPN的安全 289
16.5 本章小结 289
16.6 参考文献 290
第17章 无线网络的安全性 291
17.1 射频安全性基础知识 292
17.1.1 射频知识安全效益 292
17.1.2 第一层的安全解决方案 293
17.2 数据链路层的无线安全功能、缺陷和威胁 302
17.2.1 果壳中的802.1 1和802.1 5数据链路层 302
17.2.2 802.1 1和802.1 5数据链路层的漏洞和威胁 303
17.2.3 封闭系统的SSID、MAC过滤和协议过滤 304
17.2.4 内置蓝牙网络数据链路的安全和威胁 304
17.3 无线漏洞和缓解 305
17.3.1 有线侧漏 305
17.3.2 流氓接入点 306
17.3.3 错误配置接入点 307
17.3.4 无线钓鱼 307
17.3.5 客户端隔离 307
17.4 无线网络的强化措施和建议 308
17.4.1 无线安全标准 308
17.4.2 临时密钥完整性协议和计数器模式CBC-MAC协议 308
17.4.3 基于802.1 x的认证和EAP方法 309
17.5 无线入侵检测和预防 310
17.5.1 无线IPS和IDS 311
17.5.2 蓝牙IPS 312
17.6 无线网络定位和安全网关 312
17.7 本章小结 313
17.8 参考文献 313
第18章 入侵检测和入侵防御系统 315
18.1 IDS的概念 315
18.1.1 威胁类型 316
18.1.2 第一代的IDS 319
18.1.3 第二代的IDS 320
18.2 IDS的种类及检测模型 320
18.2.1 基于主机的IDS(HIDS) 321
18.2.2 基于网络的IDS(NIDS) 322
18.2.3 异常检测(AD)模型 323
18.2.4 应该使用什么类型的IDS 326
18.3 IDS的特点 326
18.3.1 IDS终端用户界面 326
18.3.2 入侵防御系统(IPS) 327
18.3.3 IDS的管理 328
18.3.4 IDS日志和警报 330
18.4 IDS部署注意事项 331
18.4.1 IDS微调 331
18.4.2 IPS部署计划 332
18.5 安全信息和事件管理(SIEM) 333
18.5.1 数据聚合 333
18.5.2 分析 335
18.5.3 操作界面 335
18.5.4 其他SIEM产品特点 336
18.6 本章小结 336
18.7 参考文献 337
第19章 网络电话和程控交换机安全 339
19.1 背景 339
19.2 VoIP部件 341
19.2.1 呼叫控制 342
19.2.2 语音和媒体网关和网守 342
19.2.3 多会议单元 343
19.2.4 硬件终端 344
19.2.5 软件终端 344
19.2.6 呼叫和联络中心组件 345
19.2.7 语音信箱系统 345
19.3 VoIP的漏洞及对策 346
19.3.1 老生常谈,故伎重演:原始黑客 346
19.3.2 漏洞和攻击 348
19.3.3 协议 350
19.3.4 安全性:系统集成商和VoIP托管 356
19.4 PBX 360
19.4.1 破解PBX 361
19.4.2 保护PBX 361
19.5 TEM:电信费用管理 362
19.6 本章小结 362
19.7 参考文献 363
第Ⅳ部分 计算机安全 367
第20章 操作系统安全模型 367
20.1 操作系统安全模型 367
20.1.1 底层协议是不安全的 367
20.1.2 访问控制列表 369
20.1.3 强制访问控制(MAC)与自主访问控制(DAC) 369
20.2 经典安全模型 370
20.2.1 Bell-LaPadula模型 370
20.2.2 Biba模型 370
20.2.3 Clark-Wilson模型 371
20.2.4 TCSEC 371
20.2.5 标签 373
20.3 参考监视器 374
20.3.1 参考监视器的概念 374
20.3.2 Windows安全参考监视器 374
20.4 可信计算 375
20.5 操作系统安全的国际标准 375
20.5.1 通用标准 375
20.5.2 通用标准的起源 376
20.5.3 通用标准部分 376
20.5.4 保护配置文件和安全目标 377
20.5.5 通用标准存在的问题 377
20.6 本章小结 377
20.7 参考文献 377
第21章 Unix安全 379
21.1 初始化安装 379
21.2 保护Unix系统 380
21.2.1 减少攻击面 381
21.2.2 安装安全软件 382
21.2.3 配置安全设置 387
21.2.4 保持软件更新 393
21.3 把服务器放入网络区域 393
21.4 加强身份验证流程 393
21.4.1 需要强有力的密码 393
21.4.2 采用其他密码方式 394
21.4.3 限制系统的物理访问 394
21.5 限制管理员的数量和管理员的特权 395
21.6 备份系统 395
21.7 订阅安全列表 395
21.8 符合标准 396
21.9 本章小结 397
21.10 参考文献 397
第22章 Windows操作系统的安全性 399
22.1 确保Windows操作系统的安全性 399
22.1.1 禁用Windows系统服务项目和删除软件 400
22.1.2 安全配置剩余软件 406
22.1.3 使用组策略来管理设置 407
22.1.4 计算机策略 407
22.1.5 用户策略 408
22.1.6 安全配置和分析 410
22.1.7 组策略 411
22.1.8 安装安全软件 414
22.1.9 应用程序白名单 415
22.1.10 定期安装系统补丁 415
22.1.11 将网络划分为信任区域 416
22.1.12 屏蔽和过滤对服务的访问 416
22.1.13 减轻欺诈端口的影响 416
22.1.14 加强认证过程 417
22.1.15 要求、促进和训练用户使用高强度密码 417
22.1.16 使用密码替代品 418
22.1.17 应用技术和物理控制保护接入点 419
22.1.18 修改Windows身份验证系统的默认设置 419
22.1.19 限制管理员的数量以及特权 420
22.1.20 需要用管理员权限访问文件和注册表的应用程序 420
22.1.21 权限提升的需要 421
22.1.22 程序员作为管理员 421
22.1.23 要求管理员使用runas 421
22.2 活动目录域体系结构 422
22.2.1 逻辑安全边界 422
22.2.2 基于角色的管理 428
22.2.3 基于角色的安全配置方法 429
22.3 遵循标准 430
22.3.1 NIST 430
22.3.2 ISO 27002 431
22.3.3 COBIT 432
22.4 本章小结 432
22.5 参考文献 432
第23章 保护基础设施服务 435
23.1 电子邮件 435
23.1.1 协议的缺陷及应对措施 436
23.1.2 垃圾邮件及垃圾邮件控制 447
23.1.3 恶意软件及恶意软件控制 450
23.2 Web服务器 450
23.2.1 攻击的类型 451
23.2.2 Web服务器的保护 453
23.3 DNS服务器 454
23.3.1 安装补丁 455
23.3.2 阻止未经许可的区域传输 455
23.3.3 DNS缓存污染 456
23.4 代理服务器 456
23.4.1 HTTP代理 456
23.4.2 FTP代理 457
23.4.3 直接映射 457
23.4.4 POP3代理 458
23.4.5 HTTP连接 458
23.4.6 反向代理 458
23.5 本章小结 459
23.6 参考文献 459
第24章 虚拟机和云计算 461
24.1 虚拟机 461
24.1.1 保护管理程序 461
24.1.2 保护客机操作系统 462
24.1.3 保护虚拟存储器 462
24.1.4 保护虚拟网络 463
24.1.5 NIST Special Publication 800-125 463
24.2 云计算 463
24.2.1 云服务类型 464
24.2.2 云计算的安全效益 464
24.2.3 安全考虑 465
24.2.4 云计算风险和补救 467
24.3 本章小结 476
24.4 参考文献 476
第25章 确保移动设备的安全性 479
25.1 移动设备风险 479
25.1.1 设备风险 479
25.1.2 应用程序风险 481
25.2 移动设备安全 482
25.2.1 内置的安全功能 482
25.2.2 移动设备管理 484
25.2.3 数据丢失防护 487
25.3 本章小结 487
25.4 参考文献 487
第Ⅴ部分 应用程序安全 491
第26章 安全的应用程序设计 491
26.1 安全开发生命周期 491
26.2 应用程序安全实践 492
26.2.1 安全培训 492
26.2.2 安全开发基础设施 492
26.2.3 安全要求 493
26.2.4 安全设计 493
26.2.5 威胁建模 493
26.2.6 安全编码 493
26.2.7 安全代码审查 493
26.2.8 安全测试 493
26.2.9 安全文档 493
26.2.10 安全发布管理 494
26.2.11 相关补丁监控 494
26.2.12 产品安全事件响应 494
26.2.13 决策继续 494
26.3 Web应用程序安全 494
26.3.1 SQL注入 494
26.3.2 表单和脚本 499
26.3.3 cookie和会话管理 500
26.3.4 一般攻击 502
26.3.5 Web应用程序安全结论 502
26.4 客户端应用程序安全 503
26.4.1 运行权限 503
26.4.2 应用程序管理 504
26.4.3 与操作系统安全的集成 504
26.4.4 应用程序更新 505
26.5 远程管理安全 506
26.5.1 实施远程管理的原因 506
26.5.2 使用Web界面进行远程管理 506
26.5.3 验证基于Web的远程管理 507
26.5.4 自定义远程管理 508
26.6 本章小结 509
26.7 参考文献 509
第27章 编写安全软件 511
27.1 安全漏洞:原因及预防 511
27.1.1 缓冲区溢出 512
27.1.2 整数溢出 515
27.1.3 跨站点脚本 517
27.1.4 SQL注入 522
27.2 白名单与黑名单 525
27.3 本章小结 526
27.4 参考文献 526
第28章 J2EE安全 527
28.1 Java和J2EE概述 527
28.1.1 Java语言 527
28.1.2 对JVM的攻击 529
28.2 J2EE架构 529
28.2.1 servlet 529
28.2.2 JSP 530
28.2.3 EJB 532
28.2.4 容器 533
28.3 认证和授权 534
28.3.1 J2EE认证 534
28.3.2 J2EE授权 535
28.4 协议 536
28.4.1 HTTP 537
28.4.2 HTTPS 538
28.4.3 Web服务协议 540
28.4.4 IIOP 540
28.4.5 JRMP 542
28.4.6 专有通信协议 542
28.4.7 JMS 543
28.4.8 JDBC 543
28.5 本章小结 543
28.6 参考文献 544
第29章 Windows.NET安全 545
29.1 .NET的核心安全功能 545
29.1.1 托管代码 545
29.1.2 基于角色的安全性 549
29.1.3 代码访问安全性 552
29.1.4 应用程序域和独立存储 559
29.2 .NET中的应用程序级安全 562
29.2.1 使用加密功能 562
29.2.2.NET远程调用安全性 569
29.2.3 保护Web服务和Web应用程序 570
29.3 本章小结 572
29.4 参考文献 573
第30章 控制应用程序行为 575
30.1 基于网络的应用程序控制 575
30.1.1 访问控制面临的问题 576
30.1.2 应用程序可见度 577
30.1.3 控制应用程序通信 578
30.2 基于计算机的应用程序控制 579
30.2.1 应用程序白名单软件 580
30.2.2 应用程序安全设置 581
30.3 本章小结 583
30.4 参考文献 583
第Ⅵ部分 安全操作 587
第31章 安全操作管理 587
31.1 沟通和报告 587
31.2 变更管理 589
31.3 合法使用执法 591
31.3.1 合法使用执法的例子 591
31.3.2 主动执法 591
31.4 行政安全 592
31.5 管理措施 592
31.6 问责控制 593
31.7 紧跟时事 597
31.8 事件响应 598
31.9 本章小结 599
31.10 参考文献 600
第32章 灾难恢复、业务连续性、备份以及高可用性 601
32.1 灾难恢复 601
32.2 业务连续性计划 602
32.2.1 业务连续性计划的4个组成部分 602
32.2.2 第三方供应商问题 605
32.2.3 认知培训计划 605
32.3 备份 606
32.3.1 传统备份方法 606
32.3.2 非传统备份方案和前沿方法 610
32.3.3 备份策略 610
32.4 高可用性 611
32.4.1 自动冗余方法 612
32.4.2 手动冗余方法 614
32.5 遵循标准 614
32.5.1 ISO 27002 614
32.5.2 COBIT 615
32.6 本章小结 616
32.7 参考文献 616
第33章 事件响应和取证分析 617
33.1 事件响应 617
33.1.1 事件检测 618
33.1.2 响应和控制 618
33.1.3 恢复和重新开始 619
33.1.4 评估和改进 619
33.2 取证 620
33.2.1 法律要求 620
33.2.2 证据采集 621
33.2.3 证据分析 624
33.3 在事件响应过程中遵循法律 628
33.3.1 是否联系执法 628
33.3.2 证据保全 629
33.3.3 保密和特权问题 631
33.4 本章小结 632
33.5 参考文献 632
第Ⅶ部分 物理安全性 637
第34章 物理安全性 637
34.1 资产的分类 637
34.2 物理脆弱性评估 638
34.2.1 建筑 638
34.2.2 计算机设备和外围设备 638
34.2.3 文档 638
34.2.4 记录和设备 639
34.3 选择安全的站点位置 639
34.3.1 便利性 639
34.3.2 采光 640
34.3.3 邻近其他建筑物 640
34.3.4 靠近执法和应急响应点 640
34.3.5 射频和无线传输拦截 640
34.3.6 公共设备的可靠性 640
34.3.7 建造和挖掘 641
34.4 保护资产:锁和入口控制 641
34.4.1 锁 641
34.4.2 入口控制 642
34.5 物理入侵检测 643
34.5.1 闭路电视 643
34.5.2 警报器 643
34.6 遵循标准 643
34.6.1 ISO 27002 643
34.6.2 COBIT 644
34.7 本章小结 646
34.8 参考文献 646
术语表 647