防火墙的分类

包过滤防火墙
包过滤防火墙,又称为分组过滤防火墙,采用静态包过滤方式。
实现包过滤功能的物理设备可以是一台路由器或一台主机,又称为过滤路由器。

包过滤工作在 OSI 参考模型的网络层和传输层(IP 层和 TCP 层),主要检查数据包的 IP 头(Header)和 TCP 头或 UDP 头进行过滤。
由于绝大多数服务都使用特定的 TCP/UDP 端口,因此屏蔽特定的端口即可禁止相应的服务。
比如,FTP 的端口号为 21,如要阻断所有进入FTP服务的链接,只需令防火墙将所有包含目的端口为 21 的包丢弃即可。
再如,2017 年 5 月肆虐全球的“永恒之蓝”勒索病毒可以通过防火墙封闭 TCP 445 端口来拦截。
包过滤防火墙的优点:
① 易于实现和部署;
② 因为包过滤防火墙工作在网络层和传输层,只检查数据报头而不检查其内容,所以其数据包处理速度较快、效率较高,从而使得它对于小规模网络尤其适用。
包过滤防火墙的缺点:
① 包过滤防火墙仅对数据包头进行检查,无法进行数据包内容过滤,即使数据包内容含有攻击型数据,也无法对其控制和阻断;
② 无法有效地支持用户认证;
③ 对于较大规模的网络来说,过滤规则表可能很庞杂导致系统性能下降;
④ 包过滤防火墙只能阻止外部主机伪装内部主机类型的 IP 欺骗,无法识别外部主机伪装外部主机的 IP 欺骗,也不能防止 DNS 欺骗;
⑤ 开放端口(尤其是大于 1024 的端口)降低了安全性。
应用代理防火墙
应用代理防火墙(Proxy Firewall)又称为应用层防火墙,主要在应用层实现,因此得名。

包过滤防火墙原理图

应用代理防火墙原理图
应用代理防火墙的优点:
提供用户级的身份认证
具有强大的日志记录
提供了附加的安全性
应用代理防火墙的缺点:
额外增加了连接处理环节,容易形成系统性能瓶颈,导致系统性能下降甚至恶化;
代理的应用层协议有数量限制,无法支持所有的网络协议,因此可能对网络可支持的应用程序类型带来限制;
代理机制工作在应用层,无法改进底层协议的安全性。
状态检测防火墙
传统的包过滤防火墙仅检测 IP 包头的相关信息,状态检测则不然。状态检测是指连接状态的检测,将属于同一连接的所有包视为一个整体数据流(即基于会话机制),构建动态连接状态表,通过规则来识别各连接状态因素,跟踪网络连接过程。
截取到数据包后,防火墙首先根据安全策略在协议栈的较低层检查数据包,将有用信息提取并保存至内存,根据规则对其进行数学或逻辑运算,并根据运算结果进行后续操作,如放行数据包、拒绝数据包、认证连接、加密数据等。
满足安全策略的数据包在更高协议层(甚至是应用层)上被分析。虽然状态检测防火墙是从协议栈较低层捕获信息,但可以检测应用层的数据包,验证数据的源 IP、目的 IP 和端口号、协议类型、应用信息等多层标志,极大地提高了安全防护能力。

状态检测防火墙的优点:
包过滤防火墙的优点,而且利用状态检测机制,进一步提升了对网络层和传输层的行为控制。
这种方法不需要在协议栈的上层处理数据包,避免了高层协议头的开销,效率较高。
而且它不像应用代理防火墙那样,每个应用都必须开发相应的代理服务程序,因此对应用协议具有较好的适用性,灵活性、可扩展性和安全性进一步增强。它的配置非常方便,应用范围较广。
状态检测防火墙的缺点:
它仍然无法彻底识别数据包中的木马、恶意程序以及垃圾邮件和广告等。
web应用防火墙
Web 应用防火墙(Web Application Firewall,WAF)是一类特殊的专用防火墙,部署在 Web 服务器与 Web 客户端之间,尽量靠近服务器一侧(如 DMZ 或者数据中心服务区),通过深入到应用层(第 7 层)来监测应用程序层通信,以发现违反安全策略的行为,从而为 B/S(浏览器/服务器)架构的信息系统提供专门防护。
Web 应用防火墙与 Web 安全网关的功能虽然类似,但它的保护对象是 Web 服务器和基于 Web 的应用程序,而不是针对网络用户。
根据工作方式及原理不同,WAF 部署模式可以分为 4 种:
透明代理模式
反向代理模式
路由代理模式
端口镜像模式
前 3 种模式都是在线模式,WAF 被串行部署于 Web 服务器的前端,可以检测并阻断异常流量。
端口镜像模式是离线模式,只需将 WAF 旁路接在 Web 服务器上游的交换机上,只能检测异常流量而无法阻断。
实际案例

阿里云web防火墙介绍页面

