近期经常碰到新的wordpress高级黑,不是简单的上传恶意文件,而是伪装插件,加上SQL注入,安全插件都无法识别。
被黑的症状:如下,这个外贸独立站用户反馈,1. 网站加载后,提示人类验证,这是一个伪装成cloudflare的验证,诱导用户下载不明程序,让你的外贸网站变成黑客帮凶。
2.管理员登陆后台后,前台就不会再出现了。

如果你的 WordPress 网站出现性能骤降、未知管理员账户、或服务器资源异常占用,极有可能已经植入了伪装成「缓存优化插件」的高级后门木马。
文章目录
Toggle一、什么是 WordPress 高级后门(Advanced Webshell)
与传统一句话木马不同,现代 WordPress 后门通常具备以下特征:
- 深度伪装:文件头标注为
Filesystem Abstraction Layer或Cache Engineering,类名模仿 WordPress 官方风格。 - 字符串混淆:大量使用
chr()、XOR 运算、十六进制编码,躲避静态扫描。 - 多节点持久化:不仅写入
mu-plugins,还会感染advanced-cache.php、db.php、object-cache.php等 Drop-in 文件。 - 数据库寄生:将完整恶意代码以 base64 形式存入
wp_options及各 meta 表,实现文件删除后的自我恢复。 - 信息窃取:拦截
authenticate与after_password_reset钩子,加密记录所有登录凭证。
二、恶意代码核心能力清单
| 功能模块 | 技术实现 | 风险等级 |
|---|---|---|
| 远程命令执行 | shell_exec / exec / system | 🔴 极高 |
| 任意 PHP 执行 | eval($_POST['code']) | 🔴 极高 |
| 数据库操控 | 直接执行自定义 SQL | 🔴 极高 |
| 文件管理 | 读写删任意服务器文件 | 🔴 极高 |
| 隐藏管理员 | 创建 sitereview 等隐身账户 | 🔴 极高 |
| 密码窃取 | 伪装成 .jpg 写入 uploads 目录 | 🟠 高 |
| 自我更新 | 通过 mode=u 远程覆写自身 | 🟠 高 |
| 自动登录 | HMAC 签名绕过认证 | 🟠 高 |
三、数据库排查:SQL 检测脚本
以下 SQL 可直接在 phpMyAdmin 或 MySQL 命令行执行。执行前务必先导出备份。
3.1 检测 wp_options 中的恶意存储
SELECT option_name,
LENGTH(option_value) AS data_length,
LEFT(option_value, 80) AS preview
FROM wp_options
WHERE option_name LIKE '%site_compatibility%'
OR option_name LIKE '%_wph_%'
OR option_name LIKE '%_bcdata%'
OR option_name LIKE '%_bcmeta%'
OR option_name LIKE '%_pcache%'
OR option_name LIKE '%_uprefs%'
OR option_name LIKE '%_torder%'
OR option_name LIKE '%_cstatus%'
OR option_name LIKE '%_av_backup%'
OR option_name LIKE '%_wcfg%'
ORDER BY data_length DESC;
判断标准:若 data_length 超过 5,000 且 preview 以 YToy、aHR0 等 base64 特征开头,即可判定为恶意代码存储。
3.2 查找隐藏管理员账户
SELECT ID, user_login, user_email, user_registered, display_name
FROM wp_users
WHERE user_login = 'sitereview'
OR user_login LIKE '%support%'
OR user_email LIKE '%sitereview%'
ORDER BY user_registered DESC;
若发现异常用户,进一步核查其权限:
SELECT user_id, meta_key, meta_value
FROM wp_usermeta
WHERE user_id IN (
SELECT ID FROM wp_users WHERE user_login = 'sitereview'
);

3.3 扫描各 Meta 表的寄生数据
-- wp_postmeta
SELECT post_id, meta_key, LENGTH(meta_value) AS len
FROM wp_postmeta
WHERE meta_key LIKE '%site_compatibility%'
OR meta_key LIKE '%_wph_%'
OR LENGTH(meta_value) > 3000;
-- wp_usermeta
SELECT user_id, meta_key, LENGTH(meta_value) AS len
FROM wp_usermeta
WHERE meta_key LIKE '%site_compatibility%'
OR meta_key LIKE '%_wph_%'
OR LENGTH(meta_value) > 3000;
-- wp_termmeta
SELECT term_id, meta_key, LENGTH(meta_value) AS len
FROM wp_termmeta
WHERE meta_key LIKE '%site_compatibility%'
OR meta_key LIKE '%_wph_%'
OR LENGTH(meta_value) > 3000;
-- wp_commentmeta
SELECT comment_id, meta_key, LENGTH(meta_value) AS len
FROM wp_commentmeta
WHERE meta_key LIKE '%site_compatibility%'
OR meta_key LIKE '%_wph_%'
OR LENGTH(meta_value) > 3000;
3.4 检查可疑 Transient 与 Cron
SELECT option_name, option_value
FROM wp_options
WHERE option_name LIKE '_transient_%wph%'
OR option_name LIKE '_transient_%site_compatibility%'
OR option_name LIKE '_transient_timeout_%wph%';
四、文件系统排查清单
数据库清理必须与文件清理同步进行,否则后门会通过数据库中的备份代码自动重建文件。
- MU-Plugins 目录:
wp-content/mu-plugins/下的可疑 PHP 文件(如revision-cleaner.php、security-headers-mgr.php)。 - 伪装图片:
wp-content/uploads/YYYY/MM/gallery-thumb-*.jpg,实际内容为 base64 加密数据。 - Drop-in 文件:
wp-content/advanced-cache.phpwp-content/db.phpwp-content/object-cache.php
- 散落文件:
wp-content/uploads/locale-handler.phpwp-content/languages/capability-cache.phpwp-content/cache/oEmbed-handler.phpwp-content/fonts/feed-handler.phpwp-content/upgrade/export-helper.php
- wp-config.php:检查是否被注入
define('WP_CACHE', true);



五、一键清理 SQL(确认后执行)
以下清理脚本会删除恶意选项、meta 数据及隐藏用户。执行前必须完成数据库备份。
-- 清理 wp_options 恶意选项
DELETE FROM wp_options
WHERE option_name LIKE '%site_compatibility%'
OR option_name LIKE '%_wph_%'
OR option_name LIKE '%_bcdata%'
OR option_name LIKE '%_bcmeta%'
OR option_name LIKE '%_pcache%'
OR option_name LIKE '%_uprefs%'
OR option_name LIKE '%_torder%'
OR option_name LIKE '%_cstatus%'
OR option_name LIKE '%_av_backup%'
OR option_name LIKE '%_wcfg%';
-- 清理各 meta 表
DELETE FROM wp_postmeta WHERE meta_key LIKE '%site_compatibility%' OR meta_key LIKE '%_wph_%';
DELETE FROM wp_usermeta WHERE meta_key LIKE '%site_compatibility%' OR meta_key LIKE '%_wph_%';
DELETE FROM wp_termmeta WHERE meta_key LIKE '%site_compatibility%' OR meta_key LIKE '%_wph_%';
DELETE FROM wp_commentmeta WHERE meta_key LIKE '%site_compatibility%' OR meta_key LIKE '%_wph_%';
-- 删除隐藏用户(请先确认 user_id)
-- DELETE FROM wp_usermeta WHERE user_id = 999;
-- DELETE FROM wp_users WHERE ID = 999;
六、清理后的加固措施
- 重置所有凭证:WordPress 管理员密码、数据库密码、服务器 SSH/FTP 密码。
- 重装 WordPress 核心:保留
wp-content/uploads、wp-content/themes(需审计)和wp-config.php,其余核心文件从官方包覆盖。 - 审计主题与插件:检查最近 30 天内修改过的文件,排查供应链攻击。
- 限制文件写入权限:将
wp-content/uploads以外的目录设为不可写(644或755)。 - 安装安全插件:推荐使用 Wordfence 或 Sucuri Scanner 进行全盘扫描与实时监控。
- 启用 Web 应用防火墙(WAF):拦截常见的文件上传与代码执行漏洞利用。
七、总结
现代 WordPress 后门早已不是简单的一句话木马,而是具备多节点持久化、数据库寄生、自我恢复、信息窃取等高级特性的完整 Webshell 框架。仅靠删除单个文件无法根除,必须结合数据库 SQL 排查、文件系统审计与权限加固,才能彻底恢复网站安全。
如果你发现本文提到的 sitereview 用户或 revision-cleaner.php 类文件,请立即按照上述步骤执行隔离与清理,避免造成更严重的数据泄露与服务器沦陷。
需要外贸独立站建站或 GEO 优化服务?美络云科技(Mloun)提供 WordPress 外贸独立站建站、WooCommerce 跨境商城、海外 SEO 与 GEO 生成式引擎优化一站式服务,服务覆盖全球 25% 的国家和地区。