WAF 与防火墙

WAF 与防火墙

我在阅读有关防火墙的资料时,遇到了两个让我困惑的概念 - Web 应用程序防火墙和“常规”防火墙。我不太清楚它们有什么区别 - 它们听起来都像是在做同样的事情。有人知道它们的区别吗?

谢谢!

答案1

“常规”防火墙通常只检查网络的第 3 层和第 4 层OSI 模型。例如,允许 TCP 端口 80、仅允许来自特定 IP 地址的 UDP 端口 53,或者拒绝 TCP 端口 25。

对于 HTTP 请求,一旦清除“允许 TCP 端口 80”障碍,防火墙就不会对通过该连接传递的内容感兴趣。


Web 应用程序防火墙几乎完全在第 7 层工作,处理 HTTP 请求内容方面的安全性。

他们主要希望阻止超出 Web 应用程序预期范围的请求,使用应用于传入 HTTP 请求的规则来防止跨站点脚本、SQL 注入、目录遍历或暴力身份验证尝试等攻击。本质上,他们的全部目的是保护 Web 服务器免受攻击者可能用来破坏 Web 应用程序的各种操纵和恶意请求的侵害。

答案2

对此的一个非常快速而粗略的回答是,Web 应用程序防火墙是一种专门设计用于保护 Web 应用程序交易的防火墙(设备和/或软件),例如 HTTP(s) 查询、数据库查询以及可能与 Web 应用程序堆栈相关的其他流量。

不过,稍微详细说明一下:

“标准”防火墙,即普通的 OSI 第 4 层防火墙,根据协议信息(例如 IP、TCP、UDP 和 ICMP)进行过滤。您可以在防火墙中设置规则,以根据 IP 范围、TCP 端口、ICMP 类型等进行允许。这通常是您能找到的最简单的防火墙类型。

绝大多数防火墙(在撰写本文时)还包括 OSI 模型中更高级别的检查功能 - 这些功能可以和/或将检查穿越防火墙的实际协议流量。例如 AIM、HTTP、SQL、Jabber 和许多其他协议。有些防火墙只会检查潜在攻击 - 其他防火墙允许您更精细地定义该协议中特定消息属性的允许/拒绝规则。更高级别的检查和规则库的实用性往往因品牌/型号而异。

Web 应用程序防火墙 (WAF) 类似于后者 - 也就是说,它在 OSI 堆栈中执行更高级别的工作,但旨在对流量进行应用程序级检查,并且专门面向 Web 应用程序业务领域。大多数 WAF(但不是全部)并非旨在取代传统防火墙,而是增强传统防火墙。通常,WAF 有两种不同的工作模式 - 被动检查和“主动”模式。被动模式仅监听流量,如果发现任何已知的“不良”流量,则可以发出警告。主动模式可以在发现“不良”流量时主动阻止它,同时允许“良好”流量通过 Web 应用程序。供应商通常还提供订阅服务,使 WAF 能够使其已知漏洞列表保持最新。

大多数 WAF 和标准防火墙本质上可以做同样的事情 - 在两个网络之间创建边界,并根据规则列表允许或拒绝流量。主要区别在于 WAF 专门用于帮助保护 Web 应用程序,并且大多数 WAF 并非旨在取代传统防火墙。

我之前确实说过大多数(但不是全部)——有一个术语/流行语/市场术语——称为 NG 防火墙(或“下一代”防火墙)。这些东西是强化版的防火墙。它们不仅执行标准防火墙功能,还执行过去需要许多独立设备才能执行的功能——例如防火墙、病毒检查、Web 应用程序防火墙、聊天/消息过滤和其他应用程序协议的防火墙。我没有测试过任何防火墙,所以 YMMV;我只是将其作为设备的示例,该设备旨在执行这两种功能,并努力将这两种功能都做好。

相关内容