WordPress

如何恢复被入侵的 WordPress 网站:分步指南

发现垃圾页面、奇怪的跳转,或收到了 Google 的安全警告?这里有一套冷静而有序的方案,教你清理被入侵的 WordPress 网站并保持干净。

作者:Zebra Hosting Cloud

发现你的 WordPress 网站被入侵令人焦虑,但一套清晰的计划能让问题变得可控。目标是控制损失、清除恶意代码、堵住让攻击者进来的漏洞,然后确认网站已经干净。跳过第三步,是网站在几天内再次被入侵的最常见原因。

网站可能已被入侵的迹象

  • 访客被重定向到无关或可疑的网站,尤其是在手机上或从搜索结果进入时。
  • 搜索结果中出现你域名下的日文或药品垃圾页面。
  • 浏览器或 Google 警告该网站存在危险。
  • 出现你没有创建的新管理员账户。
  • 主机商暂停了你的账户,或报告有垃圾邮件外发。
  • 出现名称随机的文件,或你没有动过却最近被修改的文件。

其中有些情况可能有无害的解释,所以在往最坏处想之前请先确认,但一旦发现确凿证据,就要迅速行动。

立即行动:保存快照并加以控制

在改动任何内容之前,先完整复制一份文件和数据库,即使它已被感染。这样既能保留用于查明攻击者入侵方式的证据,也能在某个清理步骤出错时为你提供退路。把它保存在离线位置,以免日后误将其恢复。

控制问题

如果网站正在传播恶意软件或垃圾内容,请在处理期间放上简单的维护页面或限制访问。联系你的主机服务商;他们往往能看到服务器上发生了什么,并可能协助隔离该账户。同时更改重要的密码:主机控制面板、FTP 或 SFTP 账户、数据库用户以及 WordPress 管理员账户。请在一台干净的电脑上操作。

恢复还是清理

你有两种大的选择。

  • 从干净的备份恢复。如果你有入侵之前的备份,这通常最快。恢复之后,立即更新所有内容并修复入口漏洞,否则攻击者还会回来。
  • 手动清理。如果没有干净的备份,你需要手动或借助扫描工具删除恶意文件和数据库条目。

要谨慎判断该回溯到多久以前。攻击者有时会潜伏数周才动手。

手动清理清单

  1. 用同版本或更新版本的全新下载包替换 WordPress 核心文件。暂时不要动 wp-config.php 和 wp-content。
  2. 删除所有插件和主题,然后从可信来源重新安装全新的版本。不需要的就舍弃。
  3. 检查 wp-content/uploads 文件夹。里面应该是媒体文件,而不是 PHP 文件。
  4. 检查 wp-config.php 和 .htaccess 中是否有你不认识的代码。
  5. 审查用户并删除不明的管理员。
  6. 在数据库中搜索文章、选项和小工具里被注入的脚本。
  7. 在 wp-config.php 中生成新的密钥和盐值,这会使所有人退出登录。
  8. 检查计划任务中是否有陌生条目,因为攻击者常用它们来重新感染网站。

找到入口并验证

常见的入口包括:过时的插件或主题、盗版扩展、薄弱或重复使用的密码,或同一账户下另一个被入侵的网站。检查访问日志,查看首次改动前后是否有可疑请求。更新所有内容,删除无人维护的部分,并启用双因素认证。如果你在一个账户下托管了多个网站,请逐一检查,因为恶意软件会横向扩散。

验证并申请复审

用恶意软件扫描器重新扫描网站,从不同设备浏览,并检查跳转和垃圾页面是否已消失。如果 Google 或浏览器标记了该网站,在你确信已经干净之后,请通过 Google Search Console 申请复审。同时检查你的邮箱域名是否被用来发送垃圾邮件。

加固,避免再次发生

逐项完成一份加固清单:保持软件更新、使用最小权限角色、限制登录尝试次数、禁用后台文件编辑,并保留经过测试的服务器外备份。我们的 WordPress 安全加固清单涵盖了这每一项。也可以考虑使用 Web 应用防火墙,它能在许多攻击尝试到达 WordPress 之前将其拦截。

要避免的错误,以及何时寻求帮助

  • 不要只删除看得见的症状就指望万事大吉。后门通常藏在别的地方。
  • 不要在不删除旧文件的情况下直接覆盖重装到被感染的文件上。
  • 不要向任何主动联系你、声称能修复你网站的人付款。
  • 不要忽视同一主机账户下的其他网站。

何时寻求专业帮助

如果网站对你的业务至关重要,如果你处理客户数据,或者清理一再失败,请找专业人士。还要考虑是否有个人数据泄露;根据你所在的地区,可能有通报义务。请查阅适用于你的规定,或咨询合格的顾问。

恢复之后,在接下来的几周里持续留意网站。注意新增文件、意外的用户和异常流量,并保留日志。如果遗漏了后门,再次感染通常在几天内就会出现,因此早期监控是值得的。

我们能提供的帮助

采用 Plesk、Cloudflare CDN 和免费 SSL 的主机,能为你提供更稳固的起点,我们的团队也可以解答有关恢复和保护网站的问题。如果你需要一个全新、干净的开始,我们的 WordPress 迁移服务可以免费将清理后的网站迁移到 WordPress 主机。