WAF 是怎么拦住 SQL 注入和 XSS 的?从 OWASP 十强看网站应用防护
流量防护不等于应用防护
DDoS 与 CC 攻击的是可用性——让网站打不开;应用层攻击盯的是数据——SQL 注入拖库、XSS 窃取会话、目录穿越翻文件。防后者靠的不是清洗带宽,而是 WAF(Web 应用防火墙)。悠梦庭高防CDN 在流量三闸之外,同样内置了应用层的特征规则引擎。
WAF 怎么"认出"一次攻击
WAF 逐条读取请求的路径、查询串、头部与 body,做特征匹配。两个关键细节决定拦得准不准:
- 双路匹配:攻击者常用 URL 编码、双重编码绕过检测,WAF 会同时匹配"原始串 + 一次解码后的串";
- 规则库积累:规则来自大量真实攻击样本,覆盖 OWASP 最常见类别——SQL 注入、XSS、目录穿越、远程代码执行;对 sqlmap、nikto 这类扫描器则叠加 UA 黑名单,从门口就拒。
拦 SQL 注入的实况
形如 id 参数后拼 OR 恒真条件、闭合引号加注释符的请求,以及它们的编码变体,都会命中注入特征被 403。注意:合法后台接口若参数里真含 SQL 关键字被误拦,正确做法是给该路径做白名单精确放行,而不是关掉整个 WAF。
XSS 的拦截与根治
带 script 标签、事件属性、伪协议链接的参数在边缘就被拦下,恶意代码进不了页面上下文。但要记住:WAF 是外线,站点自身的输出转义与 CSP 才是根治——WAF 买到的是"来得及修 bug"的时间窗口。
上线调优三原则
- 先低流量开启、观察一周误杀,再收紧策略;
- 业务接口误拦走路径白名单,别全局关闭防护;
- 每周复盘封禁记录:哪些是真攻击、哪些是爬虫,让数据决定是否改规则。
小结
流量闸与应用闸各守一层,再配上 资讯中心 日志中心里四类记录的留存,攻防才不再是裸奔。