删除可见的垃圾页面或单个恶意文件,很少能真正结束一次 WordPress 入侵。攻击者通常会留下多个立足点:隐藏的管理员、被篡改的插件、会重新生成文件的计划任务,或向每个页面注入代码的数据库条目。结构化的 WordPress 恶意软件清理会按顺序逐层处理,然后封堵最初的入侵入口并对网站进行加固。本清单说明一次彻底的清理涵盖哪些内容,便于您规划工作、向服务商说明情况,或核查已完成的工作。
服务简介
恶意软件清理是指从 WordPress 安装及其托管环境中识别并清除恶意代码、未授权访问和持久化机制,然后恢复正常、可信的运行。它涉及四个方面:文件系统(核心、主题、插件、上传内容和配置文件)、数据库(选项、文章、用户以及任何自定义表)、托管账户(FTP/SFTP 用户、cron 任务、同一账户下的其他网站),以及外部服务(DNS、CDN、电子邮件和搜索引擎收录)。只有在根据现有证据尽可能识别出入侵途径并加以封堵之后,这项工作才算完成,否则很可能再次感染。
适用对象
本清单适用于:
- 需要在委托清理之前了解规范清理包括哪些内容的网站所有者
- 维护客户网站、希望建立统一清理标准的代理机构
- 网站曾经被“清理”过但再次被感染的团队
- 需要核实服务商报告是否涵盖所有相关层面的管理者
帮助厘清的问题
逐项完成本清单,有助于厘清:
- 安装中的哪些部分可以用已知可靠的副本替换,哪些需要人工审查
- 隐藏用户或计划任务等持久化机制是否已被清除
- 可能的入侵入口是什么,以及是否已被封堵
- 随后应采取哪些加固措施,以降低再次发生的可能性
包含内容
- 准备:完整备份当前状态,保持较早的备份不变,并记录日期和时间
- 核心文件:用来自官方渠道的同版本全新副本替换 WordPress 核心,待网站稳定后再更新到当前版本
- 插件和主题:从可信来源重新安装;删除任何未使用、已停止维护或来自非官方渠道的内容
- 上传文件夹:检查本应只有媒体文件的位置是否存在可执行文件
- 配置:审查 wp-config.php 以及 .htaccess 等服务器配置文件中是否有被注入的规则或重定向
- 数据库:在选项、文章和小工具中搜索被注入的脚本或陌生 URL
- 用户:逐一审查每位管理员和编辑;删除不明账户,并重置其余账户的密码
- 计划任务:检查 WordPress cron 事件和托管 cron 任务中是否有陌生项目
- 凭据:轮换托管、数据库、SFTP 凭据和 API 密钥,并重新生成 WordPress 安全密钥(salts)
- 入侵入口:更新或删除存在漏洞的组件,修复薄弱的访问控制,并纠正文件权限
- 验证:重新扫描,分别以登录用户和匿名访客身份检查页面,并为任何搜索引擎或浏览器警告申请审核
- 加固:为管理员启用多因素身份验证、限制管理后台访问、安排定期更新,并设置文件变更监控
不包含内容
- 供未经培训的人员在线上网站执行的命令级恶意软件清除说明
- 声称扫描无结果就意味着网站已清理干净
- 关于泄露通知或法律责任的法律判定
- 清理后的持续监控,除非另行约定
适用时机
在完成初步遏制步骤、已备份当前状态并掌控关键账户之后使用本清单。当服务商报告清理已完成时,本清单也可用作验收清单:询问对方涵盖了哪些项目、发现了什么。如果客户个人数据、支付数据或登录信息可能已经泄露,请让负责隐私与法律义务的人员参与。本文仅为一般性信息,不构成法律建议。
我们的方法
由外而内、由已知可靠到未知逐步推进。能替换的部分用干净副本替换,再把审查时间用在您网站独有的内容上:自定义主题、上传文件和数据库内容。记录每一项更改,因为这些记录有助于向利益相关方解释事件,并为后续决策提供依据。在验证完成之前,不要让网站恢复正常流量,并将加固作为工作的一部分来规划,而不是事后补救。我们的 Incident Recovery 服务涵盖遏制、清除恶意代码、后门和未授权用户、安全恢复以及封堵已识别的入侵入口,并提供书面报告和加固建议。当前问题解决后,可另行确定范围开展网站加固工作,处理更广泛的配置、更新规范和访问控制问题。请将清理报告与网站文档一并保存;如果再次出现类似情况,它将很有用。
常见问题
相关文章
立即开始
需要覆盖每一层面的清理?
请告诉我们您观察到的情况、目前已做过哪些更改,以及谁掌控托管和域名。我们将确认书面清理范围。
申请书面范围说明