图解系列--防火墙

05.01 防火墙是怎样的网络硬件

构建安全网络体系而需要遵循的 CIA 基本理念。CIA 是机密性 (Confidentiality) 、 完整性(Integrity) 、 可用性(Availability)。
图解系列--防火墙_第1张图片

防火墙硬件作为防范装置能够同时实现CIA 中3个条目的相应对策。在20世纪90年代中期,普通企业一般都会在网关(LAN 与互联网的边界)中设置防火墙。

防火墙这个装置原本用于防范外部网络,也就是拥有多个不特定用户的公共网络对内部网络 (企业的Intranet) 进行的 DoS 攻击或不法访问(Hacking,黑客行为),但现在也开始需要防范从内部网络向互联网泄露信息或将内部网络作为攻击跳板等行为。

05.03 防火墙如何分类

05.03.01 软件型防火墙

  1. 个人防火墙
    个人防火墙运行于个人计算机上,用于监控个人计算机与外部网络之间的通信信息,主要功能如表5-3所示。在 Windows 操作系统中集成了Windows 防火墙。一般拥有杀毒软件产品的厂商会以综合安全软件套件的形式销售个人防火墙(表5-4)。
    图解系列--防火墙_第2张图片
    图解系列--防火墙_第3张图片

  2. 网关型防火墙
    在计算机网络的网关中设置类似防火墙设备的功能,从而对网络中通信流量进行策略控制,这种类型的防火墙即为网关型防火墙。
    网关型防火墙分为两类, 一类是在Windows 、Linux 等通用操作系统上安装并运行FireWall-1 软件的软件型网关防火墙, 一类是使用专用设备的硬件型网关防火墙。个人防火墙主要监控所有到达个人计算机的通信流量,而网关型防火墙则需要监控来自多数不特定终端设备的通信流量,并在它们通过网关时实施策略控制。
    图解系列--防火墙_第4张图片

05.05 什么是防火墙的网络接口模式

L1~L3 模式如图5-8所示,是将需要防火墙控制的 链路进行“串行”连接,这样的拓扑结构称为内联(inline) 连接。TAP模式正如图5-9所示,该模式仅有一条来自交换机的链路构成,这样的链路组成结构也称为单臂(one-arm) 拓扑。

接口模式 说明
L3模式 也称为NAT模式,是与路由器接口一样拥有IP地址的接口。在进行路由选择、NAT以及连接IPSec-VPN或SSL-VPN时,必须使用L3模式的接口可以通过网络管理人员输入静态配置IP地址,也可以通过PPPoE、DHCP客户端动态分配来获取接口的IP地址。在L3模式下进行路由时,需要使用虚拟路由器
L2模式 也称为透传模式或者透明模式(L2透明模式),是与交换机接口一样拥有同样MAC地址、可进行桥接的接口。进行IP地址分配时需要使用VLAN
L1模式 把两对儿网络接口组成一组,流量在其中一方的接口上输入并在另一块接口处输出。该模式下无法进行路由和桥接
TAP模式 与交换机镜像端口(SPAN端口)相连接的模式。通过对交换机转发的数据帧进行复制并收集,可以将通信内容可视化并检测恶意软件。由于不是内联结构,因此该模式无法阻止那些没有必要的通信过程

图解系列--防火墙_第5张图片
图解系列--防火墙_第6张图片

05.06 防火墙能够预防的威胁

图解系列--防火墙_第7张图片

图解系列--防火墙_第8张图片
在这里插入图片描述

  1. 威胁安全的人
    安全威胁一般分为人为因素和非人为因素(自然灾害等),防火墙面临的威胁一般来自于人为因素。表5-11列出了安全威胁人(攻击者)的几个类型。
    图解系列--防火墙_第9张图片

05.07 防火墙中搭载的各种功能

05.07.01 会话管理

  1. 会话与数据流
    会话(session) 是指两个系统之间通信的逻辑连接从开始到结束的过程。在 TCP中某个服务器与客户端成对进行通信时,会完成3次握手来确认建立1个TCP 连 接,在从连接建立开始至连接结束的时间里,客户端发送请求(request) 和服务器进行应答(response) 这一交互过程即可称为进行了1个会话。在UDP 中,客户端与服务器之间只要发送源的端口和目的地端口的配对一致,随后的一系
    列通信均可以称为会话。在ICMP中,例如 Echo 和对应的 Echo reply的组合就可以称为会话。一个会话存在“客户端→服务器”(c2s 或client to server) 和“服务器→客户端”(s2c 或server to client)两个数据流(flow)。数据流是指发往通信对方的多个分组序列。
    图解系列--防火墙_第10张图片

  2. TCP 连接管理
    一个 TCP 的连接需要通过3次握手来确认建立。最初由客户端发送 SYN 消息,即发送首部中SYN 比特信息设置为“1”的TCP 数据段。 SYN 读 作 /sin/, 表示同步的意思,取自Synchronization 这个单词的前三个字母。SYN 相当于一个开始信号,与打电话时先拨号码的行为类似。当服务器收到来自客户端的 SYN 消息后,将返回表示确认的 ACK 消息,同时也会发送一个SYN 消息至客户端。ACK 表示确认的意思,取自Acknowledgement 这个单词的前三个字母。TCP 连接使用端口号表示不同的网络服务(应用程序)。例如, HTTP 使用80号端口, TELNET 使用23号端口。提供HTTP 服务的服务器必须接收和处理客户端发送至80号端 口的TCP 数据段。能够处理分组的状态一般表示为listen 状态(listen 意为“侦听”,也称为listening)。
    图解系列--防火墙_第11张图片

序列号分为两类, 一类用于从客户端发往服务器端(c2s) 的上行TCP 数据段,另一类用于 从服务器端发往客户端(s2c) 的下行TCP 数据段。上行和下行两种数据流在建立时,各自使用不同的随机数作为初始序列号 ISN(Initial Sequence Number)。

2.1. SYN 检查
TCP 会话开始时客户端必会发送一个 SYN 消息。如果是没有附带会话信息(或尚未建立会话),即非 SYN 消息的 TCP 数据段到达防火墙,防火墙就会将其视作非法而整个丢弃。但也可 以根据不同的情形(双活冗余或会话超时等)关闭(OFF) 防火墙的这个功能,使不带有会话信息的、非 SYN 消息的 TCP 数据段也能够通过防火墙。

2.2. ACK 检查
在根据 SYN Cookie(参考表5-27)信息防范SYN Flood攻击时,通过对SYN-ACK 的 ACK消息进行检查,能够确认进行中的3次握手是否为非法尝试。

2.3. 同一数据段检查
终端再次发送 TCP 数据段时,对于和之前收到的TCP 数据段含有相同序列号或数据的 TCP 数据段,可以指定防火墙的处理方式,即指定是使用新接收到的重复数据段还是丢弃该重复数据段。

2.4. 窗口检查
检查TCP 首部内的序列号和滑动窗口大小(Window Size), 拦截超过滑动窗口容量数据的序列号。

2.5. 数据段重组
即使各数据段的顺序出现变化,TCP 数据段也能根据序列号调整为正确顺序。在防火墙进行这一工作,可以验证TCP 数据段序列号是否完整。

  1. 会话建立的处理
    防火墙按照以下步骤处理从网络接口接收到的分组,从而完成会话建立。

3.1. 检索会话表,确认表内是否存在相同会话(若存在相同会话,则禁止会话建立的后续流程)。
3.2. 若不存在相同会话,则检查该分组是否可以通过L3 路由选择或 L2 转发来输出。如果可以输出,确定对应的网络输出接口和目的地区域(若不能输出,则丢弃该分组)。
3.3. 分组转发时,如果目的地址需要进行NAT则先完成NAT, 确定NAT后的网络输出接口和目的地区域。
3.4. 根据分组的发送源信息(发送源网络接口、发送源区域和发送源地址)以及经过3.2、3.3步 骤后得到的目的地信息(目的地网络接口、目的地区域、目的地址)进行安全策略检查, 发现有符合的安全策略时,则根据该策略(允许通信或拒绝通信)决定是继续转发还是丢弃分组。如果没有符合的安全策略,则根据“默认拒绝”的设定丢弃该分组。
3.5. 当分组被允许通信时,会话表中就会生成该会话的相关信息。

  1. 会话的生存时间
    会话表中记录的会话信息有一定的生存时间。会话建立后,如果在一定时间内一直处于无通 信状态,防火墙将会判断该会话的生存时间已到,进而将该会话记录项从会话表内删除。如果无 条件地任由会话记录留在会话表中,这些会话信息则很有可能会被用于恶意攻击等行为。另外, 由于会话表的记录项在数量上也有一定的限制,因此长期保留会话记录也会导致资源的长期占用,从而影响新会话记录的生成。会话时间能够根据 TCP 、UDP 或其他IP 协议的不同分别进行设置。对于TCP 而言,会话的超时时间一般为30分钟~1小时, UDP 则为30秒左右。例如,某 Telnet 会话通过防火墙完成了连接,若在1个小时内没有进行任何通信,防火墙会自动将该会话 记录从会话表中删除。此后,客户端想要继续该 Telnet 会话时,也会被防火墙拒绝(图5-12),因此客户端需要重新建立 Telnet 会话。会话生存时间的调整可以参考本书07.04节。

图解系列--防火墙_第12张图片

  1. 会话终止处理
    TCP 连接一般通过下面的步骤终止会话。
    5.1. 客户端在完成收发数据后,会发送 FIN标志位设置为On 的 TCP 数据段(FIN)。
    5.2. 服务器接收到 FIN 消息后,会在回复消息中将 FIN与 ACK 标志位设置为On, 并将 Ack
    编号设置为“接收的 Seq 编号+1”。
    5.3. 客户端同样在回复的TCP 消息中将ACK标志位设为On, 将 Ack 编号设置为“接收的
    Seq编号+1”,连接就此结束。
    5.4. 这时,客户端会进入TIME WAIT的 TCP 状态。 一定时间后本次连接所使用的TCP 端 口号(来自客户端的通信发送源端口号)将会禁用。这一时间段称为2MSL(Maximum Segment Lifetime,MSL的2 倍),根据实现的不同,大约在1分钟到几分钟之间不等。

如果客户端或服务器在确认连接建立时发生了故障,那么将只有能够通信的一方进入侦听 状态,这种情形称为半侦听或是半关闭。如果这时通信的故障方从故障中恢复,并接收到故障前 交互的 TCP数据段,便会向通信对方回复一条TCP 响应数据段,该数据段中RST标志位设为ON, 通过这条响应消息强制终止TCP 连接。终止连接有时会通过FIN 和RST 两个标志位来完成,不过当防火墙接收到来自通信方 的 FIN 或 RST 时,还可以启动另一个30秒左右的定时器。如果在该时间段内FIN→FIN-ACK →ACK 的终止过程仍未完成,防火墙中的会话表项会被强制删除(图5-13)。
图解系列--防火墙_第13张图片

  1. UDP 数据流的管理
    在 UDP 中没有像TCP 这样的3次握手过程,客户端和服务器之间直接使用带有应用程序分组的UDP 分组进行交互。UDP 数据流是指发送源IP 地址、发送源端口号、目的地IP 地址和目的地端口号这4个参数都相同的一系列UDP 分组(图5-14)。
    图解系列--防火墙_第14张图片

DNS 和 SNMP 这种管理类应用程序一般只需1个UDP 分组便能完成1个数据流程。进行音频和视频数据交互的 RTP(Real Time Protocol),则需要通过多个由流数据(streaming data) 构成的 UDP 分组来完成1个数据流。

  1. 管理 ICMP 和 IP 数据流
    在进行ICMP 和 TCP/UDP 以外的 IP 通信时,由于不存在端口号这个概念,因此需要直接根据 IP 首部的协议号来生成会话信息。
    如 ICMP 中的 Echo 消息对应 Echo Reply 消息那样,防火墙需要自动识别不同的请求消息和与之对应响应消息,并综合判断这些消息序列是否属于同一个会话(图5-15)。
    图解系列--防火墙_第15张图片

  2. 会话同步
    支持会话同步功能的防火墙能够对冗余结构中(HA 结构①)主设备和副设备之间的会话信息 进行同步。为了准确地同步会话信息,需要使用专用的 HA 链路将两台防火墙连接,然后在该链路上完成会话信息的交互。在采用了主备方式的冗余结构中,活跃设备负责建立用户通信的会话,并将会话信息记录在会话表中,同时还会将信息通过HA 专用链路转发到备用设备中。

  3. 利用会话数目受限的特性
    有的防火墙产品拥有限制通过防火墙会话数目的功能,也有些产品将该功能作为DoS 防御功能的一部分提供给用户。防火墙可以以TCPSYN 、UDP 、ICMP 以及其他IP 等协议为单位,通过指定发送源与目的 地的组合来限制该类会话的数目。当指定的发送源为ANY 、 指定的目的地址为某特定地址时,就能够限制该服务器上的会话数目,这样做不仅可以控制服务器的负载,还可以防范 DoS 攻击。
    另外,限制会话的数目就相当于限制了防火墙内会话表中会话记录的数目,这也能够在一定程度上提高防火墙的性能。

05.07.02 分组结构解析

为了防止非法分组的流入和流出,防火墙会对分组的首部和有效载荷进行结构解析,解析的主要项目如下所示。

  1. IP 首部解析
    IPv4首部格式如图5-16所示,其中成为防火墙解析对象的部分如表5-13所示。

图解系列--防火墙_第16张图片

  1. TCP 首部解析
    TCP首部格式如图5-17所示,其中成为防火墙解析对象的部分如表5-14所示。

    图解系列--防火墙_第17张图片

  2. UDP 首部解析
    UDP 首部解析的对象如表5-15所示。
    在这里插入图片描述

05.07.03 安全区域

大多数的防火墙中都有安全区域(Security Zone,简称为区域)的概念,即将防火墙上物理 接口以及逻辑接口分配至不同的区域中,也就是将与防火墙连接的网段分别划分到不同的区域中。其中, 一个网络接口不能属于多个区域(图5-18)。在同一区域内可以自由进行基本通信,但跨区域的通信必须符合安全策略才能完成。防火墙也能够通过安全策略设置发送源或发送目的地等条件,根据是否符合这些条件来判断位于同一区域内的通信是否可行。
图解系列--防火墙_第18张图片
图解系列--防火墙_第19张图片

05.07.04 安全策略

你可能感兴趣的:(4.3.网络-图解系列,防火墙)