最直接有效的做法是启用waf内置sql注入防护规则并设为“阻断”;需确认waf服务运行、开启「sql注入攻击防护」开关、选用「阻断」动作,优先启用owasp top 10预置规则集,对/login等高风险路径启用严格模式,并用' or 1=1 --等载荷测试拦截效果。

最直接有效的做法是启用WAF内置的SQL注入防护规则,并将动作设为“阻断”。这不是堆功能,而是确保规则真正生效——很多拦截失败,其实只是因为配置停留在“告警”或“仅记录”状态。
确认WAF已启动并启用SQL注入防护
WAF模块必须处于运行状态,防护规则才可能触发。登录控制台后,先检查WAF服务是否已启动;再进入「防护策略」→「Web基础防护」,找到「SQL注入攻击防护」开关,确认其已开启,且防护动作明确选择「阻断」而非「告警」。部分平台默认为日志记录模式,不手动切换就等于没拦。
优先启用OWASP Top 10预置规则集
这类规则已覆盖union select、or 1=1、sleep()、information_schema等高频载荷,无需从零编写。同时建议开启HTTP协议合规检测,可同步拦截非法方法(如非必要启用的DELETE)和畸形请求头,减少绕过机会。
对高风险路径启用严格模式
管理类接口(如/login、/admin/api)应额外开启「严格模式」,增强参数校验强度。例如: - 数字型参数(id=、page=)强制只允许纯数字输入 - 用户名/邮箱类字段限制长度≤32,并过滤单双引号、分号、等号、括号 - 搜索参数(q=)需启用语义分析引擎,识别URL编码、大小写混淆、空格绕过等变形
上线前用标准载荷验证拦截效果
务必发起真实请求测试,不能仅依赖界面开关状态。常用验证载荷包括:
• ' OR 1=1 --
• 1' UNION SELECT 1,database(),3--
观察是否返回403状态码,并在WAF日志中查到明确拦截记录。若未拦截,需回溯规则启用状态、动作配置及站点绑定关系。











