教学和阅读建议 1
第1章 网络攻击技术概述 1
1.1 网络面临的安全威胁 1
1.2 网络攻击的分类 2
1.3 网络攻击的步骤 3
1.4 网络攻击的后果 5
1.5 攻击技术的发展趋势 6
1.6 网络攻击与社会工程学 7
第2章 信息收集技术 10
2.1 信息收集概述 10
2.1.1 信息收集的内容 10
2.1.2 信息收集的方法 11
2.2 网络信息挖掘 11
2.2.1 Google Hacking 11
2.2.2 USENET新闻组 14
2.2.3 Whois服务 14
2.2.4 DNS域名服务 16
2.2.5 个人信息的收集 16
2.3 网络扫描技术 18
2.3.1 主机扫描 19
2.3.2 端口扫描 21
2.3.3 漏洞扫描 24
2.3.4 扫描的隐蔽性 26
2.4 网络拓扑探测 26
2.4.1 路由跟踪 26
2.4.2 SNMP信息收集 27
2.5 系统类型探测 28
2.5.1 利用端口扫描的结果 28
2.5.2 利用Banner 29
2.5.3 TCp/IP协议栈指纹 29
小结 30
习题 31
第3章 口令攻击 32
3.1 口令和身份认证 32
3.2 针对口令强度的攻击 32
3.2.1 强口令与弱口令 33
3.2.2 针对口令强度的攻击方法 33
3.2.3 Windows系统远程口令猜解 35
3.3 针对口令存储的攻击 37
3.3.1 针对口令存储的攻击方法 37
3.3.2 Windows系统账号口令攻击 40
3.4 针对口令传输的攻击 42
3.4.1 网络钓鱼攻击 43
3.4.2 嗅探攻击 43
3.4.3 键盘记录 44
3.4.4 重放攻击 44
3.5 口令攻击的防范 45
小结 46
习题 46
第4章 缓冲区溢出攻击 47
4.1 缓冲区溢出概述 47
4.1.1 缓冲区的分类 47
4.1.2 缓冲区溢出的概念 47
4.1.3 缓冲区溢出的危害 48
4.2 缓冲区溢出类型 48
4.2.1 栈溢出 48
4.2.2 堆溢出 49
4.3 溢出利用基本原理 50
4.3.1 溢出攻击基本流程 50
4.3.2 溢出利用关键技术 51
4.3.3 溢出利用的可靠性 55
4.4 Shellcode的编写 55
4.4.1 基本Shellcode类型 56
4.4.2 Shellcode的通用性 56
4.4.3 Shellcode代码定位 56
4.4.4 函数地址动态获取 57
4.4.5 Shellcode编码与解码 59
4.4.6 API函数名的压缩处理 60
4.5 溢出攻击及相关保护技术的发展 60
4.5.1 溢出攻击技术的发展 60
4.5.2 溢出保护技术的发展 61
小结 64
习题 64
第5章 恶意代码 65
5.1 恶意代码概述 65
5.1.1 恶意代码发展历程 65
5.1.2 恶意代码的定义 67
5.1.3 恶意代码的攻击模型 69
5.2 恶意代码关键技术分析 70
5.2.1 恶意代码侵入技术 70
5.2.2 恶意代码隐蔽技术 71
5.2.3 恶意代码生存技术 79
5.3 恶意代码的防范技术 80
5.3.1 基于主机的恶意代码防范技术 81
5.3.2 基于网络的恶意代码防范技术 82
小结 83
习题 83
第6章 Web应用程序攻击 84
6.1 Web应用程序攻击概述 84
6.1.1 Web应用模型 84
6.1.2 Web应用程序面临的安全威胁 86
6.2 基于用户输入的攻击 87
6.2.1 脚本注入攻击 87
6.2.2 跨站脚本攻击 91
6.3 基于会话状态的攻击 94
6.3.1 相关概念 94
6.3.2 会话攻击原理 94
6.3.3 针对会话状态攻击的防范 97
6.4 Web应用程序的安全防范 98
小结 99
习题 99
第7章 网络嗅探 100
7.1 嗅探概述 100
7.1.1 嗅探的定义 100
7.1.2 嗅探的危害 100
7.1.3 嗅探的作用 101
7.1.4 嗅探器的分类 101
7.2 嗅探原理与实现 101
7.2.1 网卡及局域网的工作原理 101
7.2.2 共享型网络中的嗅探 102
7.2.3 交换网络中的嗅探 106
7.2.4 无线局域网中的嗅探 107
7.3 协议还原 110
7.3.1 主机封包 110
7.3.2 嗅探器抓包 111
7.3.3 嗅探器组包 111
7.4 嗅探器的检测与防范 114
7.4.1 嗅探器的检测 114
7.4.2 嗅探器的防范 114
小结 116
习题 116
第8章 假消息攻击 117
8.1 假消息攻击概述 117
8.1.1 TCP/IP协议与假消息攻击 117
8.1.2 假消息攻击的危害 118
8.1.3 中间人攻击 119
8.2 数据链路层的攻击 119
8.3 网络层的攻击 122
8.3.1 ICMP路由重定向 122
8.3.2 IP分片攻击 123
8.4 传输层的攻击 125
8.5 应用层的攻击 127
8.5.1 DNS欺骗攻击 128
8.5.2 SMB中间人攻击 129
小结 132
习题 132
第9章 拒绝服务攻击 133
9.1 拒绝服务攻击概述 133
9.2 拒绝服务攻击的成因与分类 134
9.2.1 拒绝服务攻击的成因 134
9.2.2 拒绝服务攻击的分类 134
9.3 分布式拒绝服务攻击 137
9.3.1 分布式拒绝服务攻击概述 137
9.3.2 僵尸网络的层次控制模型 138
9.3.3 僵尸网络的关键技术 142
9.4 拒绝服务攻击的发展趋势 145
9.5 拒绝服务攻击的对策 145
9.5.1 检测 145
9.5.2 防范 146
小结 147
习题 147
第10章 网络防御概述 148
10.1 网络安全模型 148
10.2 网络安全的评估标准 149
10.3 安全策略 151
10.3.1 什么是安全策略 151
10.3.2 合理制定安全策略 152
10.3.3 安全策略的实施方法 152
10.4 网络纵深防御 152
10.5 安全检测 154
10.5.1 漏洞扫描 154
10.5.2 入侵检测 155
10.6 安全响应 155
10.7 灾难恢复 156
10.8 网络安全管理 156
第11章 访问控制机制 159
11.1 访问控制概述 159
11.1.1 访问控制原理 159
11.1.2 访问控制模型 160
11.1.3 访问控制机制的实现 162
11.2 操作系统访问控制的相关机制 164
11.2.1 认证和授权机制 164
11.2.2 访问检查机制 165
11.2.3 可信通路机制 167
11.2.4 对象重用机制 168
11.2.5 审计机制 168
11.3 网络访问控制机制 169
11.3.1 网络访问控制模型和配置 169
11.3.2 网络访问控制系统实例 170
小结 170
习题 170
第12章 防火墙 171
12.1 防火墙概述 171
12.1.1 防火墙的定义 171
12.1.2 防火墙的安全策略 172
12.1.3 防火墙的功能 172
12.1.4 防火墙的不足 173
12.1.5 防火墙产品的发展历程 174
12.2 常用防火墙技术 175
12.2.1 包过滤 175
12.2.2 动态包过滤 178
12.2.3 应用代理 180
12.2.4 电路级代理 181
12.2.5 NAT代理 182
12.3 防火墙部署 184
12.3.1 包过滤路由 184
12.3.2 应用代理网关(双宿主主机) 184
12.3.3 屏蔽主机 185
12.3.4 屏蔽子网 186
小结 187
习题 187
第13章 入侵检测 188
13.1 入侵检测系统概述 188
13.1.1 入侵检测的基本概念 188
13.1.2 入侵检测的作用 188
13.1.3 入侵检测系统模型 189
13.1.4 入侵检测系统的分类 191
13.2 入侵检测技术 192
13.2.1 信息收集技术 192
13.2.2 信息分析技术 193
13.2.3 入侵检测系统的部署 195
13.3 开源网络入侵检测软件——Snort 196
13.3.1 Snort概述 196
13.3.2 Snort的入侵检测功能 197
13.3.3 使用Snort 197
13.4 入侵检测的困难和发展趋势 199
13.4.1 入侵检测的困难 199
13.4.2 发展趋势 200
小结 202
习题 202
第14章 蜜罐技术 203
14.1 蜜罐技术概述 203
14.1.1 蜜罐的发展过程 203
14.1.2 蜜罐的定义 204
14.1.3 蜜罐的分类 204
14.1.4 蜜罐的安全价值和缺陷 205
14.2 蜜罐技术原理 206
14.2.1 欺骗技术 206
14.2.2 信息收集技术 207
14.2.3 数据控制技术 208
14.2.4 信息分析技术 208
14.3 蜜罐技术实例 209
14.3.1 虚拟蜜罐Honeyd 209
14.3.2 蜜罐网络Honeynet 212
小结 216
习题 217
第15章 内网安全管理 218
15.1 内网管理的目标 218
15.2 内网安全管理的内容 219
15.3 终端的接入控制 221
15.4 非法外联监控 223
15.5 移动介质安全管理 225
小结 227
习题 227
参考文献 228