适合对象:任何运营 WordPress 站点的人。这里不含攻击步骤——这是一份用于加固的可上手实务参考:按优先级排序的检查清单、分领域指南和自我验证。跨框架的整体图景,见 按框架分类的安全入口。
按优先级排序的加固检查清单
从上往下逐条落实这张表。P0 是最高优先级,P1 是最高频的事故来源,P2 是持续的日常维护。
P0 ── 前提(先做这个)
自动更新 / 删除不用的插件与主题 / 强管理员 + 2FA
P1 ── 最高频的事故来源
插件最小化 / 降低管理后台暴露 / 可恢复的备份
P2 ── 日常维护
wp-config 与密钥 / 文件权限 / HTTPS、响应头、PHP/依赖的更新
| 优先级 | 控制项 | 具体做法(WordPress) |
|---|---|---|
| P0 | 自动更新 | 为核心、插件、主题启用自动更新。大版本更新前先备份 |
| P0 | 删除不用的 | 删除不用的插件/主题,别只是停用(残留文件仍是攻击目标) |
| P0 | 强管理员 + 2FA | 强密码 + 双因素。避免使用 admin 用户名;角色最小权限 |
| P1 | 插件最小化 | 安装前审查更新频率、采用规模、已知 CVE。保持数量精简 |
| P1 | 保护登录 | 登录尝试次数限制。限制 wp-admin/wp-login.php 的暴露 |
| P1 | 降低暴露 | 不用则限制 xmlrpc.php。抑制 REST API 的用户枚举 |
| P1 | 备份 | 离线/异地的可恢复备份 + 恢复演练 + 篡改检测 |
| P2 | wp-config 与密钥 | 设置认证密钥/盐值,保护 wp-config.php,生产环境禁用调试显示 |
| P2 | 文件权限 | 约 644 文件 / 755 目录。在上传目录中禁止 PHP 执行 |
| P2 | HTTPS/响应头/更新 | 强制 HTTPS、HSTS 等。让 PHP/数据库保持在受支持的版本上 |
1. 更新(最重要的防御)
对 WordPress 的攻击大多是自动化工具大规模利用某个已公开的已知漏洞(CVE)。 所以更新速度是你最大的防御。
- 为核心、插件和主题启用自动更新,让已公开的漏洞在被利用之前得到修复。
- 对重要站点,在**预演环境(staging)**中验证大版本更新,并在更新前先备份。
- 拖延更新,就会给自动化攻击留下入侵途径。别想着「以后再做」。
2. 插件和主题(攻击面)
第三方代码的漏洞是最常见的入侵途径。关键是保持数量精简,绝不放任不管。
- 对任何不用的东西,删除而非停用(停用的文件仍可能成为攻击目标)。
- 安装前,检查更新频率、采用规模、最近更新日期和已知 CVE。 避开已被弃维护的。
- 你可以用 CVE/KEV 查询 检查插件的 CVE。扩展越少,意味着更新责任越轻、攻击面越小。
3. 管理员账户与认证
大多数账户接管,都是针对弱口令/复用管理员账户的暴力破解,或对泄露密码的复用。
常见(危险)
- 用户名
admin+ 弱密码 + 没有 2FA - 所有人都是管理员(没有角色区分)
- 登录尝试次数不受限
wp-admin从任何地方都能访问
正确
- 强密码 + 2FA,用户名不用
admin - 最小权限角色(恰当使用编辑者/作者)
- 登录尝试次数限制(遏制暴力破解)
- 尽可能限制
wp-admin/wp-login.php的访问来源
如何选择 2FA,见 什么是 2FA;瞄准管理员的路径,见 什么是钓鱼攻击。
4. 降低暴露(管理面与信息泄露)
攻击者会先寻找可以用来入侵的地方。砍掉不用的功能和不必要的信息泄露。
- 加上登录尝试次数限制,削弱暴力破解的有效性。
- 不用则限制
xmlrpc.php(它可能被滥用来加速暴力破解、发送大量请求)。 - 抑制 REST API 的用户枚举(防止通过
?author=等泄露管理员名)。 - 禁用目录列表,减少不必要的版本信息泄露。
- 从管理后台禁用文件编辑(
DISALLOW_FILE_EDIT),让入侵后的篡改更难得逞。
5. wp-config 与密钥(P2)
- 设置唯一的认证密钥/盐值,并以恰当权限保护
wp-config.php(绝不让它对所有人可读)。 - 把数据库凭据之类的密钥挡在公开面之外。别把备份或导出文件留在公开目录里(→ 别把密钥放进公开目录)。
- 在生产环境中禁用调试显示(
WP_DEBUG_DISPLAY关闭)。别通过报错泄露内部信息。
6. 文件与上传(P2)
- 文件权限大致为644 文件 / 755 目录,
wp-config.php更严。绝不让任何东西对所有人可写。 - 不允许在上传目录中执行 PHP(防 Web Shell)。校验上传的类型和大小。
- 用篡改检测(文件变更监控)尽早发现入侵后的改动。
7. HTTPS、响应头、备份(P2)
- 强制 HTTPS + HSTS。 解决混合内容问题。
- 添加安全响应头(用 安全响应头检测 检查你自己的站点)。
- 保持离线/不可篡改的备份 + 恢复演练,让你能真正恢复(→ 备份要点)。这是从勒索软件和篡改中恢复的最后手段。
8. 托管与依赖(P1–P2)
- 让 PHP 和数据库保持在受支持的版本上。 别把已到 EOL 的版本一直摆着不管。
- 了解你的托管环境的补丁状态(在共享托管上,这还包括服务商的响应)。
- WAF 只是补充。先做好基础措施(更新、最小化、认证、备份)。
验证:你的 WordPress 真的加固了吗?
搭好了并不算完——只有检查过才算完成。以下是针对你自己站点的防御性自查。
密钥和配置没有暴露
/wp-config.php 不会返回其内容,且备份(.zip/.sql)或 .env 类文件无法通过 URL 获取。管理员名和版本没有泄露
?author=1 之类不会暴露管理员用户名,且目录列表已关闭。登录保护和 2FA 生效
admin 用户。更新、备份、响应头
这四项检查告诉你站点是否已经加固。如果你已经怀疑站点被篡改或被控制,请看 如何检查网站或服务器是否被入侵。
本站观点:别装太多插件,也别放任不管
对 WordPress 真正有效的,不是特殊的配置,而是「别过度添加扩展、别放任不管」这条运维纪律。 插件很方便,但每加一个都会多一份持续更新的责任。重点是把上面这张表从上往下逐条落实:把更新自动化、把插件保持最少、用强认证和可恢复的备份来防御。看起来是 WordPress 专属,实际上是适用于任何技术的基础措施(更新依赖、尽量减少公开内容、认证、恢复)。
延伸阅读
- 入口:按框架分类的安全 · Laravel 安全
- 检查入侵:如何检查网站或服务器是否被入侵
- 实务:漏洞响应实操手册 · 备份要点
- 密钥/认证:别把密钥放进公开目录 · 什么是 2FA · 什么是钓鱼攻击
- 快讯:WordPress 7.1.4 漏洞 CVE-2026-119977(更新窗口期 RCE,自动更新与版本检查)
- 工具:安全响应头检测 · CVE/KEV 查询
来源与确认范围
以下原始资料支持上文的配置、影响范围或应对措施,链接于2026年10月23日确认。请核对资料中的版本和配置条件。清单优先级及经验是本站的整理,不代表全文重新核验或安全保证。