某天早上打开后台,发现流量曲线像坐了火箭、服务器 CPU 直接 100%、网站要么打不开、要么被人挂了奇怪的弹窗——这种”心脏停跳”的时刻,做站长的迟早要遇到一次。
慌没用。网站被攻击也不是玄学,它通常能分成”先判断”和”再处置”两步。下面用问答的方式,把站长最常踩的坑一个个讲透。
Q1:怎么判断我是被攻击了,还是自己代码又出 bug 了?
先别急着甩锅给黑客,先分清楚症状:
- 像攻击:流量短时间内暴涨几倍、来源 IP 高度集中、带宽或 CPU 被打满、大量 404/奇怪的请求路径。
- 像 bug:只有某个功能报错、特定操作才崩、日志里是空指针/超时而不是海量请求。
判定的工具箱:access.log 看请求来源和路径、netstat -an 看连接数、服务器监控看 CPU/带宽曲线,云厂商或 CDN 的”攻击告警”基本会直接告诉你。
Q2:遇到 DDoS / CC 流量攻击怎么办?
流量型攻击的核心思路就一句:别让攻击流量打到你的源站。
▲ 把攻击流量挡在边缘,源站才扛得住
- 上 CDN / 高防 IP:Cloudflare(免费档带基础防护)、阿里云 DDoS 高防、腾讯云盾,都能在边缘做流量清洗。
- 限制单 IP 频率:Nginx 用
limit_req_zone给单个 IP 限流,CC 攻击一下就软了。 - 临时封禁异常段:从日志里揪出集中来源的 IP 段,防火墙先 ban 掉再说。
- 升级带宽/弹性防护:真被打到带宽上限,短期只能加防御套餐扛过去。
Q3:被暴力破解(SSH / 后台 / 数据库)怎么办?
- SSH:改掉默认 22 端口、禁用密码登录改用密钥、装
fail2ban自动封禁多次失败 IP。 - 后台:加图形验证码、限制登录尝试次数、后台路径别用
/admin这种一眼货。 - 防火墙:只开放必要端口,数据库端口千万别暴露在公网。
Q4:网站被挂马 / 页面被篡改怎么办?
第一步:立刻切维护页或临时下线,保留现场日志,别急着删东西——删了就失去溯源线索了。
- 用
find /path -mtime -1找出最近被修改的文件,挂马往往就藏在这里; - 拿干净备份比对、还原被改的文件;
- 修掉入口漏洞(上传点、注入、弱口令),所有密码全部改一遍;
- 扫一遍后门和计划任务,防止对方留了”后门钥匙”。
Q5:被 SQL 注入 / XSS 怎么办?
- 所有数据库查询走参数化 / 预编译,别拼 SQL 字符串;
- 用户输入做校验和过滤,页面输出做转义;
- 直接上 WAF(阿里云/腾讯云 WAF、Cloudflare WAF),规则库能挡掉一大半常见注入。
Q6:数据泄露 / 被拖库怎么办?
- 立即改密、作废相关凭证,必要时通知受影响用户(很多地区这是合规硬性要求);
- 查日志定位泄露入口,堵上后再恢复服务;
- 密码务必加盐哈希存储,明文或弱加密就是给黑客送快递。
Q7:日常怎么防,别等出事才慌?
▲ 平时把监控和告警搭好,出事才能第一时间发现
- 备份是底线:定期异地备份,而且要验证能恢复,不是存了就完事;
- 最小权限 + 及时打补丁:别用 root 跑业务,漏洞一出来就升;
- 监控 + WAF + 高防 三件套常驻,告警设好阈值;
- 记住:弱口令是头号漏洞,八成入侵都是从猜密码开始的。
写在最后
网站被攻击不可怕,可怕的是平时零防护、出事乱阵脚。记住这条主线:先判断类型 → 流量攻击靠边缘清洗、入侵靠隔离溯源 → 最后补全日常防护。把备份、监控、WAF 这三件事做扎实,你已经在 90% 的站长前面了。
如果你在 fenij.com 上也遇到过奇葩的攻击经历,欢迎留言——互相涨涨经验值。
常见问题(FAQ)
网站被攻击有哪些常见表现?
典型表现包括:流量与 CPU 突然暴涨、后台被篡改或无法登录、首页被挂马/弹窗、数据库被拖库、页面被植入外链,以及被浏览器或搜索引擎标记为”危险网站”导致用户无法访问。
网站被攻击后第一时间该做什么?
立刻切维护模式或临时断网止损,修改所有账号密码,从已知干净的备份恢复,排查并清除后门文件,最后修补漏洞(更新程序、打补丁)。切勿在未清理后门前直接恢复,否则会被反复入侵。
网站被黑后怎么向 Google 申请恢复?
彻底清除恶意代码与后门后,在 Google Search Console 的”安全问题”中提交重新审核请求,并申请移除”危险网站”标记。确认站点干净且不再投放恶意内容,通常数天到数周内可解除警示。
怎么预防网站被攻击?
及时更新核心/插件/主题,使用强密码并开启两步验证,限制后台登录尝试次数,定期异地备份,部署 WAF 或 CDN 隐藏源站,并最小化文件可写权限。