更新时间:2021-03-18 21:34
ICF(InternetConnectionFirewall)因特网连接防火墙,ICF建立在你的电脑与因特网之间,它可以让你请求的数据通过、而阻碍你没有请求的数据包,是一个基于包的防火墙。
ICF 本质上是一个状态数据包过滤器。与静态数据包过滤器不同,静态数据包过滤器仅基于数据包的地址信息来确定是否丢弃数据包,而状态数据包过滤器的决定会同时基于数据包的状态和会话的上下文信息。这些存储的状态为该过滤器提供了实施比静态过滤器更为丰富、更为全面的规则集的方法。
ICF 所维护的状态是一个连接流表。对于面向连接的协议(如 TCP),连接流等价于这些协议的连接定义(例如,源和目标地址、端口以及所使用的协议)。对于无连接的协议(如 UDP),连接流是在公共端点(如,IPAddress1/Port1 和 IPAddress2/Port2)之间无中断发送的一组数据包。此处的无中断,是指在给定的时间段(比如 1 分钟)内没有任何数据包与该流匹配。
当连接流到时终止或连接被关闭时,表中的状态信息会被删除。
ICF 在整个状态数据包过滤中实施的主要安全策略包括三个规则:
该策略允许客户端对 Internet 的正常访问(如 Web 浏览),同时阻止与这些访问无关的数据包被发送到网络堆栈。为了打开特定端口(创建静态过滤器)以便能在防火墙之后运行服务(比如 Web 服务器),该策略也确保用户可以对这些规则进行修改。
除安全策略外,ICF 还会对 TCP 数据包执行结构上的检查。这些检查包括快速丢弃具有不可能的标记组合的数据包(比如在单个数据包中同时设置有 SYN 和 FIN 标记),以及实施 TCP 三路握手以打开端口。前者在面对基于大量随机数据包的攻击时能极大地降低处理开销,而后者可以防范各种扫描技术。