第1章 网络调查技术 1
1.1 最简单的办法 1
目录 1
1.2 利用ICMP 3
1.3 端口扫描 7
1.4 NULL Session NBTStat 8
1.4.1 NULL Session 8
1.4.2 NBTStat 11
1.5 利用系统漏洞进行探测 12
1.5.1 IIS(SSL)泄露内部地址漏洞 12
1.5.2 IRIX 6.5 Performance Copilot泄露系统信息漏洞 12
1.6 网络拓扑探测 13
1.7.3 Retina 15
1.7.4 Nessus 15
1.7.1 Nmap 15
1.7.2 ShadowScan 15
1.7 扫描工具 15
1.7.5 LANguard Network Scanner 18
1.8 网络探测计划 18
1.8.1 基本测试框架 18
1.8.2 系统要素分析 19
1.8.3 网络安全分析 20
1.8.4 主机安全分析 23
1.8.5 管理安全分析 25
第2章 口令破解 26
2.1 概述 26
2.2 John分析 27
2.2.1 模式 27
2.2.2 数据结构 30
2.2.3 程序流程 34
2.3 在线口令猜解 35
2.4 恶意网页和恶意E-mail技术 36
2.4.1 恶意网页 36
2.4.2 恶意E-mail 36
2.5 口令安全建议 36
2.6 动态口令卡简介 37
2.6.1 概述 37
2.6.2 算法和原理 38
第3章 拒绝服务攻击 40
3.1 概述 40
3.2 传统的DoS方法 41
3.2.1 Flood 41
3.2.3 OOB Nuke 42
3.2.2 Smurf 42
3.2.4 Teardrop 43
3.2.5 Land 43
3.2.6 Kiss of Death 44
3.3 DoS攻击的解决办法 45
3.3.1 防火墙和路由器过滤 45
3.3.2 操作系统的改进 45
3.3.3 退让策略 45
3.3.4 协议改进 45
3.3.5 黑洞 45
3.4 入侵检测系统的抗DoS攻击测试 46
3.5 分布式拒绝服务攻击 49
3.5.1 TFN2K 49
3.5.2 检测及防范措施 50
4.1.1 木马概述 52
4.1 特洛伊木马 52
第4章 系统后门 52
4.1.2 木马技术特征 53
4.1.3 木马技术发展趋势 58
4.1.4 反木马软件开发思路 60
4.2 反弹端口后门 62
4.3 打开终端服务 65
4.4 创建隐蔽账号 69
4.5 小结 70
第5章 缓冲区溢出和格式化字符串攻击 71
5.1 缓冲区溢出概述 71
5.2 栈溢出 71
5.2.1 堆栈状态 71
5.2.2 溢出实例 74
5.2.3 溢出程序的编写 77
5.3.1 堆溢出的基本概念 81
5.3 堆溢出 81
5.3.2 Windows下堆的实现过程 82
5.3.3 堆溢出的利用 83
5.4 缓冲区溢出的防范 84
5.4.1 传统的防范方法 84
5.4.2 一种新的防范方法 85
5.5 格式化字符串漏洞 85
5.5.1 格式化字符串简介 85
5.5.2 利用有漏洞的代码 86
5.5.3 格式化字符串的检查 88
5.6 相关网址 90
第6章 安全漏洞分析方法 91
6.1 漏洞分析的重要意义 91
6.2 漏洞产生的原因 91
6.2.3 社会工程 92
6.2.1 逻辑错误 92
6.2.2 系统弱点 92
6.2.4 管理失误 93
6.3 系统脆弱性模型 93
6.4 安全需求分析 95
6.4.1 安全需求分析的意义 95
6.4.2 外挂式系统的安全需求 95
6.4.3 编程接口的安全要求 96
6.4.4 安全检测与安全实现 96
6.4.5 编程接口的严格性 96
6.5 不安全编程举例 97
6.5.1 缓冲区溢出 97
6.5.2 格式化字符串攻击 103
6.6.1 源代码扫描 105
6.6 发现漏洞的方法 105
6.6.2 错误注入 106
6.6.3 反汇编 106
6.7 错误注入分析法 106
6.7.1 方法概述 106
6.7.2 系统模型 107
6.7.3 实现技术 109
6.7.4 小结 110
6.8 逆向工程分析 110
6.8.1 分析流程 110
6.8.2 分析举例:Msw3prt.dll缓冲区溢出分析 111
6.8.3 检测 114
6.8.4 一个idc脚本程序 117
7.1.2 WIN32ASM 121
7.1.1 SoftICE 121
7.1 调试工具 121
第7章 常用的工具软件 121
7.1.3 WINDbg 123
7.2 网络监听工具 123
7.2.1 SnifferPro 123
7.2.2 NGSniff 123
7.3 自动测试工具 124
7.3.1 getiisfile 124
7.3.2 通用漏洞测试工具 124
7.4 其他辅助工具 125
7.4.1 Net的用法 125
7.4.2 ASPack的用法 128
7.4.3 Snake代理跳板的用法 128
7.4.4 psExec的用法 129
8.1 Windows系统日志 131
第8章 Windows取证技术 131
8.2 IIS日志详解 132
8.3 日志分析工具简介 133
8.4 防火墙和IDS日志 133
8.5 SQL Server日志 133
8.6 IP定位 135
8.7 一种欺骗日志的方法 135
第9章 系统攻击 137
9.1 攻击Windows 95/98/Me/XP家庭版 137
9.1.1 Windows 9x远程攻击 137
9.1.2 Windows 9x本地攻击 143
9.1.3 Windows Millennium Edition(Windows Me) 146
9.1.4 Windows XP家庭版 147
9.2 攻击Windows NT 149
9.1.5 小结 149
9.2.1 获取管理员权限 150
9.2.2 管理员权限后续攻击 162
9.2.3 Rootkit 174
9.2.4 清除痕迹 176
9.2.5 小结 177
9.3 攻击Windows 2000 178
9.3.1 Footprinting 179
9.3.2 扫描 179
9.3.3 枚举 183
9.3.4 渗透 184
9.3.5 拒绝服务 189
9.3.6 权限提升 191
9.3.7 窃取信息 193
9.3.8 清除痕迹 200
9.3.9 后门 201
9.3.10 通用防范措施 205
9.3.11 Windows 2000的未来 208
9.3.12 .NET框架 208
9.3.13 Whistler 208
9.3.14 小结 210
9.4 攻击Unix 212
9.4.1 信息收集 212
9.4.2 获取根用户权限 217
9.4.3 远程攻击 218
9.4.4 本地攻击 243
9.4.5 后续攻击 255
9.4.6 小结 262
9.5.1 信息收集 264
9.5 攻击Novell Netware 264
9.5.2 口令猜测 267
9.5.3 获取管理员权限 268
9.5.4 攻击应用程序 270
9.5.5 后续攻击 272
9.5.6 小结 278
第10章 网络攻击 279
10.1 远程访问攻击 279
10.1.1 拨号扫描 279
10.1.2 暴力攻击 290
10.1.3 攻击PBX 299
10.1.4 攻击语音信箱 302
10.1.5 攻击虚拟私有网 304
10.1.6 小结 307
10.2 攻击网络设备 308
10.2.1 探测网络设备 309
10.2.2 后门攻击 315
10.2.3 共享式与交换式网络环境 320
10.2.4 攻击无线网络 324
10.2.5 小结 327
10.3 防火墙 327
10.3.1 防火墙概述 327
10.3.2 鉴别防火墙 328
10.3.3 透过防火墙进行扫描 332
10.3.4 包过滤的漏洞 335
10.3.5 应用代理漏洞 337
10.3.6 小结 340
10.4 拒绝服务攻击 340
10.4.1 远程DoS攻击 341
10.4.2 分布式拒绝服务攻击 343
10.4.3 本地DoS攻击 346
第11章 软件攻击 348
11.1 远程控制的安全性 348
11.1.1 搜索远程控制软件 348
11.1.2 连接远程控制软件 349
11.1.3 远程控制的弱点 349
11.1.4 VNC 352
11.1.5 微软终端服务器 354
11.1.6 小结 360
11.2 高级攻击技术 360
11.2.1 会话劫持 360
11.2.2 密码学攻击 362
11.2.3 Rootkits和系统镜像 364
11.2.4 社会工程 366
11.2.5 小结 367
11.3 Web攻击 368
11.3.1 概述 368
11.3.2 ASP常见编程漏洞 369
11.3.3 CGI的基本概念及常见编程漏洞 372
11.3.4 攻击IIS 375
11.3.5 小结 384
11.4 攻击Internet用户 385
11.4.1 恶意移动代码 386
11.4.2 SSL欺骗 400
11.4.3 E-mail攻击 402
11.4.4 IRC攻击 424
11.4.5 通用的防范措施 425
11.4.6 小结 426
参考文献 427