WAF全称为Web Application Firewall(网页应用防火墙)是一种专门设计用来保护web应用免受各种网络攻击的安全防护措施。它位于客户端与服务器之间,监控和过滤HTTP流量,从而拦截恶意请求、识别并防御常见的web攻击。
WAF的主要功能
-
1. 防止SQL注入: WAF能够检测并阻止恶意SQL查询的执行,防止攻击者通过漏洞执行未授权的数据库操作。
-
2. 防止跨站脚本攻击(XSS): WAF通过识别并过滤恶意脚本,防止攻击者通过web页面将恶意代码注入到其他用户的浏览器中。
-
3. 防止跨站请求伪造(CSRF): 通过验证请求的来源,防止恶意网站发起伪造请求,欺骗用户执行不想做的操作。
-
4. 保护web应用免受暴力破解攻击: WAF可以监控并限制暴力破解尝试,防止攻击者通过暴力猜解密码或验证码。
-
5. 防止文件上传漏洞: WAF可检查上传文件的类型和内容,防止恶意文件被上传到服务器。
-
6. 流量监控和阻止: 它能够检测到异常的流量模式,及时拦截大量请求或恶意bot的攻击,减轻DDoS(分布式拒绝服务)攻击的影响。
WAF的种类
WAF分为嵌入型和非嵌入型两大类:
嵌入型WAF -- 网站内置的WAF, 也叫做自定义WAF, 直接嵌入在代码中, 是开发人员为了网站的安全, 会在可能遭受攻击的地方增加了一些安全防御的代码, 比如过滤危险操作, 对潜在的威胁字符进行编码,转义等, 网站内置的WAF与业务更加契合。
非嵌入型WAF又分为这几种:硬件型WAF, 软件型WAF, 云WAF等, 以下是这几种WAF的一些介绍:
硬件型WAF:以硬件的形式部署在链路中, 支持多种部署方式, 当串联到链路中时可以拦截恶意流量,在旁路监听时,只记录攻击不拦截, 代表产品:imperva, 天清WAG等。
软件型WAF:以软件形式安装在服务器上, 可以直接检测服务器是否存在webshell, 是否有文件被创建等, 代表产品:安全够, D盾, 云锁等。
云WAF:一般以反向代理的形式工作, 通过配置NS或CNAME记录, 使得对网站的请求报文优先经过WAF主机, 经过WAF主机过滤后,被认为是无害的请求报文在发送给实际网站服务器进行请求, 可以认为是带防护功能的CDN, 代表产品:阿里云盾, 腾讯云WAF等。