Z-Blog 网站被挂马(暗链)后的 5 步清理与加固实录

· zblog · 阅读 6
摘要

先说结论:发现被挂马后不要急着重装。正确顺序是「保留证据 → 定位入口 → 清理 → 换钥匙 → 加固监控」。跳过取证直接删文件,下一次还会被挂回来。 第一步:确认现象与范围 搜索结果标题被改写、出现赌博/医疗关键词 → 典型暗链。 用 c

先说结论:发现被挂马后不要急着重装。正确顺序是「保留证据 → 定位入口 → 清理 → 换钥匙 → 加固监控」。跳过取证直接删文件,下一次还会被挂回来。

第一步:确认现象与范围

  • 搜索结果标题被改写、出现赌博/医疗关键词 → 典型暗链。
  • 用 curl 抓首页源码,与浏览器看到的对比;很多马只对搜索引擎 UA 输出,对普通访问者不可见。
  • 对比首页源码与模板文件,判断是数据库注入还是模板被改。

第二步:定位入口

  1. 查访问日志里异常 POST 请求,尤其是 zb_system、上传目录、插件目录的可疑访问。
  2. 用文件修改时间排序排查:find . -type f -mtime -30 -name "*.php",被改的文件时间会集中在一起。
  3. 重点看上传目录、缓存目录、主题与插件目录是否出现 .php 文件——这些位置本不该有可执行脚本。

第三步:清理

  • 删除非预期 .php 文件;恢复被改写模板(用干净备份或官方包对比)。
  • 检查数据库文章表是否有注入的隐藏 div/script。
  • 清理缓存目录,防止旧缓存继续输出暗链。

第四步:换掉全部凭证

这是最容易被跳过、也最关键的一步:后台密码、FTP/SFTP 密码、数据库密码、面板登录密码全部更换;如果主机商支持,重置所有密钥并踢掉在线会话。

第五步:加固与监控

  • 上传目录禁止执行 PHP(Nginx 用 location 拦截 .php)。
  • 后台开启登录验证码,限制登录失败次数。
  • 定期比对核心文件哈希,异常即告警。
  • 保留最近 7 天备份,并确认备份可恢复(很多人的备份从没验证过)。

最后提醒:挂马往往不是单次事件,而是弱口令/老版本漏洞被批量扫到。把「换钥匙 + 上传目录禁执行」做到位,复挂率会大幅下降。