第一章入侵检测系统 1
目录 1
1.1什么是入侵检测 2
1.1.1 NIDS 3
1.1.2 HIDS 4
1.1.3 DIDS 5
4.4.2检测插件 o 5
1.2攻击三部曲 6
1.2.1 目录回溯漏洞 6
第四章Snort的内部工作 7
4.1 Snort的主要部件 7
FAQ 7
1.2.2红色代码蠕虫 7
1.2.3尼姆达蠕虫 8
1.2.4什么是入侵 9
1.2.5用Snort发现入侵 10
1.3为什么IDS如此重要 12
1.3.1为什么会受到攻击 13
1.3.2IDS布置在什么位置合适 13
1.3.4还有哪些常见的攻击类型 14
1.3.3防火墙能否替代IDS 14
1.4IDS还能做什么 15
1.4.1监视数据库应用 16
1.4.2监视DNS应用 16
1.4.3保护邮件服务器 16
小结 17
1.4.4利用IDS监视公司的安全政策 17
本章快速回顾 18
FAQ 19
第二章Snort2.0介绍 21
2.1什么是Snort 23
2.2 Snort系统需求 24
2.2.1硬件 25
2.3 Snort的特性 26
2.3.1数据包嗅探器 27
2.3.2预处理器 28
2.3.3检测引擎模块 29
2.3.4报警/日志模块 29
2.4在网络中部署Snort 32
2.4.1 Snort的用途 33
2.4.2 Snort和网络体系结构 38
2.4.3运行Snort时的弱点 41
2.5 Snort的安全考虑 42
2.5.1 Snort易受攻击 43
小结 44
本章快速回顾 44
2.5.2加固我们的Snort系统 44
FAQ 45
第三章安装Snort 47
3.1关于LinuX发布版本的简要介绍 48
3.1.2 SlackWare 49
3.1.3 Gentoo 49
3.1.1 Debian 49
3.2安装PCAP 50
3.2.1使用源码包安装libpcap 51
3.2.2用RPM包安装libpcap 57
3.3安装Snort 57
3.3.1从源代码安装Snort 57
3.3.2定制安装:编辑snort.conf文件 59
3.3.3从RPM安装Snort 62
3.3.4在MSWindows平台上的安装 63
小结 69
3.3.5安装Bieeding-Edge版本的Snort 69
本章快速回顾 70
4.1.1捕获网络流量 75
4.1.2抓包 77
4.2包解码 80
4.3数据包处理 83
4.3.1 预处理器 83
4.4规则解析和检测引擎 89
4.4.1规则建立 89
4.5输出与日志 96
4.5.1将Snort用作快速嗅探器 97
4.5.2入侵检测模式 100
4.5.4记录至数据库 102
4.5.3将Snort用作honeypot捕获器和分析器 102
4.5.6 以Barnyarc和Unified格式输出 104
4.5.5使用SNMP方式报警 105
小结 105
本章快速回顾 105
FAQ 106
第五章规则的运行 109
5.1理解配置文件 110
5.1.1定义和使用变量 110
5.1.2配置项的灵活应用 112
5.1.3包含规则文件 114
5.2规则头 115
5.2.1规则动作选项 115
5.2.2可支持的协议 117
5.2.3指派源和目的IP地址 118
5.2.4指派源和目的端口 119
5.2.5理解方向操作符 120
5.2.6 Activate和Dynarnic规则特性 121
5.3规则体 122
5.3.1规则Content选项 123
5.3.2 IP选项集合 126
5.3.3 TCP选项集合 128
5.3.4 ICMP选项集合 129
5.3.5规则识别选项集合 129
5.3.6其他规则选项 132
5.4“好”规则的构成 134
5.4.1规则动作 134
5.4.2定义恰当的Content 134
5.4.3合并子网掩码 137
5.5测试规则 139
5.5.1压力测试 139
5.5.2独立规则测试 140
5.5.3测试BPF规则 140
5.6调整规则 140
5.6.1配置规则变量 140
5.6.2取消规则 141
5.6.3 BPF 142
小结 143
本章快速回顾 143
FAQ 144
第六章预处理器 147
6.2.1 strearr4预处理器 149
6.2包重组的预处理器选项 149
6.1什么是预处理器 149
6.2.2 frag2——分片重组和攻击检测 158
6.3协议解码和规范化的预处理器选项 159
6.3.1 Telnet协商 159
6.3.2HTTP规范化 160
6.3.rpe_decode 162
6.4非规则和异常检测预处理器选项 164
6.4.1端口扫描 164
6.4.2 Back Orifice 166
6.4.3非规则检测 167
6.5实验阶段的预处理器 167
6.5.1 arpspoof 167
6.5.2 asn1 decode 168
6.5.3 fnord 168
6.5.4 portscan2和conversation预处理器 169
6.5.5 perfmonitor 171
6.6书写自己的预处理器 171
6.6.1包重组 171
6.6.2解码协议 171
6.6.3非规则的或基于异常的检测 172
6.6.4建立自己的预处理器 172
6.6.5 Snort给了我什么 174
6.6.6在Snort内加入预处理器 191
小结 193
本章快速回顾 194
FAQ 195
第七章Snort输出插件的实现 197
7.1什么是输出插件 198
7.2.1缺省的日志方式 200
7.2输出插件选项 200
7.2.2 Syslog 204
7.2.3 PCAP日志 205
7.2.4 Snortdb 206
7.2.5 unified日志 211
7.3编写输出插件 214
7.3.1为什么编写输出插件 214
7.3.2建立定制的输出插件 215
7.3.3 Snort的输出处理 218
小结 220
本章快速回顾 221
FAQ 222
第八章数据分析工具的使用 225
8.1.1安装Swatch 226
8.1使用SWatch 226
8.1.2配置SWatch 228
8.1.3使用SWatch 229
8.2使用ACID 232
8.2.1安装ACID 232
8.2.2配置ACID 238
8.2.3 ACID的使用 241
8.3使用SnortSnarf 250
8.3.1安装SnortSnarf 250
8.3.2配置Snort使其和SnortSnarf一起工作 251
8.3.3 SnortSnarf的基本用途 252
8.4使用EDnter 254
8.4.1安装IDScenter 255
8.4.2配置IDScenter 256
8.4.3IDScenter基本用法 258
小结 264
本章快速回顾 265
FAQ 265
第九章Snort的升级 267
9.1打补丁 268
9.2升级规则 269
9.2.1规则如何维护 269
9.2.2如何获得规则的更新 271
9.2.3如何合并规则 274
9.3测试规则更新 276
9.4关注规则更新 281
小结 281
本章快速回顾 282
FAQ 283
第十章Snort的优化 285
10.1如何选择硬件 286
10.1.1什么构成了“好”硬件 287
10.1.2如何测试硬件 289
10.2如何选择操作系统 290
10.2.1对于NIDS来说什么是“好”操作系统 290
10.2.2应该使用何种操作系统 294
10.2.3如何测试所选择的操作系统 295
10.3加速Snort安装 296
10.3.1决定使用哪些规则 296
10.3.2配置预处理器以提高速度 298
10.3.3使用通用变量 299
10.3.4选择输出插件 299
10.4配置的基准测试 300
10.4.1基准测试的特征 300
10.4.2哪些工具可用于基准测试 301
小结 309
本章快速回顾 310
FAQ 310
第十一章Barnyard插件 313
11.1 narnyard是什么 314
11.2 Barnyard的准备与安装 315
11.3 Barnyard的工作方式 318
11.3.1使用Barnyard配置文件 319
11.3.2深入Barnyard 320
11.3.3创建并显示二进制日志输出文件 322
11.4 Barnyard输出选项 326
11.5如何设置个性化输出 327
11.5.1输出插件的例子 328
小结 350
本章快速回顾 351
FAQ 352
第十二章深入Snort 353
12.1基于策略的IDS 354
12.1.1定义EDS的网络策略 355
12.1.2基于策略IDS的例子 358
12.1.3制作基于策略的IDS 364
12.2内嵌式IDS 367
12.2.1基于Snort的内嵌式IDS 368
12.2.2安装Snort为内嵌模式 368
12.2.3使用内嵌式IDS保护网络 383
小结 386
本章快速回顾 386
FAQ 387
附录 388