基本信息·出版社:人民邮电出版社 ·页码:247 页 ·出版日期:2009年06月 ·ISBN:7115205809/9787115205803 ·条形码:9787115205803 ·版本:第1版 · ...
商家名称 |
信用等级 |
购买信息 |
订购本书 |
|
|
Linux防火墙 |
|
|
|
Linux防火墙 |
|
基本信息·出版社:人民邮电出版社
·页码:247 页
·出版日期:2009年06月
·ISBN:7115205809/9787115205803
·条形码:9787115205803
·版本:第1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:图灵系统与网络管理技术丛书
内容简介 《Linux防火墙》创造性地将防火墙技术和入侵检测技术相结合,充分展示开源软件的威力。书中全面阐述了iptables防火墙,并详细讨论了如何应用psad、fwsnort、fwknop 3个开源软件最大限度地发挥iptables检测和防御攻击的效力。大量真实例子以及源代码更有助于读者理解安全防御的原理、技术和实际操作。
作者简介 Michael Rash,世界级的安全技术专家,以防火墙、入侵检测系统等方面的造诣享誉安全界。他是psad、fwsnort和fWknop等著名开源安全软件的开发者。也是屡获大奖的Dragon入侵防御系统的安全架构师。除本书外.他还与人合撰Snort 2.1 Intrusion Detection和Intrusion Prevention and Active Response。他同时还是Linux Joumal、SysAdmin和login等著名技术媒体的专栏作家。
编辑推荐 《Linux防火墙》讲解清晰且实用性很强,适合Linux系统管理员、网络安全专业技术人员以及广大计算机安全爱好者阅读。
目录 第1章 iptables使用简介 1
1.1 iptables 1
1.2 使用iptables进行包过滤 2
1.2.1 表 2
1.2.2 链 2
1.2.3 匹配 3
1.2.4 目标 3
1.3 安装iptables 4
1.4 内核配置 5
1.4.1 基本Netfilter编译选项 6
1.4.2 结束内核配置 7
1.4.3 可加载内核模块与内置编译和安全 7
1.5 安全性和最小化编译 9
1.6 内核编译和安装 9
1.7 安装iptables用户层二进制文件 10
1.8 默认iptables策略 11
1.8.1 策略需求 11
1.8.2 iptables.sh脚本的开头 12
1.8.3 INPUT链 13
1.8.4 OUTPUT链 15
1.8.5 FORWARD链 15
1.8.6 网络地址转换 16
1.8.7 激活策略 17
1.8.8 iptables-save与iptables-restore 18
1.8.9 测试策略:TCP 20
1.8.10 测试策略:UDP 21
1.8.11 测试策略:ICMP 22
1.9 本章总结 23
第2章 网络层的攻击与防御 24
2.1 使用iptables记录网络层首部信息 24
2.2 网络层攻击的定义 27
2.3 滥用网络层 28
2.3.1 Nmap ICMP Ping 28
2.3.2 IP欺骗 28
2.3.3 IP分片 30
2.3.4 低TTL值 30
2.3.5 Smurf攻击 31
2.3.6 DDoS攻击 32
2.3.7 Linux内核IGMP攻击 32
2.4 网络层回应 33
2.4.1 网络层过滤回应 33
2.4.2 网络层阈值回应 33
2.4.3 结合多层的回应 34
第3章 传输层的攻击与防御 35
3.1 使用iptables记录传输层首部 35
3.1.1 记录TCP首部 35
3.1.2 记录UDP首部 37
3.2 传输层攻击的定义 38
3.3 滥用传输层 38
3.3.1 端口扫描 38
3.3.2 端口扫射 46
3.3.3 TCP序号预测攻击 46
3.3.4 SYN洪泛 47
3.4 传输层回应 47
3.4.1 TCP回应 47
3.4.2 UDP回应 50
3.4.3 防火墙规则和路由器ACL 51
第4章 应用层的攻击与防御 53
4.1 使用iptables实现应用层字符串匹配 53
4.1.1 实际观察字符串匹配扩展 54
4.1.2 匹配不可打印的应用层数据 55
4.2 应用层攻击的定义 56
4.3 滥用应用层 56
4.3.1 Snort签名 57
4.3.2 缓冲区溢出攻击 57
4.3.3 SQL注入攻击 59
4.3.4 大脑灰质攻击 60
4.4 加密和应用层编码 62
4.5 应用层回应 63
第5章 端口扫描攻击检测程序psad简介 64
5.1 发展历史 64
5.2 为何要分析防火墙日志 64
5.3 psad特性 65
5.4 psad的安装 65
5.5 psad的管理 67
5.5.1 启动和停止psad 68
5.5.2 守护进程的唯一性 68
5.5.3 iptables策略配置 68
5.5.4 syslog配置 70
5.5.5 whois客户端 71
5.6 psad配置 72
5.6.1 /etc/psad/psad.conf 72
5.6.2 /etc/psad/auto_dl 77
5.6.3 /etc/psad/signatures 78
5.6.4 /etc/psad/snort_rule_dl 78
5.6.5 /etc/psad/ip_options 78
5.6.6 /etc/psad/pf.os 79
5.7 本章总结 79
第6章 psad运作:检测可疑流量 80
6.1 使用psad检测端口扫描 80
6.1.1 TCP connect()扫描 81
6.1.2 TCP SYN或半开放扫描 83
6.1.3 TCP FIN、XMAS和NULL扫描 85
6.1.4 UDP扫描 86
6.2 psad警报和报告 87
6.2.1 psad电子邮件警报 87
6.2.2 psad的syslog报告 90
6.3 本章总结 91
第7章 psad高级主题:从签名匹配到操作系统指纹识别 92
7.1 使用Snort规则检测攻击 92
7.1.1 检测ipEye端口扫描器 93
7.1.2 检测LAND攻击 94
7.1.3 检测TCP端口0流量 94
7.1.4 检测零TTL值流量 95
7.1.5 检测Naptha拒绝服务攻击 95
7.1.6 检测源站选路企图 96
7.1.7 检测Windows Messenger弹出广告 96
7.2 psad签名更新 97
7.3 识别操作系统指纹 98
7.3.1 使用Nmap实现主动式操作系统指纹识别 98
7.3.2 使用p0f实现被动式操作系统指纹识别 99
7.4 DShield报告 101
7.4.1 DShield报告格式 101
7.4.2 DShield报告样本 102
7.5 查看psad的状态输出 102
7.6 取证模式 105
7.7 详细/调试模式 106
7.8 本章总结 107
第8章 使用psad实现积极回应 108
8.1 入侵防御与积极回应 108
8.2 积极回应的取舍 109
8.2.1 攻击类型 109
8.2.2 误报 110
8.3 使用psad回应攻击 110
8.3.1 特性 111
8.3.2 配置变量 111
8.4 积极回应示例 113
8.4.1 积极回应的配置 114
8.4.2 SYN扫描的回应 114
8.4.3 UDP扫描的回应 116
8.4.4 Nmap版本扫描 116
8.4.5 FIN扫描的回应 117
8.4.6 恶意伪造扫描 117
8.5 将psad的积极回应与第三方工具集成 118
8.5.1 命令行接口 118
8.5.2 与Swatch集成 120
8.5.3 与自定义脚本集成 121
8.6 本章总结 122
第9章 转换Snort规则为iptables规则 123
9.1 为什么要运行fwsnort 124
9.1.1 纵深防御 124
9.1.2 基于目标的入侵检测和网络层分片重组 124
9.1.3 轻量级的资源占用 125
9.1.4 线内回应 125
9.2 签名转换示例 126
9.2.1 Nmap命令尝试签名 126
9.2.2 Bleeding Snort的“Bancos木马”签名 127
9.2.3 PGPNet连接尝试签名 127
9.3 fwsnort对Snort规则的解释 128
9.3.1 转换Snort规则头 128
9.3.2 转换Snort规则选项:iptables数据包记录 130
9.3.3 Snort选项和iptables数据包过滤 132
9.3.4 不支持的Snort规则选项 142
9.4 本章总结 143
第10章 部署fwsnort 144
10.1 安装fwsnort 144
10.2 运行fwsnort 146
10.2.1 fwsnort的配置文件 148
10.2.2 fwsnort.sh的结构 150
10.2.3 fwsnort的命令行选项 153
10.3 实际观察fwsnort 154
10.3.1 检测Trin00 DDoS工具 154
10.3.2 检测Linux Shellcode流量 155
10.3.3 检测并回应Dumador木马 156
10.3.4 检测并回应DNS高速缓存投毒攻击 157
10.4 设置白名单和黑名单 160
10.5 本章总结 161
第11章 psad与fwsnort结合 162
11.1 fwsnort检测与psad运作的结合 162
11.2 重新审视积极回应 166
11.2.1 psad与fwsnort 166
11.2.2 限制psad只回应fwsnort检测到的攻击 167
11.2.3 结合fwsnort与psad回应 167
11.2.4 DROP目标与REJECT目标 169
11.3 阻止Metasploit更新 172
11.3.1 Metasploit更新功能 172
11.3.2 签名开发 174
11.3.3 使用fwsnort和psad破坏Metasploit更新 175
11.4 本章总结 179
第12章 端口碰撞与单数据包授权 180
12.1 减少攻击面 180
12.2 零日攻击问题 180
12.2.1 发现零日攻击 182
12.2.2 对基于签名的入侵检测的影响 182
12.2.3 纵深防御 183
12.3 端口碰撞 183
12.3.1 挫败Nmap和目标识别阶段 184
12.3.2 共享的端口碰撞序列 185
12.3.3 加密的端口碰撞序列 187
12.3.4 端口碰撞的架构限制 189
12.4 单数据包授权 191
12.4.1 解决端口碰撞的限制 192
12.4.2 SPA的架构限制 193
12.5 通过隐藏实现安全? 194
12.6 本章总结 195
第13章 fwknop简介 196
13.1 fwknop的安装 196
13.2 fwknop的配置 198
13.2.1 /etc/fwknop/fwknop.conf配置文件 198
13.2.2 /etc/fwknop/access.conf配置文件 202
13.2.3 /etc/fwknop/access.conf配置文件示例 204
13.3 fwknop SPA数据包的格式 205
13.4 部署fwknop 207
13.4.1 使用对称加密传输SPA 207
13.4.2 使用非对称加密传输SPA 209
13.4.3 检测并阻止重放攻击 213
13.4.4 伪造SPA数据包的源地址 215
13.4.5 fwknop的OpenSSH集成补丁 216
13.4.6 通过Tor网络传输SPA数据包 217
13.5 本章总结 218
第14章 可视化iptables日志 219
14.1 发现不寻常 219
14.2 Gnuplot 221
14.2.1 Gnuplot绘图指令 222
14.2.2 psad与Gnuplot结合 222
14.3 AfterGlow 223
14.4 iptables攻击可视化 224
14.4.1 端口扫描 224
14.4.2 端口扫射 227
14.4.3 Slammer蠕虫 231
14.4.4 Nachi蠕虫 232
14.4.5 来自被入侵系统的外出连接 234
14.5 本章总结 237
附录A 攻击伪造 238
附录B 一个完整的fwsnort脚本 243
……
序言 诚如Richard Beitlich在序言中所说,本书是一本好书,这也是我在翻译完本书后的第一感受。与目前市面上其他介绍防火墙或入侵检测技术的书籍相比,本书最大的特点是实用性。书中既没有空洞地大谈理论而让普通读者望而却步,也没有只谈论安全软件的配置和使用而让读者感觉味同嚼蜡,不知所以。作者以其简练、清晰的笔法将安全防御的原理、技术和实际的操作娓娓道来,即使读者只是一个网络安全的门外汉,也能通过阅读本书而迅速地成长为一位安全专家。更重要的是,本书介绍的所有安全软件都是开源的,Michael Rash在书中创造性地使用开源软件将防火墙技术和入侵检测技术相结合,向我们展示了开源软件的威力。而且因为书中介绍的3个软件psad、fwsnort和fwknop的作者就是Michael Rash本人,所以书中对这些软件的介绍无疑是最为权威和准确的。
我相信本书对各种层次的读者都将有所帮助。如果你是网络安全员,那么本书将向你展示Linux系统在这方面所能实现的毫不逊色于商业软件的强大功能:如果你是网络安全软件开发人员,那么本书将给你提供许多灵感和启发,书中处处闪烁着作者在网络安全防御技术方面的真知灼见;如果你只是普通的Linux用户,通过阅读本书,你也会惊叹于开源软件iptables的无限可扩展性和其强大的威力,并对网络安全技术及其发展趋势有深刻的理解。
我在翻译过程中对原书中的一些明显错误进行了更正,对书中介绍的软件,也参照其最新版本对改动之处添加了译者注。但限于水平,译文中错误之处在所难免,真诚希望读者能提出指正意见,以便在本书重印时作出修订。
最后感谢人民邮电出版社图灵公司的编辑,没有他们始终如一的鼓励和督促,本书是很难翻译完成的。
文摘 插图:
单数据包授权(SPA)以一种类似于端口碰撞实现的方式,将使用默认丢弃策略的数据包过滤器与被动监控数据包的嗅探器相结合。但SPA并没有在数据包首部字段中传输认证数据,而是充分利用有效载荷数据来证明其拥有认证证书。之所以可以这么做是因为大多数网络的MTU大小都有几百个字节(例如,以太网的MTU是1514个字节,其中包括以太网首部),所以只需一个数据包就可以向SPA服务器证明其身份。
因为端口碰撞和SPA共享默认丢弃数据包过滤器和被动监控设备的概念,所以图12.3非常类似于说明端口碰撞的图12.1。但这次,传输认证信息到SPA服务器只需一个数据包即可,所以从(伪造的)SPA源地址到iptables系统只有一条线,这意味着我们不必在真正的SSH会话开始之前发送数据包序列。我们将很快看到这是超越端口碰撞方案的重要创新。