网站被挂马后先别急着删文件,按这四步清理并加固

网站被挂马后,最忌讳的是直接进后台删文件或急着重装系统。
正确顺序是:先隔离风险、保留现场,再定位被篡改的文件和入侵入口,清理后修补漏洞,最后验证是否还有残留。
下面按实际操作顺序说明,适用于常见 Linux 虚拟主机或云服务器环境。

先确认是不是真的被挂马

挂马不一定表现为网站打不开。
常见现象包括:

  • 浏览器访问正常页面时被跳转到陌生博彩、色情站点;
  • 搜索结果里网站标题或描述被替换成无关内容;
  • 页面底部出现隐藏 iframe 或加密脚本;
  • 服务器上出现陌生进程、异常外联或定时任务。

确认方法:用 curl -I 查看首页响应头是否被插入跳转,用浏览器开发者工具查看页面源码里是否有可疑脚本。
如果只有部分页面异常,记录具体 URL 和出现时间,后面查日志时用得上。

隔离访问并保留现场

确认被挂马后,先阻止恶意内容继续对外传播,但不要马上删除文件。

建议操作:

  1. 在 Nginx 或 Apache 配置中临时将站点返回 503,或修改 DNS 指向维护页;
  2. 对网站目录和数据库做一次完整备份,备份文件放到非网站目录下;
  3. 记录当前时间、异常页面 URL、服务器登录记录。

如果服务器 SSH 密码可能泄露,先修改密码并检查 ~/.ssh/authorized_keys 是否有陌生公钥。
不要在这一步直接重装,否则日志和文件时间证据会丢失。

定位被篡改的文件和入侵入口

挂马文件通常有迹可循。
按文件修改时间排序是较快的方式:

find /www/wwwroot/你的站点目录 -type f -mtime -7 -name "*.php" -o -name "*.js" | head -50

重点查看近期被修改的 .php、.js、.html 文件,尤其是 index.php、header.php、footer.php 这类公共文件。
恶意代码常见形式包括 eval(base64_decode(...))、assert($_POST[...])、隐藏 iframe 和陌生跳转脚本。

同时检查 Web 访问日志,寻找可疑请求:

grep -Ei "eval|base64|assert|shell|cmd" /www/wwwlogs/你的站点日志.log | tail -100

如果日志中出现大量向陌生 IP 发起的 POST 请求,或访问了不存在的 .php 文件却返回 200,说明可能存在后门。
还需要检查定时任务和启动项:

crontab -l
ls -la /etc/cron.d/

发现陌生任务先记录内容,不要直接删除,后面清理时再统一处理。

清理后门并修补入口

清理时不要只删除表面恶意代码,要找到入口。
常见入口包括:

  • 后台弱口令被爆破;
  • 上传功能未限制文件类型;
  • 插件或主题存在已知漏洞;
  • 服务器目录权限过宽,例如 777。

操作顺序建议:

  1. 将确认被篡改的文件用备份中的干净版本替换,没有备份的从官方安装包重新提取;
  2. 删除陌生 PHP 文件、异常定时任务和可疑 SSH 公钥;
  3. 修改网站后台、数据库、SSH 的密码,密码使用独立强口令;
  4. 将网站目录权限收紧为文件 644、目录 755,上传目录禁止执行 PHP;
  5. 升级 CMS、插件和主题到当前稳定版本,无法确认安全的插件先停用。

如果使用宝塔面板,可在“网站”设置中检查“网站目录”权限,并在“计划任务”中核对是否有陌生任务。

清理后如何验证是否恢复

清理完成不等于结束。
恢复访问前做以下检查:

  • 用浏览器无痕模式访问首页和几个内页,确认没有跳转和陌生脚本;
  • 用 grep -r "eval\|base64_decode\|iframe" 网站目录 再扫一遍是否还有残留;
  • 查看 ps aux 和 ss -tunp,确认没有陌生进程和外联连接;
  • 观察 24 到 48 小时访问日志,确认没有再次出现异常请求。

如果条件允许,恢复访问后先保持监控,不要立即关闭维护页。
确认稳定后再恢复正常访问。

常见疑问

挂马后一定要重装系统吗?
不一定。如果后门已清理、入口已修补、日志无异常,可以先观察。但如果发现 rootkit、陌生系统进程或无法确认的提权迹象,重装并恢复干净数据更稳妥。

只删除恶意代码为什么还会复发?
因为入口没堵住。弱口令、旧插件或上传漏洞还在,攻击者可以再次写入。清理必须和修补入口一起做。

没有备份怎么办?
优先从官方安装包恢复核心文件,再逐个对比异常文件。数据库内容需要人工检查是否被插入恶意链接,不要直接整库回滚到未知状态。

网站被挂马后,处理重点是隔离、取证、清入口和验证,而不是单纯删文件。
按上述顺序操作,可以降低二次感染和数据丢失的风险。

分享到:
上一篇
服务器中毒了怎么处理:先隔离取证,再清理加固
下一篇
隐藏服务器真实IP的几种做法与验证方法
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意