网页应用程式防火墙(英语:Web Application Firewall,缩写:WAF)是一种特定形式的应用程式防火墙,用于过滤、监控和阻断通过网页服务的HTTP流量。透过监察HTTP流量,它可以防止利用网页应用程式已知漏洞的攻击,例如SQL 注入跨网站脚本(XSS)、文件包含和不正确的系统配置。 [1]

历史

网站应用程式防火墙在 1990 年代后期开始发展,当时伺服器攻击变得越来越普遍。

早期版本的 WAF 由Perfecto Technologies及其 AppShield产品开发[2],该产品针对电子商务市场并防止可能造成漏洞的字符输入,如:'#(在SQL注入攻击中常见)。 2002 年,为了使 WAF 技术更易于使用开源项目ModSecurity [3]成立。ModSecurity基于 OASIS Web 应用程式安全技术委员会 (WAS TC) 公布的漏洞,最终确定了保护 Web 应用程式的核心规则集。 2003 年,他们结合了网络应用程式安全项目(OWASP) 的前十名和每年更新的漏洞表制定出一个业界标准。 [4] [5]

从此以后,市场蓬勃发展,尤其在金融界的信用卡诈欺预防。随着支付卡行业资料安全标准(PCI DSS) 的发展,使得持卡人的数码资料更加安全。根据 CISO 杂志,WAF 市场预计到 2022 年将增长到 54.8 亿美元。 [6]

简介

网络应用程式防火墙是一种特殊的应用程式防火墙,专门用于网络应用程式。它部署在 Web 应用程式前端并分析网络的双向 (通常是HTTP) 流量,使它能够检测和阻止任何恶意内容。 此功能可以在软件或硬件中实现,在特殊装置中运行,或者在运行的一般操作系统的典型伺服器中实现。它可能是一个独立的装置或包含在其他网络组件中。[7]换句话说,WAF 可以是一种虚拟或物理装置,防止网络应用程式中的漏洞被外部使用。这些漏洞可能是因为程序本身过旧或程式设计缺陷。 WAF 通过阻挡符合规则集(也可以称作过滤条件)的流量来解决这些程序缺陷。

以前未知的漏洞只能通过渗透测试或漏洞扫描器发现。 网络应用程式漏洞扫描程序,也称为网络应用程式安全扫描程序,在SAMATE NIST 500-269 中定义为“是一种检查网络应用程式是否存在潜在安全漏洞的自动化程序。除了搜索特定网络应用程式的漏洞外,这些工具还可以检查程序错误。” [8]网络应用程式漏洞扫描程序可以在应用程式中对程序进行更正,也可能需要针对特定的网络应用程式漏洞应用自定义策略以提供临时紧急修复(称为虚拟补丁)。

WAF 并不是安全解决方案的万灵药,而是旨在与其他网络外围安全解决方案(例如网络防火墙和入侵防御系统)结合使用,以提供整体防御策略。

种类

尽管称呼可能不同,但 WAF 基本上可以分为三种。根据 NSS Labs 的分类,有三种:透明网桥、透明反向代理和反向代理[9] “透明”是指 HTTP 流量直接发送到网页应用程式,因此 WAF 在客户端和服务端之间是透明的。这与反向代理相反,在反向代理中,WAF 充当代理者,客户端的流量直接发送到 WAF。然后,WAF 将过滤后的流量转传到 Web 应用程式。这样有一些好处,例如 IP 遮罩,但可能有一些缺点,例如传输延迟。

供应商

许多商业 WAF 具有相似的功能,但主要差异通常涉及特定环境中的用户界面、部署选项或要求。著名的供应商包括:

本机服务

云端

云端原生

开源

  • ModSecurity

参见

参考

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.