
观察异常请求日志、应答差异和业务异常。常见迹象包括:同一URL在短时间内出现大量包含编码混淆、特殊字符或多层URL编码的请求;数据库报错或应用层错误堆栈在日志中突然增加;某些请求返回状态码与正常不同但响应体被截断。结合WAF日志和应用日志可以发现注入绕过的痕迹。
对比WAF拦截日志与后端接收日志,若WAF未拦截但后端出现异常,说明可能发生了绕过。使用payload指纹比对(如常见SQL关键字、注释、联合查询特征)和异常参数长度、encoding模式,可定位可疑样本。
在非生产环境复现怀疑样本,使用HTTP抓包工具和安全扫描器逐步变换编码、注入方式,观察WAF是否触发并记录规则ID,从而确认是否为绕过。
使用结合黑盒与灰盒的自动化扫描器(如Burp Suite、SQLMap、自定义fuzzer)进行变异测试,重点启用多种编码、分段请求、混淆payload。并结合WAF规则日志,自动化比对成功到达后端的恶意载荷。
测试时应包含:多种字符集编码(UTF-8/GBK)、%00注入、注释绕过、布尔盲注、延时注入;同时模拟WAF可能放宽的白名单路径与已知allowlist参数,以检测逻辑漏洞。
立即在百度云控制台调整WAF策略:启用更严格的防护模式(如阻断模式),添加针对性拦截规则、IP黑名单与速率限制;对可疑参数启用严格正则检测或关闭可疑接口。
同时打开详细审计日志并导出可疑样本,交由安全团队回溯攻击链、识别被利用的具体输入点。建议临时在CDN或负载均衡层增加Web Application Firewall前置规则以快速阻断。
首先在服务端实现严格的输入校验,对所有外部输入做白名单验证和长度限制。对输出实施上下文相关的输出编码,避免直接拼接SQL/HTML/命令。
对数据库操作使用参数化查询或预编译语句,避免动态拼接SQL。使用ORM或安全驱动并开启最小权限账号。对系统命令调用使用安全库并严格校验参数。
检查并更新第三方组件与框架补丁,修复已知的解析/转义漏洞;对有风险的功能模块进行重构,去除宽松的输入解析逻辑。
修复完成后,应使用回归测试包含之前能够绕过的payload集合,使用自动化扫描器在测试环境与准生产环境重复验证;同时在WAF上测试规则是否对真实流量无误杀。
建立持续监控:将WAF拦截日志、应用错误日志、数据库警告接入SIEM,设置异常告警(如异常解码模式、速率突增、未拦截但后端异常)。定期更新WAF规则库并把新发现的payload加入测试用例。
制定漏洞响应流程、定期演练并保持开发-安全-运维的反馈闭环。对外部安全报告与漏洞信息建立快速评估与规则下发机制,确保能在最短时间内修补或缓解新出现的绕过技术。