分组过滤又称包过滤是用于
网络防火墙的技术,
应用防火墙是防止有人非法地访问网络内的资源。其原理是监视并过滤网络上流入流出的
IP包,拒绝发送可疑的包。包过滤是在
网络层和
传输层上应用的技术,对网络更高层的信息无理解能力。
工作步骤
所采用的分组过滤都是按以下步骤进行工作的:
(2)分组过滤路由器对分组的头部进行分析,按照分组过滤规则的存贮顺序依次对分组进行检查。
(3)如果在分组过滤规则表中找到一个适用于此分组的规则,而该规则规定阻塞该分组,那么该分组被阻塞。
(4)如果在分组过滤规则表中找到一个适用于此分组的规则,而该规则规定允许该分组通过,那么系统就允许该分组通过。
(5)如果在规则表中没有适用于该分组的过滤规则,那么,根据缺省规定,则该分组被
阻塞(根据缺省拒绝原则)或被允许通过(根据
缺省允许原则)。
一旦分组过滤器已经检查完了一个分组,这时有两种可能性:一是将这个分组传送。通常,如果一个分组通过了分组过滤规则的检查被允许通过,路由器则像一个普通的路由器那样将这些分组传向它的目的地;另一种情况是丢弃分组。如果按照分组过滤规则,被检查的分组不被允许通过,那么分组过滤路由器将丢弃该分组。
分类
1.根据地址进行过滤
虽然根据地址进行过滤不是最常用的分组过滤方法,但是这种方法最简单。用这种方式进行过滤,根据分组的源IP地址和目的IP地址来限制分组而不必考虑所涉及的协议。
要注意的是,单纯根据源地址进行过滤的不安全性,因为进攻者能够伪造分组的源地址。
2.根据服务进行过滤
根据
服务进行分组过滤的方法有些复杂。用这种方式进行过滤,要考虑分组所涉及的协议。
要注意的是,单纯基于源端口进行分组过滤的不安全性,这种类型的过滤要求我们只能像信任源主机那样信任源端口。
规则设置
包过滤规则的匹配方式是顺序匹配,因此在设置规则时,需要注意以下几点。
(1)最常用的规则放在前面,这样可以提高效率。
(2)按从最特殊的规则到最一般的规则的顺序创建。当规则冲突时,一般规则不会妨碍特殊规则。
(3)规则库通常都有一条默认规则,当前面所有的规则都不匹配时,执行默认规则。默认规则可以是允许,也可以是禁止。从安全的角度看来,默认规则为禁止更合适。
(4)对于TCP数据包,大多数分组过滤设备都使用一个总体性的策略来允许已建立的连接通过设备。如果TCP包的SYN位被清空,则表示这是一个已建立连接的
数据包。
优点
1.分组过滤系统价格便宜
分组过滤在许多路由器上具有广泛可行性,许多路由器产品都有根据给定规则对
报文分组进行过滤的功能,这些规则包括
协议的类型、特定协议类型的源地址和目的地址字段以及作为协议一部分的控制字段等。路由器软件已经提供了建立一个分组过滤防火墙所需的大部分功能,而一个网络与Internet连接时路由器是必不可少的,所以在原有的网络上增设分组过滤型防火墙几乎不需要任何额外的费用。已安装的防火墙80%都是基于分组过滤模式的防火墙,它们不过是在连接内部网络与Internet的路由器上根据内部网络的安全策略设置了一些过滤原则而已。许多
路由器产品,像
Cisco,3COM,Digital和Newbridge等路由器产品都可以通过编程实现其分组过滤功能。费用低是分组过滤系统的主要优势。
2.分组过滤不要求用户的知识和合作
与
代理的情况有所不同,分组过滤不要求任何通用的软件或客户机器的配置,也不要求用户进行专门的训练。若分组过滤路由器允许分组通过,此时,该路由器和通常的路由器没有什么不同。理想情况下,如果用户的分组被允许通过防火墙,用户甚至不能意识到分组过滤的存在。也就是说,分组过滤有很好的
透明性。“透明性”就意味着可以在没有用户的合作的情况下做分组过滤。这就是说,在内部网络和Internet之间增设了分组过滤防火墙之后,用户对网络的使用方式没有改变。
局限性
1.分组过滤规则本身有局限性
(1)分组过滤的原理听起来很简单,而实现上不是这样。分组过滤型防火墙的设计是从制定分组过滤规则开始的,分组过滤规则的好坏是防火墙成败的关键。定义分组过滤规则是一项复杂的工作,它要求网络管理人员详细了解Internet的各种服务以及用户的需求,当内部网络规模较大,过滤要求比较多时,过滤规则就可能变得很复杂,从而难以管理,在配置过滤规则时难免不发生错误和出现
漏洞。
(2)分组过滤规则被配置后,难以测试和维护。
(3)有一些协议不适合对其进行分组过滤,即使分组过滤设计得很好,它也不能适用于全部协议的要求。像包含R命令的一些协议和基于RPC的协议就是这样。
2.分组过滤失效时给内部网络带来的危害较大
分组过滤器内部也可能有BUG,而这些BUG比代理中的BUG更有可能导致安全问题。
通常,代理的失败只会导致停止传送
数据,而分组过滤的失败则可能允许本该被拒绝的分组通过防火墙。