第1章 网络安全概述 1
1.1 网络安全简介 1
1.1.1 网络安全概念 1
1.1.2 网络安全脆弱性与重要性 2
1.1.3 网络安全目标 2
1.2 网络安全措施 4
1.2.1 加密与解密 4
1.2.2 防杀病毒软件 4
1.2.3 网络防火墙 4
1.2.4 访问权限控制 4
1.2.5 入侵检测 4
1.3 网络安全策略 5
1.3.1 物理安全策略 5
1.3.2 访问控制策略 5
1.3.3 数据加密策略 6
1.3.4 网络安全管理策略 7
1.4 网络安全技术的发展 7
1.4.1 第一代网络安全技术 7
1.4.2 第二代网络安全技术 7
1.4.3 第三代网络安全技术 8
1.4.4 网络安全技术发展趋势 9
第2章 TCP/IP协议实例透析 11
2.1 TCP/IP协议简介 11
2.1.1 TCP/IP分层模型 11
2.1.2 TCP/IP分层模型特点 12
2.1.3 TCP/IP核心协议 13
2.2 Windows网络基础编程 17
2.2.1 Winsock编程基础 17
2.2.2 原始套接字编程基础 29
2.3 Ping程序实例 30
2.3.1 Ping原理与简介 30
2.3.2 Ping实例与分析 31
2.3.3 Ping实例运行结果 37
2.4 Traceroute程序实例 37
2.4.1 Traceroute原理与简介 37
2.4.2 Traceroute实例与分析 37
2.4.3 Traceroute实例运行结果 43
2.5 TCP通信程序实例 43
2.5.1 TCP通信原理与简介 44
2.5.2 TCP通信程序实例与分析 46
2.5.3 TCP通信实例运行结果 51
2.6 UDP通信程序实例 52
2.6.1 UDP通信原理与简介 52
2.6.2 UDP通信程序实例与分析 53
2.6.3 UDP通信实例运行结果 57
第3章 加密与解密 58
3.1 密码学基础 58
3.1.1 密码学简介 58
3.1.2 分组密码技术 60
3.1.3 公钥密码技术 62
3.2 DES加密程序实例 65
3.2.1 DES加密原理 65
3.2.2 DES程序实例与分析 68
3.2.3 DES实例运行结果 75
3.3 RSA加密程序实例 76
3.3.1 RSA加密原理 76
3.3.2 RSA程序实例与分析 78
3.3.3 RSA实例运行结果 84
3.4 MD5程序实例 84
3.4.1 MD5原理 84
3.4.2 MD5程序实例与分析 87
3.4.3 MD5实例运行结果 91
第4章 网络攻击 92
4.1 网络攻击概述 92
4.1.1 网络攻击的步骤 92
4.1.2 网络攻击的类别 93
4.1.3 网络攻击的防范 95
4.2 木马攻击 96
4.2.1 木马简介与原理 96
4.2.2 木马技术典型技术实例 99
4.2.3 木马实例运行结果 108
4.2.4 木马的防范措施 110
4.3 DoS攻击 111
4.3.1 DoS攻击简介与原理 111
4.3.2 DoS技术典型技术实例 115
4.3.3 DoS实例运行结果 126
4.3.4 DoS攻击的防范措施 128
4.4 缓冲区溢出攻击 129
4.4.1 堆栈式缓冲区溢出攻击 130
4.4.2 格式化字符串攻击 136
4.4.3 缓冲区溢出攻击防范措施 139
第5章 网络嗅探 141
5.1 网络嗅探概述 141
5.1.1 网络嗅探的简介与原理 141
5.1.2 网络嗅探的安全威胁 144
5.1.3 网络嗅探的防范 145
5.2 基于原始套接字的嗅探程序 147
5.2.1 嗅探实例 147
5.2.2 嗅探运行结果 157
5.3 基于Winpcap的嗅探程序 160
5.3.1 嗅探实例 160
5.3.2 嗅探运行结果 171
5.4 网络嗅探工具应用——Sniffer Pro使用方法 171
第6章 网络扫描 175
6.1 网络扫描概述 175
6.1.1 网络扫描简介 175
6.1.2 网络扫描技术 176
6.1.3 网络扫描的防范 178
6.2 端口扫描技术 179
6.2.1 TCP Connect端口扫描实例 179
6.2.2 TCP SYN端口扫描实例 184
6.3 辅助扫描技术 194
6.3.1 操作系统类型探测实例 194
6.3.2 活动主机探测实例 198
6.3.3 远程主机NetBIOS信息探测实例 202
6.3.4 伪IP干扰实例 215
6.4 网络扫描工具应用——Windows下的X-Scan扫描工具使用方法 221
第7章 网络防御 227
7.1 网络防御技术 227
7.1.1 网络防御架构的设计需求和原则 227
7.1.2 常用网络防御技术 228
7.2 防火墙程序代码分析 229
7.2.1 防火墙原理 229
7.2.2 简单防火墙实例与分析 230
7.2.3 防火墙实例运行结果 243
7.3 入侵检测程序代码分析 244
7.3.1 入侵检测原理 244
7.3.2 Snort程序实例与分析 244
7.3.3 Snort使用方法实例 257
第8章 Web安全 260
8.1 Web的基本概念及其面临的威胁 260
8.1.1 Web的基本概念 260
8.1.2 Web面临的威胁 267
8.2 认证的威胁 268
8.2.1 认证的概念 268
8.2.2 暴力破解 269
8.2.3 认证不充分 271
8.2.4 弱密码恢复验证 272
8.3 授权的威胁 273
8.3.1 授权的概念 273
8.3.2 会话跟踪技术 273
8.3.3 证书/会话预测 277
8.3.4 授权不充分 278
8.3.5 会话终止不充分 279
8.3.6 会话固定 280
8.4 客户端攻击的威胁 281
8.4.1 客户端攻击的概念 281
8.4.2 内容欺骗 282
8.4.3 跨站脚本 283
8.5 命令执行的威胁 286
8.5.1 命令执行的概念 286
8.5.2 缓冲区溢出 287
8.5.3 格式化字符串 287
8.5.4 LDAP注入 288
8.5.5 系统命令执行 290
8.5.6 SQL注入 291
8.5.7 SSI注入 297
8.5.8 XPath注入 298
8.6 信息暴露的威胁 299
8.6.1 信息暴露的概念 299
8.6.2 目录索引 299
8.6.3 信息泄露 301
8.6.4 路径游历 302
8.6.5 可预测的资源位置 303
8.6.6 Web服务器/应用程序指纹识别 303
8.7 逻辑攻击 309
8.7.1 逻辑攻击的概念 309
8.7.2 功能性滥用 310
8.7.3 拒绝服务 310
8.7.4 反自动化不充分 311
8.7.5 过程验证不充分 311
第9章 Web安全评估工具 313
9.1 Nikto代码解析 313
9.1.1 Nikto的框架结构 314
9.1.2 Nikto的下载与使用方法 315
9.1.3 LibWhisker 316
9.1.4 Nikto.pl 319
9.1.5 Config.txt 322
9.1.6 Plugins 324
9.1.7 Database 336
9.1.8 Nikto的扫描实例 337
9.2 Paros Proxy介绍 339
9.2.1 安装Paros Proxy 339
9.2.2 运行Paros Proxy 339
9.2.3 记录并显示请求和响应信息 340
9.2.4 拦截并修改请求和响应信息 341
9.2.5 抓取页面 343
9.2.6 扫描Web应用程序 344
9.3 其他Web安全评估工具简介 345
9.3.1 WebScarab 345
9.3.2 WebInspect 346
9.3.3 Spike Proxy 346
9.3.4 SARA 347
9.3.5 QualysGuard 347
9.3.6 Acunetix Web Vulnerability Scanner 347
9.3.7 Watchfire AppScan 348
9.3.8 N-Stealth/NStalker 348
9.3.9 ISS Internet Scanner 348
参考文献 349