WAF配置拦截海外SQL注入XSS跨站恶意攻击

如果你正在寻找WAF配置拦截海外SQL注入、XSS跨站恶意攻击的方法,核心思路是:先启用WAF的规则引擎,再开启地域封禁或IP信誉库,最后结合日志验证拦截效果。
零基础用户建议优先使用宝塔面板或云服务商自带的WAF,无需自己编译,按本文步骤操作,20分钟内可以完成基础防护部署。

配置前先做好这几项准备

开始配置WAF之前,你需要确认以下条件:

  • 网站已经部署在服务器上,并且能正常访问。如果还没部署,建议先完成网站上线再做防护。
  • 你拥有服务器的管理权限,例如宝塔面板、云控制台或SSH登录权限。
  • 确认你的服务商是否提供WAF。如果你使用的是泽御云这类正规云服务商,可以在控制台查看是否有“Web应用防火墙”或“安全组”相关功能;也可以直接在宝塔面板中安装“Nginx防火墙”插件。
  • 备份网站配置文件,尤其是.conf.htaccess文件,防止配置出错导致网站无法访问。

让WAF规则真正挡住海外恶意流量

这里以宝塔面板的“Nginx防火墙”为例,流程同样适用于其他云WAF。

第一步:开启基础防护规则

在宝塔面板左侧菜单找到“安全”-“Nginx防火墙”,打开“CC攻击防护”、“SQL注入防护”、“XSS防护”、“路径扫描防护”等开关。
这些规则集已经内置了常见的攻击特征,可以拦截大部分基础SQL注入和XSS跨站脚本。

第二步:配置地域封锁

对于目标用户不在海外的网站,建议直接封禁已知的高风险地域。
在防火墙设置中找到“地区限制”,把不需要访问的地区加入黑名单。
注意这里只能按国家/地区维度封禁,无法精确到街道。
如果网站要正常服务海外用户,则不要开启,改为依靠IP信誉库。

第三步:添加自定义规则

如果默认规则识别不到某些变体攻击,可以手动添加。
在“全局过滤”或“自定义规则”中,添加以下两条常见防御规则:

# 拦截常见SQL注入关键字
if ($query_string ~* "(union\s+select|sleep\s*\(|benchmark\s*\()") { return 403; }

# 拦截XSS弹窗脚本
if ($query_string ~* "(

添加后重启Nginx或点击“重载配置”使其生效。

第四步:启用IP黑名单

在“恶意IP”或“IP黑名单”中,可以手动添加通过攻击日志发现的IP。
更高效的方式是开启“自动封禁频繁攻击的IP”,通常设置为1分钟内请求次数超过60次,就自动封禁该IP 24小时。

这些坑一定要避开

  • 不要把地域封禁当成全部:地域封禁只能挡住来自特定地区的流量,但攻击者可能使用代理或云端跳板。必须与规则拦截、IP信誉库同时使用。
  • 误杀正常用户:设置过于严格的频率限制或自定义规则,可能导致正常访问被拦截。建议先开启“观察模式”或“日志模式”运行24小时,确认没有问题后再切换到“拦截模式”。
  • 忽略HTTPS站点:如果你使用的是HTTPS,WAF必须能解密流量才能检查内容。宝塔Nginx防火墙可以通过“SSL”开关自动处理,云WAF则需要在控制台上传证书或选择“代理模式”。
  • 忘记更新规则库:攻击特征每天在变,定期点击防火墙的“更新规则库”按钮,确保新变体能被识别。

怎么确认规则真的生效了

配置完成后,不能只看开关状态,要实际验证。

验证方法1:手工模拟攻击

在浏览器或命令行中访问你的域名,并拼接攻击参数:

curl "https://你的域名/?id=1' UNION SELECT 1,2,3--"

如果WAF生效,你会收到403、405或444状态码,返回页面提示“已被WAF拦截”。

curl "https://你的域名/?search="

同样,如果返回拦截页面,说明XSS防护正常。

验证方法2:查看WAF日志

在宝塔防火墙的“攻击日志”中,可以看到刚才模拟请求的拦截记录,包含来源IP、攻击类型、命中的规则。
如果日志为空,说明你的WAF没有开在正确路径上,检查网站是否加入了WAF防护域名。

高频问题解答

Q1:我的网站经常被海外IP扫描,如何快速减少这种噪音?

开启地区限制,把流量访问量极低但攻击量大的国家加入黑名单。
同时开启自动封禁,让WAF自动处理短时高并发请求。

Q2:WAF会不会影响网站访问速度?

有一定影响,但影响很小。
宝塔Nginx防火墙默认使用内存缓存,大并发时会有毫秒级额外消耗。
如果感觉很慢,检查是否开启了过多“全局过滤”复杂正则,优先使用系统自带的规则集。

Q3:云服务商的WAF和宝塔防火墙哪个更好?

两者定位不同。
云服务商的WAF(例如泽御云企业客户常用的高防+WAF方案)通常在云端过滤,不占用服务器资源,适合高防场景;
宝塔防火墙部署在服务器本地,免费、可自定义性强,适合轻量级站点。
如果业务规模较大,建议两类结合使用。

Q4:配置WAF后我的网站打不开了怎么办?

先暂停WAF的“全局拦截”,改为“日志模式”,确认是规则误杀。
然后查看攻击日志中的命中记录,把对应规则设置为仅记录或关闭。
记得检查Nginx配置语法nginx -t,错误时执行systemctl reload nginx恢复最后正确的配置。

如果你正在处理WAF配置拦截海外SQL注入、XSS跨站恶意攻击,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。
日常运维中记得定期查看WAF日志和规则库更新,才能让防护不落空。

分享到:
上一篇
自动化脚本定期扫描容器镜像安全巡检漏洞
下一篇
磁盘阵列RAID保障跨境站点数据安全
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意