跳到主内容
快讯直播
AI智模界
AI 词典

WAF:能挡住套路,挡不住“正常”的那一次调用

WAF(Web Application Firewall,Web 应用防火墙)是站在网站入口的一道安检,它会拆开每个 HTTP/HTTPS 请求查看内容,把看起来像已知攻击的请求拦下。

打个比方:写字楼保安手里有一本通缉令相册,每天翻看进出的人。有人拎着撬棍、蒙面翻墙进来,相册里有,保安拦下;有人西装革履、刷卡进门、跟前台点头微笑,相册里没有,保安放行。可这个人恰恰是来踩点的。WAF 的工作方式就是这样:它比对“像不像坏人”,却不判断“你要干什么”。

具体来说,WAF 检查 URL 路径、查询参数、请求头、Cookie 和请求体,用签名(signature)规则匹配已知的攻击写法,比如 SQL 注入里的 ' OR 1=1、跨站脚本里的 <script>、目录穿越里的 ../;再叠加频率限制、人机校验、语义分析和机器学习模型,来判断这是不是扫描器、恶意爬虫或者 CC 攻击。它真正擅长的是把每天成千上万次自动化试探挡在门外,让业务只处理“像真人发来的”请求。

它和相邻概念的位置不太一样:

对比项网络防火墙WAF
看的层次网络层、传输层:IP、端口、协议应用层:HTTP 请求的具体内容
判断依据这个地址能不能连进来这个请求长得像不像攻击
典型动作封 IP、封端口拦 SQL 注入、XSS、扫描器、恶意爬虫

它也不是 IDS/IPS 这类通用入侵检测设备的替代品:后者覆盖面更宽,WAF 只盯 Web 这一层,但盯得更细,也更理解 HTTP 的语法。

关键在于它的局限。WAF 的规则是“过去的攻击长什么样”的总结,所以它天然擅长挡已知套路;挡不住的则是这样一次调用:使用合法账号、走正常接口、参数类型全对、频率低得像真人,每一步都挑不出语法毛病,只是把订单号从 1001 改成 1002,把优惠券叠加用了三次,或者把不属于自己的数据一条条读走。这些属于越权和业务逻辑漏洞,请求本身完全“正常”,WAF 看不到“这个用户不该访问这条数据”这层语义,而这层语义只有业务系统自己知道。

所以对从业者来说,WAF 是纵深防御里最外层、性价比很高的一环,但不能当唯一防线:它挡掉的是噪音,剩下部分要靠权限校验、业务风控、审计日志和异常检测。对普通人来说,它更常见的存在感反而是“误伤”:你在表单里贴了一段含特殊字符的代码或正文,提交被拦了,多半是因为 WAF 规则太严,而不是网络坏了。

顺带一提,如今给大模型应用做输入过滤的“LLM 防火墙”,思路几乎同源:先在门口挡掉见过的坏写法,剩下的,仍要靠业务自己判断。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。