本书特色
本书包括网络安全的方方面面。首先介绍了网络攻防技术,包括网络攻击的基本流程、渗透测试的主要步骤、网络扫描与嗅探、口令破解、欺骗攻击、Web攻击、缓冲区溢出、恶意代码、拒绝服务攻击等,并针对各类攻击给出了相应的防御策略。然后介绍了网络安全防护与管理技术,主要包括身份认证、访问控制、防火墙、入侵检测与入侵防御、虚拟专用网、安全审计和无线网络安全等安全防护技术。 本书内容涵盖范围较广,理论与实践相结合,可以作为高等院校网络空间安全相关专业本科生的教材,也可为从事网络安全方面工作的技术和管理人员提供参考。
内容简介
本书内容全面,涉及网络安全的主要方面。全书由三篇组成:网络安全概述、网络攻击与防御技术、网络安全防护与管理技术。网络安全概述部分主要介绍了网络安全的相关概念,包括安全威胁及相关安全模型等,并简要概述了网络安全体系结构。网络攻击与防御技术部分主要介绍了网络攻击的基本流程以及典型的黑客攻击技术,包括网络扫描与xiu探、口令破解、欺骗攻击、Web攻击、缓冲区溢出、恶意代码、拒绝服务攻击等,并针对每种类型的攻击给出了相应的防御措施。网络安全防护与管理技术部分主要介绍了身份鉴别与认证、访问控制、防火墙、入侵检测与入侵防御、虚拟专用网、安全审计、无线网络安全等安全防护技术。
本书选材合理,结构紧凑,理论与实践相结合,可作为高等学校网络空间安全相关专业本科生的教材,也可为从事网络安全方面工作的技术和管理人员提供参考。
目录
第1章 网络安全的概念与体系结构 2
1.1 网络安全问题 2
1.2 网络安全的概念及基本属性 3
1.3 安全威胁 5
1.4 网络攻击 5
1.5 网络安全体系结构 7
1.5.1 风险分析 7
1.5.2 安全策略 8
1.5.3 安全服务 9
1.5.4 安全机制 10
1.5.5 安全服务与安全机制的关系 11
1.6 安全模型 13
1.6.1 P2DR安全模型 13
1.6.2 PDRR安全模型 15
1.6.3 P2DR2安全模型 17
1.7 网络安全等级保护 17
习题 23
第二篇 网络攻击与防御技术
第2章 黑客攻击流程与渗透测试 26
2.1 黑客攻击流程 26
2.2 渗透测试简介 33
2.3 渗透测试工具(Metasploit) 35
习题 41
第3章 信息收集与防御 43
3.1 网络扫描技术概述 43
3.1.1 主机扫描技术 44
3.1.2 端口扫描技术 45
3.1.3 操作系统探测技术 51
3.1.4 端口扫描工具Nmap介绍 55
3.2 查点技术 57
3.2.1 服务指纹分析技术 58
3.2.2 旗标抓取技术 58
3.2.3 漏洞扫描方式及漏洞扫描器 60
3.3 扫描与查点的防御措施 63
3.4 网络嗅探 63
3.4.1 共享式局域网嗅探技术 65
3.4.2 交换式局域网嗅探技术 66
3.4.3 无线网络嗅探技术 68
3.4.4 嗅探器的实现 69
3.4.5 嗅探工具介绍 71
3.5 嗅探攻击的检测与防御 75
习题 75
第4章 口令破解与防御 77
4.1 常用口令破解技术 77
4.1.1 暴力破解 77
4.1.2 字典攻击 78
4.1.3 组合攻击 78
4.1.4 社会工程学 79
4.2 操作系统口令文件与破解 81
4.2.1 Windows系统口令文件 81
4.2.2 Linux系统口令文件 84
4.2.3 操作系统口令破解 86
4.3 数据库口令文件与破解 89
4.4 口令破解防御技术 90
习题 92
第5章 欺骗攻击与防御 94
5.1 ARP欺骗 94
5.1.1 ARP欺骗的工作原理 94
5.1.2 ARP欺骗攻击实例 96
5.1.3 ARP欺骗的防御 97
5.2 IP欺骗 98
5.2.1 简单的IP欺骗 98
5.2.2 TCP会话劫持 99
5.2.3 IP欺骗的防御 102
5.3 DNS欺骗 103
5.3.1 DNS欺骗的工作原理 103
5.3.2 DNS欺骗的实现 104
5.4 电子邮件欺骗 105
5.4.1 电子邮件欺骗的工作原理 105
5.4.2 电子邮件欺骗的防御 109
5.5 Web欺骗 111
5.5.1 Web欺骗的工作原理 111
5.5.2 Web欺骗的防御 114
习题 114
第6章 Web攻击与防御 116
6.1 Web安全概述 116
6.2 同源策略 117
6.3 SQL注入攻击 118
6.3.1 SQL注入基本原理 118
6.3.2 SQL注入的分类 120
6.3.3 SQL注入的攻击步骤 123
6.3.4 SQL注入工具SQLMap 124
6.3.5 SQL注入的防御 128
6.4 XSS攻击 130
6.4.1 跨站脚本攻击原理 130
6.4.2 跨站脚本攻击的分类 132
6.4.3 跨站脚本攻击的检测与防御 135
6.5 CSRF攻击 136
6.5.1 CSRF攻击原理 136
6.5.2 CSRF攻击的分类 137
6.5.3 CSRF攻击的危害 138
6.5.4 CSRF攻击的检测与防御 140
6.6 命令执行漏洞 141
6.6.1 命令执行漏洞的基本原理 141
6.6.2 命令执行漏洞的防御 142
6.7 文件包含漏洞 143
6.7.1 本地文件包含 143
6.7.2 远程文件包含 144
6.7.3 文件包含的危害 145
6.7.4 文件包含的检测与防御 145
6.8 文件上传与文件解析漏洞 146
6.8.1 文件上传漏洞原理 146
6.8.2 文件解析漏洞原理 148
6.8.3 文件上传与解析漏洞的防御 149
6.9 反序列化漏洞 149
6.9.1 反序列化攻击原理 149
6.9.2 反序列化攻击的防御 154
6.10 XXE漏洞 154
6.10.1 XML基础 154
6.10.2 XXE漏洞原理与危害 156
6.10.3 XXE漏洞的防御 157
习题 158
第7章 缓冲区溢出攻击与防御 160
7.1 缓冲区溢出概述 160
7.2 基础知识 161
7.2.1 程序的组织结构 161
7.2.2 字节序 164
7.2.3 调用约定 164
7.2.4 常用调试工具介绍 169
7.3 缓冲区溢出原理 171
7.3.1 栈溢出 171
7.3.2 格式化字符串溢出 176
7.3.3 整数溢出 177
7.3.4 堆溢出 178
7.4 缓冲区溢出利用与shellcode 184
7.5 缓冲区溢出攻击的防御 192
7.5.1 缓冲区溢出的防范策略 192
7.5.2 缓冲区溢出常见的安全机制 195
习题 199
第8章 恶意代码防护技术 201
8.1 恶意代码概述及分类 201
8.1.1 恶意代码发展史 202
8.1.2 计算机病毒 204
8.1.3 蠕虫 207
8.1.4 特洛伊木马 208
8.1.5 间谍软件 210
8.1.6 僵尸网络 212
8.1.7 后门 214
8.1.8 高级持续性威胁APT 215
8.1.9 勒索软件 216
8.2 恶意代码的防御 219
8.2.1 恶意代码检测技术 220
8.2.2 恶意代码清除技术 221
习题 222
第9章 拒绝服务攻击与防御 225
9.1 拒绝服务攻击概述 225
9.1.1 拒绝服务攻击的定义 225
9.1.2 拒绝服务攻击的分类 225
9.2 典型的拒绝服务攻击 226
9.2.1 Ping of ?Death 226
9.2.2 泛洪攻击 226
9.2.3 Smurf攻击 229
9.3 分布式拒绝服务攻击(DDoS) 230
9.4 DoS/DDoS攻击的检测与防御 231
习题 232
第三篇 网络安全防护与管理技术
第10章 身份鉴别与认证 234
10.1 身份鉴别与认证概述 234
10.2 认证鉴别机制 236
10.2.1 基于口令的认证 236
10.2.2 基于密码学的认证 241
10.2.3 基于令牌的认证 242
10.2.4 基于生物特征的认证 243
10.3 典型认证技术 245
10.3.1 Kerberos认证协议 245
10.3.2 公钥基础设施PKI 250
习题 264
第11章 访问控制 266
11.1 访问控制的基本概念 266
11.2 典型的访问控制策略模型 267
11.2.1 自主访问控制(DAC) 267
11.2.2 强制访问控制(MAC) 269
11.2.3 基于角色的访问控制(RBAC) 269
11.2.4 基于属性的访问控制(ABAC) 274
11.3 访问控制机制 276
11.4 计算机安全形式化模型与
多级安全 281
11.4.1 Bell-LaPadula模型(BLP) 281
11.4.2 Biba模型 282
11.4.3 多级安全 283
习题 284
第12章 防火墙 286
12.1 防火墙概述 286
12.1.1 防火墙的概念与功能 286
12.1.2 防火墙的基本策略与安全规则 288
12.2 防火墙的分类 289
12.2.1 包过滤防火墙/包过滤路由器 289
12.2.2 状态监测防火墙 292
12.2.3 代理(Proxy)技术 293
12.2.4 网络地址转换技术 296
12.3 防火墙的配置方案 299
12.3.1 屏蔽路由器 299
12.3.2 双宿主机 300
12.3.3 屏蔽主机 300
12.3.4 屏蔽子网 301
12.4 防火墙实例:Netfilter/iptables 304
12.5 Web应用防火墙WAF 307
习题 309
第13章 入侵检测与入侵防御 311
13.1 入侵检测的基本概念 311
13.2 入侵检测流程 314
13.3 入侵检测技术 317
13.3.1 异常检测技术 317
13.3.2 特征检测技术 318
13.4 入侵检测的分类 319
13.4.1 基于主机的入侵检测系统 319
13.4.2 基于网络的入侵检测系统 321
13.4.3 分布式/混合式入侵检测系统 324
13.5 蜜罐 325
13.6 入侵防御系统 326
13.7 Snort入侵检测系统 328
习题 331
第14章 虚拟专用网 333
14.1 虚拟专用网概述 333
14.2 VPN的分类 334
14.3 典型的虚拟专用网技术 335
14.4 第二层隧道协议 336
14.4.1 PPTP 336
14.4.2 L2TP 337
14.5 IPSec 338
14.5.1 IPSec概述 338
14.5.2 IPSec的工作模式 339
14.5.3 安全关联SA 340
14.5.4 IPSec安全策略 342
14.5.5 封装安全载荷(ESP) 343
14.5.6 认证头(AH) 346
14.5.7 Internet密钥交换协议IKE 347
14.6 SSL/TLS 351
14.6.1 SSL/TLS协议概述 351
14.6.2 攻击SSL/TLS 356
14.6.3 HTTPS 356
习题 357
第15章 安全审计 359
15.1 安全审计体系结构与功能 359
15.2 安全审计迹 361
15.3 日志审计与分析 363
15.3.1 系统级日志功能实现 364
15.3.2 应用级日志功能实现 367
15.4 审计分析 368
习题 369
第16章 无线网络安全 371
16.1 无线局域网安全 372
16.1.1 无线局域网组成 372
16.1.2 无线局域网安全概述 373
16.1.3 WEP 375
16.1.4 TKIP 379
16.1.5 CCMP 381
16.1.6 IEEE 802.11i的认证和
密钥交换 383
16.1.7 WPA-PSK/WPA2-PSK的破解与
防御 386
16.2 无线广域网的安全 387
16.2.1 GSM系统安全 388
16.2.2 UMTS系统安全 391
16.2.3 4G/LTE安全 398
习题 403
参考文献 404
1.1 网络安全问题 2
1.2 网络安全的概念及基本属性 3
1.3 安全威胁 5
1.4 网络攻击 5
1.5 网络安全体系结构 7
1.5.1 风险分析 7
1.5.2 安全策略 8
1.5.3 安全服务 9
1.5.4 安全机制 10
1.5.5 安全服务与安全机制的关系 11
1.6 安全模型 13
1.6.1 P2DR安全模型 13
1.6.2 PDRR安全模型 15
1.6.3 P2DR2安全模型 17
1.7 网络安全等级保护 17
习题 23
第二篇 网络攻击与防御技术
第2章 黑客攻击流程与渗透测试 26
2.1 黑客攻击流程 26
2.2 渗透测试简介 33
2.3 渗透测试工具(Metasploit) 35
习题 41
第3章 信息收集与防御 43
3.1 网络扫描技术概述 43
3.1.1 主机扫描技术 44
3.1.2 端口扫描技术 45
3.1.3 操作系统探测技术 51
3.1.4 端口扫描工具Nmap介绍 55
3.2 查点技术 57
3.2.1 服务指纹分析技术 58
3.2.2 旗标抓取技术 58
3.2.3 漏洞扫描方式及漏洞扫描器 60
3.3 扫描与查点的防御措施 63
3.4 网络嗅探 63
3.4.1 共享式局域网嗅探技术 65
3.4.2 交换式局域网嗅探技术 66
3.4.3 无线网络嗅探技术 68
3.4.4 嗅探器的实现 69
3.4.5 嗅探工具介绍 71
3.5 嗅探攻击的检测与防御 75
习题 75
第4章 口令破解与防御 77
4.1 常用口令破解技术 77
4.1.1 暴力破解 77
4.1.2 字典攻击 78
4.1.3 组合攻击 78
4.1.4 社会工程学 79
4.2 操作系统口令文件与破解 81
4.2.1 Windows系统口令文件 81
4.2.2 Linux系统口令文件 84
4.2.3 操作系统口令破解 86
4.3 数据库口令文件与破解 89
4.4 口令破解防御技术 90
习题 92
第5章 欺骗攻击与防御 94
5.1 ARP欺骗 94
5.1.1 ARP欺骗的工作原理 94
5.1.2 ARP欺骗攻击实例 96
5.1.3 ARP欺骗的防御 97
5.2 IP欺骗 98
5.2.1 简单的IP欺骗 98
5.2.2 TCP会话劫持 99
5.2.3 IP欺骗的防御 102
5.3 DNS欺骗 103
5.3.1 DNS欺骗的工作原理 103
5.3.2 DNS欺骗的实现 104
5.4 电子邮件欺骗 105
5.4.1 电子邮件欺骗的工作原理 105
5.4.2 电子邮件欺骗的防御 109
5.5 Web欺骗 111
5.5.1 Web欺骗的工作原理 111
5.5.2 Web欺骗的防御 114
习题 114
第6章 Web攻击与防御 116
6.1 Web安全概述 116
6.2 同源策略 117
6.3 SQL注入攻击 118
6.3.1 SQL注入基本原理 118
6.3.2 SQL注入的分类 120
6.3.3 SQL注入的攻击步骤 123
6.3.4 SQL注入工具SQLMap 124
6.3.5 SQL注入的防御 128
6.4 XSS攻击 130
6.4.1 跨站脚本攻击原理 130
6.4.2 跨站脚本攻击的分类 132
6.4.3 跨站脚本攻击的检测与防御 135
6.5 CSRF攻击 136
6.5.1 CSRF攻击原理 136
6.5.2 CSRF攻击的分类 137
6.5.3 CSRF攻击的危害 138
6.5.4 CSRF攻击的检测与防御 140
6.6 命令执行漏洞 141
6.6.1 命令执行漏洞的基本原理 141
6.6.2 命令执行漏洞的防御 142
6.7 文件包含漏洞 143
6.7.1 本地文件包含 143
6.7.2 远程文件包含 144
6.7.3 文件包含的危害 145
6.7.4 文件包含的检测与防御 145
6.8 文件上传与文件解析漏洞 146
6.8.1 文件上传漏洞原理 146
6.8.2 文件解析漏洞原理 148
6.8.3 文件上传与解析漏洞的防御 149
6.9 反序列化漏洞 149
6.9.1 反序列化攻击原理 149
6.9.2 反序列化攻击的防御 154
6.10 XXE漏洞 154
6.10.1 XML基础 154
6.10.2 XXE漏洞原理与危害 156
6.10.3 XXE漏洞的防御 157
习题 158
第7章 缓冲区溢出攻击与防御 160
7.1 缓冲区溢出概述 160
7.2 基础知识 161
7.2.1 程序的组织结构 161
7.2.2 字节序 164
7.2.3 调用约定 164
7.2.4 常用调试工具介绍 169
7.3 缓冲区溢出原理 171
7.3.1 栈溢出 171
7.3.2 格式化字符串溢出 176
7.3.3 整数溢出 177
7.3.4 堆溢出 178
7.4 缓冲区溢出利用与shellcode 184
7.5 缓冲区溢出攻击的防御 192
7.5.1 缓冲区溢出的防范策略 192
7.5.2 缓冲区溢出常见的安全机制 195
习题 199
第8章 恶意代码防护技术 201
8.1 恶意代码概述及分类 201
8.1.1 恶意代码发展史 202
8.1.2 计算机病毒 204
8.1.3 蠕虫 207
8.1.4 特洛伊木马 208
8.1.5 间谍软件 210
8.1.6 僵尸网络 212
8.1.7 后门 214
8.1.8 高级持续性威胁APT 215
8.1.9 勒索软件 216
8.2 恶意代码的防御 219
8.2.1 恶意代码检测技术 220
8.2.2 恶意代码清除技术 221
习题 222
第9章 拒绝服务攻击与防御 225
9.1 拒绝服务攻击概述 225
9.1.1 拒绝服务攻击的定义 225
9.1.2 拒绝服务攻击的分类 225
9.2 典型的拒绝服务攻击 226
9.2.1 Ping of ?Death 226
9.2.2 泛洪攻击 226
9.2.3 Smurf攻击 229
9.3 分布式拒绝服务攻击(DDoS) 230
9.4 DoS/DDoS攻击的检测与防御 231
习题 232
第三篇 网络安全防护与管理技术
第10章 身份鉴别与认证 234
10.1 身份鉴别与认证概述 234
10.2 认证鉴别机制 236
10.2.1 基于口令的认证 236
10.2.2 基于密码学的认证 241
10.2.3 基于令牌的认证 242
10.2.4 基于生物特征的认证 243
10.3 典型认证技术 245
10.3.1 Kerberos认证协议 245
10.3.2 公钥基础设施PKI 250
习题 264
第11章 访问控制 266
11.1 访问控制的基本概念 266
11.2 典型的访问控制策略模型 267
11.2.1 自主访问控制(DAC) 267
11.2.2 强制访问控制(MAC) 269
11.2.3 基于角色的访问控制(RBAC) 269
11.2.4 基于属性的访问控制(ABAC) 274
11.3 访问控制机制 276
11.4 计算机安全形式化模型与
多级安全 281
11.4.1 Bell-LaPadula模型(BLP) 281
11.4.2 Biba模型 282
11.4.3 多级安全 283
习题 284
第12章 防火墙 286
12.1 防火墙概述 286
12.1.1 防火墙的概念与功能 286
12.1.2 防火墙的基本策略与安全规则 288
12.2 防火墙的分类 289
12.2.1 包过滤防火墙/包过滤路由器 289
12.2.2 状态监测防火墙 292
12.2.3 代理(Proxy)技术 293
12.2.4 网络地址转换技术 296
12.3 防火墙的配置方案 299
12.3.1 屏蔽路由器 299
12.3.2 双宿主机 300
12.3.3 屏蔽主机 300
12.3.4 屏蔽子网 301
12.4 防火墙实例:Netfilter/iptables 304
12.5 Web应用防火墙WAF 307
习题 309
第13章 入侵检测与入侵防御 311
13.1 入侵检测的基本概念 311
13.2 入侵检测流程 314
13.3 入侵检测技术 317
13.3.1 异常检测技术 317
13.3.2 特征检测技术 318
13.4 入侵检测的分类 319
13.4.1 基于主机的入侵检测系统 319
13.4.2 基于网络的入侵检测系统 321
13.4.3 分布式/混合式入侵检测系统 324
13.5 蜜罐 325
13.6 入侵防御系统 326
13.7 Snort入侵检测系统 328
习题 331
第14章 虚拟专用网 333
14.1 虚拟专用网概述 333
14.2 VPN的分类 334
14.3 典型的虚拟专用网技术 335
14.4 第二层隧道协议 336
14.4.1 PPTP 336
14.4.2 L2TP 337
14.5 IPSec 338
14.5.1 IPSec概述 338
14.5.2 IPSec的工作模式 339
14.5.3 安全关联SA 340
14.5.4 IPSec安全策略 342
14.5.5 封装安全载荷(ESP) 343
14.5.6 认证头(AH) 346
14.5.7 Internet密钥交换协议IKE 347
14.6 SSL/TLS 351
14.6.1 SSL/TLS协议概述 351
14.6.2 攻击SSL/TLS 356
14.6.3 HTTPS 356
习题 357
第15章 安全审计 359
15.1 安全审计体系结构与功能 359
15.2 安全审计迹 361
15.3 日志审计与分析 363
15.3.1 系统级日志功能实现 364
15.3.2 应用级日志功能实现 367
15.4 审计分析 368
习题 369
第16章 无线网络安全 371
16.1 无线局域网安全 372
16.1.1 无线局域网组成 372
16.1.2 无线局域网安全概述 373
16.1.3 WEP 375
16.1.4 TKIP 379
16.1.5 CCMP 381
16.1.6 IEEE 802.11i的认证和
密钥交换 383
16.1.7 WPA-PSK/WPA2-PSK的破解与
防御 386
16.2 无线广域网的安全 387
16.2.1 GSM系统安全 388
16.2.2 UMTS系统安全 391
16.2.3 4G/LTE安全 398
习题 403
参考文献 404