第一部分 信息安全基础知识 3
第1章 信息安全 3
1.1 信息安全定义 4
1.2 安全是一个过程,而不是静止产品 10
1.2.1 防病毒软件 10
1.2.2 访问控制 10
1.2.3 防火墙 11
1.2.4 智能卡 11
1.2.5 生物统计学系统 11
1.2.6 入侵检测 12
1.2.7 策略管理 12
1.2.8 薄弱点扫描 12
项目1 检查计算机安全认证 13
1.2.10 物理安全机制 13
1.2.9 加密 13
1.3 思考与练习 14
第2章 攻击类型 15
2.1 定义访问攻击 16
2.1.1 监听 16
2.1.2 窃听 16
2.1.3 截听 18
2.1.4 访问攻击是如何完成的 18
2.2 定义修改攻击 21
2.2.1 更改攻击 21
2.2.2 插入攻击 21
2.2.3 删除攻击 22
2.2.4 如何完成修改攻击 22
2.3.4 拒绝对通信进行访问 23
2.3.3 拒绝对系统进行访问 23
2.3 拒绝服务攻击 23
2.3.1 拒绝对信息进行访问 23
2.3.2 拒绝对应用程序进行访问 23
2.3.5 如何实现DoS攻击 24
2.4 否认攻击 25
2.4.1 伪装 25
2.4.2 否认事件 25
2.4.3 如何实现否认攻击 25
项目2 检查系统的薄弱点 26
2.5 思考与练习 27
第3章 黑客技术 28
3.1 黑客的动机 29
3.1.1 挑战 29
3.1.3 恶意 30
3.1.2 贪婪 30
3.2 学习历史上的黑客技术 31
3.2.1 开放共享 31
3.2.2 糟糕的密码 32
3.2.3 编程中的漏洞 33
3.2.4 社会工程 34
3.2.5 缓存溢出 35
3.2.6 拒绝服务 37
3.3 学习高级技术 41
3.3.1 嗅闻交换网络 41
3.3.2 IP哄骗 43
3.4.1 病毒 46
3.4 识别恶意代码 46
3.4.2 特洛伊木马病毒 47
3.4.3 蠕虫病毒 47
3.4.4 Slapper蠕虫示例 47
3.4.5 混合体 48
3.5 识别无目标黑客的方法 49
3.5.1 目标 49
3.5.2 侦察 49
3.5.3 攻击手段 51
3.5.4 利用已受攻击的系统 51
3.6 识别有目标黑客的方法 56
3.6.1 目标 56
3.6.2 侦察 56
3.6.3 攻击方法 59
3.6.4 利用被攻击的系统 60
项目3 完成对你的站点的侦察 61
3.7 思考与练习 62
第4章 信息安全服务 63
4.1 定义机密性 64
4.1.1 文件的机密性 64
4.1.2 传输中信息的机密性 65
4.1.3 通信数据流的机密性 66
4.1.4 可以防止的攻击 67
4.2 定义完整性 67
4.2.1 文件的完整性 67
4.2.2 信息传输的完整性 68
4.2.3 可以预防的攻击 68
4.3.2 故障还原 69
4.3 定义可用性 69
4.3.1 备份 69
4.3.3 灾难还原 70
4.3.4 可以预防的攻击 70
4.4 定义责任性 70
4.4.1 识别和认证 70
4.4.2 审核 72
4.4.3 可以预防的攻击 72
项目4 保护信息 72
4.5 思考与练习 73
第二部分 基础工作 77
第5章 信息安全的法律问题 77
5.1.1 计算机诈骗与滥用(18 US Code 1030) 78
5.1 美国刑法 78
5.1.2 信用卡诈骗(18 US Code 1029) 79
5.1 3 版权(18 US Code 2319) 79
5.1.4 截听(18 US Code 2511) 79
5.1.5 对电子信息的访问(18 US Code 2701) 80
5.1.6 其他犯罪条款 80
5.1.7 Patriot法案 80
5.1.8 国土安全法案 82
5.2 州法律 82
5.3 其他国家的法律 83
5.3.1 澳大利亚 83
5.3.2 巴西 83
5.4 起诉 84
5.3.5 英国 84
5.3.4 中华人民共和国 84
5.3.3 印度 84
5.4.1 收集证据 85
5.4.2 联系执法机关 86
5.5 民事问题 86
5.5.1 员工问题 87
5.5.2 连带责任 87
5.6 隐私问题 88
5.6.1 客户信息 88
5.6.2 HIPAA 89
5.6.3 “可选择的”与必要的组成部分 89
5.6.4 安全规则的要求 89
5.6.5 Graham-Leach-Bliley财务服务现代化法案 91
项目5 起诉违法人员 92
5.7 思考与练习 93
第6章 策略 94
6.1 策略的重要性 95
6.1.1 定义安全性 95
6.1.2 让所有人看到 95
6.2 不同的策略 96
6.2.1 信息策略 96
6.2.2 安全策略 98
6.2.3 计算机使用策略 101
6.2.4 Internet使用策略 102
6.2.5 邮件策略 102
6.2.6 用户管理过程 103
6.2.7 系统管理过程 104
6.2.8 备份策略 105
6.2.9 应急响应过程 106
6.2.11 设计方法论 109
6.2.10 配置管理过程 109
6.2.12 灾难还原计划 110
6.3 制订正确的策略 112
6.3.1 定义重要策略 112
6.3.2 定义可接受的行为 113
6.3.3 确认利益相关人 113
6.3.4 定义正确的大纲 113
6.3.5 制订策略 113
6.4 部署策略 114
6.4.1 策略被接受 114
6.4.2 教育 114
6.5.2 现有系统和项目 115
6.5.3 审核 115
6.5 有效使用策略 115
6.5.1 新的系统和项目 115
6.4.3 实现 115
6.5.4 策略复查 116
项目6 制订机构内部使用策略 116
6.6 思考与练习 116
第7章 管理风险 118
7.1 风险定义 119
7.1.1 薄弱点 119
7.1.2 威胁 120
7.1.3 威胁+薄弱点=风险 123
7.2 确认机构的风险 124
7.2.2 确认真正威胁 125
7.2.1 确认薄弱点 125
7.2.3 检查防范措施 126
7.2.4 确认风险 126
7.3 评估风险 127
7.3.1 金钱 127
7.3.2 时间 128
7.3.3 资源 129
7.3.4 形象 129
7.3.5 业务损失 129
7.3.6 评估风险的方法 130
项目7 确认机构的电子风险 131
7.4 思考与练习 131
第8章 信息安全过程 133
8.1 评估 134
8.1.1 网络 136
8.1.2 物理安全 137
8.1.3 策略和过程 138
8.1.4 预防措施 139
8.1.5 安全意识 140
8.1.6 人员 140
8.1.7 工作量 141
8.1.8 态度 141
8.1.9 遵守情况 141
8.1.10 业务 142
8.1.11 评估结果 142
8.2 制订策略 142
8.2.1 选择制订策略的顺序 143
8.3 实现安全 144
8.2.2 升级现有的策略 144
8.3.2 身份验证系统 145
8.3.1 安全报告系统 145
8.3.3 Internet安全 146
8.3.4 入侵检测系统 146
8.3.5 加密 147
8.3.6 物理安全 148
8.3.7 工作人员 148
8.4 安全意识培训 148
8.4.1 员工 149
8.4.2 管理员 149
8.4.3 开发人员 149
8.4.4 主管人员 149
8.5.1 策略遵守情况的审核 150
8.5.2 定期的项目评估和新的项目评估 150
8.4.5 安全人员 150
8.5 审核 150
8.5.3 入侵测试 151
项目8 部署安全意识程序 151
8.6 思考与练习 152
第9章 信息安全最佳实践 153
9.1 管理性安全 154
9.1.1 策略和过程 154
9.1.2 资源 155
9.1.3 责任 156
9.1.4 教育 157
9.1.5 突发事故计划 159
9.1.6 安全项目计划 160
9.2 技术性安全 162
9.2.1 网络连接性 162
9.2.2 恶意代码的防护 163
9.2.3 验证机制 164
9.2.4 监控 165
9.2.5 加密 166
9.2.6 补丁系统 166
9.2.7 备份和还原 167
9.2.8 物理安全 167
9.3 ISO 17799应用 169
9.3.1 此标准中的关键概念 169
项目9 缺口分析 170
9.3.2 如何使用此标准 170
9.4 思考与练习 171
第三部分 安全技术 175
第10章 防火墙 175
10.1 防火墙的类型 176
10.1.1 应用层防火墙 176
10.1.2 数据包过滤防火墙 177
10.1.3 混合型 179
10.2 防火墙的配置 180
10.2.1 体系结构1:防火墙之外Internet可以访问的系统 180
10.2.2 体系结构2:单一防火墙 181
10.2.3 体系结构3:双重防火墙 182
项目10 学习各种防火墙之间的区别 184
10.3 设计防火墙规则集 184
10.4 思考与练习 185
第11章 虚拟专用网络 186
11.1 虚拟专用网络 187
11.2 部署用户VPN 188
11.2.1 用户VPN的优点 189
11.2.2 用户VPN的问题 190
11.2.3 管理用户VPN 191
11.3 部署站点VPN 192
11.3.1 站点VPN的优点 192
11.3.2 站点VPN的问题 193
11.3.3 管理站点VPN 194
11.4 标准VPN技术 194
11.4.1 VPN服务器 195
11.4.2 加密算法 197
11.4.3 认证系统 197
11.4.4 VPN协议 198
11.5 VPN系统的类型 199
11.5.1 硬件系统 199
11.5.2 软件系统 200
11.5.3 基于Web的系统 200
项目11 研究不同VPN的区别 200
11.6 思考与练习 201
第12章 加密 202
12.1 加密的基本概念 203
12.1.1 加密的术语 203
12.1.2 针对加密系统的攻击 204
12.2.1 私钥加密 205
12.2 私钥加密 205
12.2.2 替换密文 206
12.2.3 一次性便条 206
12.2.4 数据加密标准 207
12.2.5 三重DES 209
12.2.6 密码加密 210
12.2.7 高级加密标准:Rijndael 211
12.2.8 其他私钥算法 211
12.3 公钥加密 212
12.3.1 公钥加密 213
12.3.2 Diffie-Hellman密钥交换 213
12.3.3 RSA 214
12.3.4 其他的公钥算法 216
12.4.1 数字签名概述 217
12.4 数字签名 217
12.4.2 安全的哈希函数 218
12.5 密钥管理 219
12.5.1 创建密钥 219
12.5.2 密钥发布 220
12.5.3 密钥证书 221
12.5.4 密钥保护 222
12.5.5 密钥注销 222
12.6 系统中的信任问题 223
12.6.1 分层模型 223
12.6.2 Web模型 225
项目12 设计加密系统 226
12.7 思考与练习 227
第13章 入侵检测 229
13.1.1 基于主机的IDS 231
13.1 入侵检测系统(IDS)的类型 231
13.1.2 基于网络的IDS 234
13.1.3 是否某种IDS更优 235
13.2 安装IDS 236
13.2.1 定义IDS的目标 236
13.2.2 选择监视内容 238
13.2.3 选择响应方式 240
13.2.4 设置临界值 243
13.2.5 实现系统 244
13.3 管理IDS 245
13.3.1 理解IDS可以提供的信息 245
13.3.2 调查可疑事件 248
13.4.2 入侵预防问题 251
13.4 理解入侵预防措施 251
13.4.1 如何使用IDS预防入侵活动 251
项目13 部署网络IDS 253
13.5 思考与练习 254
第四部分 实际应用与特定平台的实现 257
第14章 Unix的安全问题 257
14.1 安装系统 258
14.1.1 启动文件 258
14.1.2 允许的服务 259
14.1.3 系统配置文件 261
14.1.4 补丁程序 266
14.2 用户管理 267
14.2.1 向系统中添加用户 267
14.3.1 审核系统 269
14.2.2 从系统中删除用户 269
14.3 系统管理 269
14.3.2 日志文件 270
14.3.3 隐藏文件 271
14.3.4 SUID和SGID文件 271
14.3.5 所有人都可以写的文件 271
14.3.6 查找可疑迹象 272
项目14 审核Unix系统 275
14.4 思考与练习 276
第15章 Windows 2000/Windows 2003 Server的安全问题 278
15.1 安装系统 279
15.1.1 本地安全策略设置 279
15.1.2 系统配置 283
15.1.3 Windows 2003中的特殊配置问题 288
15.2 用户管理 291
15.2.1 向系统中添加用户 291
15.2.2 设置文件权限 292
15.2.3 从系统中删除用户 293
15.3 系统管理 294
15.3.1 seeedit命令 294
15.3.2 审核系统 296
15.3.3 日志文件 297
15.3.4 查找可疑迹象 298
15.4 使用活动目录 300
15.4.1 安全设置和安装 300
15.4.2 管理 301
15.4.3 组策略和安全 301
15.4.4 AD用户和组管理 307
项目15 使用secedit管理Windows 2000安全配置 308
15.5 思考与练习 309
第16章 Internet体系结构 310
16.1 提供的服务 311
16.1.1 邮件 311
16.1.2 加密的电子邮件 311
16.1.3 Web 312
16.1.4 对Intern.et的内部访问 312
16.1.5 从外部访问内部系统 313
16.1.6 控制服务 313
16.2 不应该提供的服务 314
16.3 开发通信体系结构 315
16.3.1 单线访问 315
16.3.2 对单个ISP的多线访问 317
16.3.3 对多个ISP的多线访问 319
16.4 设计非军事区 322
16.4.1 定义DMZ 322
16.4.2 应该放入DMZ中的系统 323
16.4.3 合适的DMZ体系结构 325
16.5 理解网络地址转换 328
16.5.1 网络地址转换 328
16.5.2 专用类地址 329
16.5.3 静态NAT 329
16.5.4 动态NAT 330
16.6 伙伴网络 331
16.6.1 使用伙伴网络 331
16.6.2 安装 332
16.6.3 寻址问题 333
16.7 思考与练习 334
项目16 创建Internet体系结构 334
第17章 电子商务安全要求 336
17.1 理解电子商务服务 337
17.1.1 电子商务服务与常规DMZ服务的区别 338
17.1.2 电子商务服务的例子 338
17.2 可用性的重要性 340
17.2.1 B-to-C问题 340
17.2.2 B-to-B问题 340
17.2.3 全球时间 341
17.2.4 客户的满意程度 341
17.2.5 停机时间带来的损失 342
17.2.6 解决可用性问题 342
17.3.1 通信安全 343
17.3 客户端安全性 343
17.3.2 在客户系统上保存信息 344
17.3.3 否认 345
17.4 服务器端安全性 346
17.4.1 存储在服务器上的信息 346
17.4.2 保护服务器不受攻击 346
17.5 实现应用程序的安全 350
17.5.1 正确的应用程序设计 351
17.5.2 正确的编程技术 352
17.5.3 向外界展示代码 352
17.5.4 配置管理 353
17.6 数据库服务器的安全性 353
17.6.2 与电子商务服务器通信 354
17.6.1 数据库的位置 354
17.6.3 对内部访问进行保护 356
17.7 电子商务体系结构 356
17.7.1 服务器的位置和连接性 356
17.7.2 可用性 357
17.7.3 薄弱点扫描 358
17.7.4 审核信息和问题检测 358
项目17 设计电子商务体系结构 358
17.8 思考与练习 359
第18章 无线安全 360
18.1 当前最新的无线技术 361
18.1.1 标准体系结构 362
18.1.2 数据传输安全 362
18.1.3 身份验证 364
18.2 无线安全问题 366
18.2.1 WLAN检测 366
18.2.2 窃听 366
18.2.3 主动式攻击 368
18.2.4 潜在的法律问题 369
18.3 安全地部署无线网络 369
18.3.1 接入点安全 369
18.3.2 传输安全 370
18.3.3 工作站安全 370
18.3.4 站点安全 370
项目18 实现无线LAN 371
18.4 思考与练习 371
附录 思考与练习 答案 373