第1章 黑客概论 1
1.1 什么是黑客 1
1.2 黑客促进了网络的发展 2
1.3 黑客(Cracker)的恶意攻击 2
1.4 小结 5
1.5 常见问题解答 5
第一部分 网络安全基础 7
第2章 网络安全原理——TCP/IP协议簇 7
2.1 OSI和802网络模型 7
2.1.1 OSI模型 7
2.1.2 802工程模型 10
2.1.3 以太网和IEEE 802的不同 11
2.1.4 TCP/IP的分层 12
2.1.5 互联网的地址 14
2.1.6 端口 15
2.2 IP协议 15
2.2.1 IP数据包格式 16
2.2.2 子网 17
2.3 ARP/RARP也址解析和逆向解析 18
2.3.1 ARP数据包格式 19
2.3.2 ARP的使用 20
2.3.3 免费ARP和ARP代理 22
2.3.4 arp命令 22
2.4.1 ICMP报文格式 23
2.4 ICMP报文控制协议 23
2.4.2 ICMP消息类 24
2.4.3 ICMP报文应用举例 28
2.5 ping程序 29
2.5.1 ping的原理 29
2.5.2 ping输出 29
2.5.3 IP协议的记录路由选项 30
2.5.4 举例 31
2.6 Traceroute程序 33
2.6.1 Traceroute的原理 33
2.6.2 Traceroute的使用 34
2.7.1 路由基本知识 35
2.7 IP选路 35
2.7.2 路由表及选路原则 37
2.7.3 路由表的动态更新 40
2.8 动态选路协议 41
2.8.1 动态选路 41
2.8.2 选路信息协议(RIP) 41
2.8.3 边界网关协议(BGP) 44
2.9 UDP用户数据包协议 44
2.9.1 UDP的功能 44
2.9.2 UDP数据包格式 44
2.9.3 分片 45
2.10.1 广播 48
2.10 广播和多播 48
2.10.3 多播地址转换 49
2.10.2 多播 49
2.11 IGMP组管理协议 50
2.11.1 IGMP报文 50
2.11.2 组播作用域 51
2.12 域名系统 52
2.12.1 域名的分级 52
2.12.2 域名转换过程 53
2.13.1 BOOTP的功能 54
2.13.2 BOOTP的报文格式 54
2.13 BOOTP和DHCP 54
2.13.3 DHCP动态地址分配 55
2.13.4 DHCP的地址获取过程 56
2.13.5 DHCP报文格式 56
2.13.6 Linux DHCP服务器的配置 58
2.14 TCP传输控制协议 59
2.14.1 TCP通信过程 59
2.14.2 TCP报文格式 60
2.14.3 TCP连接的建立 61
2.14.4 TCP连接的终止 62
2.14.5 一个例子 62
2.15.1 网络管理的组成 64
2.15.2 管理信息库 64
2.15 SNMP简单网络管理协议 64
2.15.3 SNMP协议 66
2.16 小结 67
2.17 常见问题解答 67
第二部分 网络世界的威胁 69
第3章 黑客攻击的主要手段 69
3.1 黑客攻击手段分类 69
3.2 端口扫描 71
3.2.1 手工探测 71
3.2.2 常用网络命令 73
3.2.3 工具扫描 75
3.2.4 全扫描 76
3.2.5 TCP SYN扫描 77
3.2.6 TCP FIN扫描 77
3.2.7 认证扫描 77
3.2.8 FTP代理扫描 78
3.2.9 栈指纹 78
3.3 网络监听 79
3.3.1 什么是网络监听 79
3.3.2 网络监听的原理 79
3.3.3 以太网的监听原理 79
3.3.4 网络监听的目的 81
3.4 破译密码 81
3.5.1 什么是IP欺骗 82
3.5.2 假冒IP地址认证 82
3.5 IP欺骗 82
3.5.3 假冒IP地址轰炸 85
3.6 缓冲区溢出 85
3.6.1 什么是缓冲区溢出 85
3.6.2 缓冲区溢出的攻击原理 86
3.7 拒绝服务 94
3.7.1 什么是DoS攻击 94
3.7.2 进程超载 94
3.7.3 磁盘容量不足 95
3.7.4 多的服务请求 95
3.7.5 半开连接 96
3.8 常见的攻击过程 98
3.7.6 消息淹没 98
3.9 小结 99
3.10 常见问题解答 99
第4章 黑客常用工具 101
4.1 特洛伊木马 101
4.1.1 特洛伊木马的由来 101
4.1.2 特洛伊木马的工作原理 102
4.1.3 木马的检测 102
4.2 嗅探器 104
4.2.1 什么是嗅探器 104
4.2.2 常用的嗅探软件 105
4.2.3 嗅探检测 107
4.3.2 软件中口令的破解 108
4.3 口令破解器 108
4.3.1 什么是口令破解器 108
4.3.3 候选口令产生器 109
4.3.4 口令文件 109
4.3.5 破解telnet密码 110
4.3.6 解密工具——John 111
4.3.7 防范办法 114
4.4 端口扫描器 115
4.4.1 什么是扫描器 115
4.4.2 安全扫描器——SATAN 116
4.4.3 小结 118
4.5 常见问题解答 118
5.1.1 电子邮件炸弹 120
第5章 电子邮件攻击 120
5.1 电子邮件的攻击方式 120
5.1.2 电子邮件欺骗 122
5.1.3 窃取电子邮件 123
5.1.4 电子邮件病毒 123
5.2 保护邮件安全 124
5.3 深入了解电子邮件 125
5.3.1 电子邮件术语 125
5.3.2 电子邮件标准 126
5.3.3 简单邮件传输协议(SMTP/ESMTP) 126
5.3.4 手工发送邮件欺骗 128
5.3.5 电子邮件传输格式 129
5.3.6 邮局协议 136
5.3.7 手工收取POP邮件 137
5.3.8 互联网邮件访问协议(IMAP) 138
5.4 使用PGP加密软件 139
5.4.1 PGP概述 139
5.4.2 PGP的版本 140
5.4.3 PGP的原理 140
5.4.4 PGP的安装 142
5.4.5 PGP的使用 143
5.5 小结 149
5.6 常见问题解答 150
6.1.1 计算机病毒的发展 151
6.1 病毒的工作原理 151
第6章 病毒 151
6.1.2 计算机病毒特征 152
6.2 常见的病毒类型 153
6.2.1 引导型病毒 153
6.2.2 引导型病毒的清除 155
6.2.3 文件型病毒 155
6.2.4 复合型病毒 156
6.2.5 宏病毒 156
6.2.6 病毒的清除 157
6.3 反病毒技术 158
6.3.1 病毒码扫描法 158
6.3.6 实时I/O扫描(Realtime I/O Scan) 159
6.3.5 先知扫描法VICE(Virus Instruction Code Emulation) 159
6.3.7 文件宏病毒陷阱(MacroTrap) 159
6.3.2 加总比对法(Check-sum) 159
6.3.4 软件仿真扫描法 159
6.3.3 人工智能陷阱(Rule-based) 159
6.4 NT类操作系统与病毒 160
6.4.1 NT操作系统的特点 160
6.4.2 NT的多系统引导 160
6.4.3 NT下的MBR病毒 161
6.4.4 NT下的PBR病毒 162
6.4.5 NT下的DOS病毒 163
6.4.9 NT的病毒防护 165
6.4.8 NT本地病毒 165
6.4.7 NT下的宏病毒 165
6.4.6 NT下的Windows 3.1病毒 165
6.5 Linux与病毒 167
6.6 第二代病毒 168
6.7 尼姆达病毒——未来的病毒代表 168
6.7.1 尼姆达病毒的传播方式 169
6.7.2 尼姆达病毒文件 171
6.7.3 尼姆达的手工清除 172
6.8 常见的杀毒软件 173
6.9 病毒的预防 174
6.11 常见问题解答 176
6.10 小结 176
第7章 Windows NT/2000/XP的安全性 179
7.1 Windows 2000的体系结构和安全性 179
7.1.1 Windows NT的安全特性 179
7.1.2 Windows 2000的新特性 182
7.1.3 Windows 2000的体系结构 187
7.2 Windows 2000的安全配置和管理 190
7.2.1 管理组策略 190
7.2.2 Windows 2000安全配置工具 191
7.2.3 活动目录的安全配置 193
7.3.1 注册表概述 195
7.3 Windows 2000注册表安全 195
7.3.2 注册表的备份和恢复 197
7.3.3 注册表的安全 199
7.4 Windows 2000的安全缺陷 200
7.5 小结 201
7.6 常见问题解答 201
第8章 UNIX和Linux的安全性 204
8.1 UNIX/Lirux安全性概述 204
8.2 UNIX/Linux的用户管理 206
8.2.1 用户名和口令 206
8.2.2 用户和用户组 209
8.2.4 使用su获得超级用户权限 210
8.2.5 盗取超级用户权限 210
8.2.3 超级用户 210
8.3 UNIX的文件管理 211
8.3.1 文件系统基础 211
8.3.2 文件系统结构 212
8.3.3 文件系统类型 214
8.3.4 文件权限 215
8.4 小结 216
8.5 常见问题解答 217
第三部分 网络安全对策 222
第9章 安全体系结构与安全标准 222
9.1 OSI安全体系 222
9.1.1 安全服务 222
9.1.2 安全机制 224
9.1.3 安全管理 226
9.2 美国TCSEC(桔皮书) 226
9.2.1 D类安全等级 228
9 2.2 C类安全等级 228
9.2.3 B类安全等级 228
9.2.4 A类安全等级 228
9.3 欧洲的ITSEC 229
9.3.1 功能 229
9.3.2 保证—有效性 231
9.3.3 保证—正确性 231
9.4 加拿大CTCPEC 232
9.6 共同标准(CC) 235
9.5 美国联邦标准(FC) 235
9.6.1 CC的功能要求 236
9.6.2 CC的保证要求 237
9.7 我国的信息技术安全标准 239
9.8 小结 239
9.9 常见问题解答 239
第10章 审计跟踪 241
10.1 Linux/UNIX日志 241
10.1.1 概述 241
10.1.2 连接时间日志 242
10.1.3 进程统计 245
10.1.4 Syslog设备 247
10.1.5 入侵者如何擦除日志 249
10.1.6 保护日志 250
10.2 Windows 2000审核 252
10.2.1 创建安全策略 252
10.2.2 审核举例 253
10.2.3 查看安全日志 255
10.3 小结 259
10.4 常见问题解答 259
第11章 防火墙 261
11.1 防火墙基础 261
11.1.1 防火墙的功能 261
11.1.3 防火墙的不足之处 262
11.1.2 防火墙的优点 262
11.2 防火墙体系结构 263
11.2.1 双宿主主机防火墙 263
11.2.2 主机屏蔽防火墙 265
11.2.3 子网屏蔽防火墙 266
11.2.4 防火墙体系结构的组合形式 268
11.3 防火墙的工作原理 268
11.3.1 包过滤型防火墙(PacketFilterFirewall) 268
11.3.2 代理服务器型防火墙(ProxyServiceFirewall) 269
11.4.1 美国品牌 271
11.4 著名的防火墙产品 271
11.3.4 混合型防火墙(HybridFirewall) 271
11.3.3 电路级网关(CircuitGateway) 271
11.4.2 本土产品 274
11.5 小结 276
11.6 常见问题解答 277
第12章 加密和认证 278
12.1 单向哈希函数 278
12.2 秘密密钥加密法 279
12.3 公开密钥加密法 280
12.4 加密算法的法律问题 283
12.5 认证 283
12.5.2 基于地址的认证 284
12.5.3 加密学认证 284
12.5.1 基于密码的认证 284
12.6 密钥分发 286
12.6.1 人工密钥分发 286
12.6.2 基于中心的密钥分发 287
12.6.3 基于认证的密钥分发 288
12.7 Kerberos认证协议 288
12.7.1 Kerberos的优点 290
12.7.2 Kerberos的缺点 290
12.8 公开密钥体系结构PKI 291
12.8.1 PKI的优点 292
12.9 小结 293
12.8.2 PKI的缺点 293
12.10 常见问题解答 294
第13章 IP层安全协议 296
13.1 IPsec之前的研究 296
13.2 IETF IPsec概述 297
13.3 安全关联 300
13.4 验证头 302
13.5 安全载荷封装 306
13.6 密钥管理和密钥交换 309
13.6.1 Photuris和SKEME密钥管理协议 310
13.6.2 ISAKMP 313
13.6.3 OAKLEY 314
13.6.4 IKE 315
13.7 IPsec的应用 317
13.7.1 Windows 2000上的IPsec实现 317
13.7.2 UNIX/Linux上的IPsec实现 323
13.8 小结 325
13.9 常见问题解答 326
第14章 传输层安全协议 328
14.1 SSH 328
14.1.1 SSH传输层协议 329
14.1.2 SSH认证协议 332
14.1.3 SSH连接协议 332
14.2 安全Socket层 333
14.2.1 SSL记录协议 335
14.2.2 SSL握手协议 336
14.3 私有通信技术 338
14.4 传输层安全协议 339
14.5 SSL/TLS的应用 339
14.5.1 SSL/TLS在Windows 2000 Server上的实现 339
14.5.2 SSL/TLS在UNIX/Linux上的实现 348
14.6 小结 352
14.7 常见问题解答 352
第15章 应用层安全协议 355
15.1 Telnet 355
15.1.1 安全的RPC认证 356
15.1.2 安全telnet 357
15.2 电子邮件 358
15.2.1 增强保密邮件 359
15.2.2 相当好的保密性(Pretty Good Privacy) 361
15.2.3 安全MIME 362
15.3 WWW事务 364
15.3.1 安全HTTP 364
15.4 其他的应用 367
15.5 小结 367
15.6 常见问题解答 367
第16章 Web服务安全和电子商务安全 369
16.1 运行Web服务器的主机系统 369
16.2 Web服务器的安全 370
16.2.1 常见错误 371
16.2.2 配置根目录 372
16.2.3 配置服务器的安全 372
16.2.4 SSI的安全问题 373
16.3 Web安全认证 375
16.3.1 基本Web认证 375
16.3.2 加密认证 377
16.3.3 安全电子交易简介 378
16.3.4 实现Web认证 380
16.4 CGI安全 382
16.4.1 防止恶意接管 383
16.4.2 错误处理 386
16.4.3 语言特性 388
16.5 小结 389
16.6 常见问题解答 390
第17章 CiSco安全解决方案 392
17.1 AAA概述 392
17.1.1 AAA的组成 392
17.1.2 使用AAA的优点 393
17.1 3 AAA配置使用 393
17.2 AAA身份认证 394
17.2.1 AAA认证方法列表 394
17.2.2 方法列表举例 394
17.3.1 授权的命名方法列表 396
17.3.2 AAA授权方法 396
17.3 AAA用户授权 396
17.3.3 授权配置实例 397
17.4 AAA用户记账 399
17.4.1 记账的命名方法列表 399
17.4.2 AAA记账配置示例 400
17.5 RADIUS概述 401
17.6 RADIUS认证步骤 402
17.7 RADIUS协议简介 403
17.7.1 RADIUS包格式 403
17.7.2 RADIUS包类型 404
17.7.3 RADIUS属性 405
17.8 小结 406
17.9 常见问题解答 407