8 月 16 日消息,WordPress 近日发布 7.0.3 安全更新,修复了一项存在于核心登录页面中的高风险跨站脚本漏洞 “XSS2Shell”(编号 CVE-2026-64638)。该漏洞目前已遭黑客大规模利用,遍布全球 67 个国家地区、超 1.1 万个网站受影响。

一、漏洞原理:登录页错误提示成了”突破口”
“XSS2Shell” 漏洞存在于 WordPress 登录流程中:
- 当用户使用不存在的账号名称尝试登录时,WordPress 会将输入内容带入错误提示信息;
- 由于前后两道 HTML 过滤机制对异常标签的解析方式存在差异,原本应该被过滤掉的恶意内容可能被保留下来;
- 这些内容被浏览器解析为有效的 HTML 元素,从而形成跨站脚本攻击(XSS)。
一句话:攻击者往登录框里输一个”坏账号名”,WordPress 把它弹回错误提示时,恶意代码就悄悄执行了。
二、为什么叫”XSS2Shell”?攻击链有多长?
仅靠这个 XSS 漏洞并不能直接控制服务器。攻击者还需要进一步利用:
- WordPress 登录页面现有的 JavaScript;
- REST API 接口;
- 浏览器允许同一网站来源页面相互访问的机制(Same-Origin)。
攻击者在受害网站的域名下执行由攻击者控制的操作,完整攻击链如下:
| 阶段 | 操作 |
|---|---|
| ① 触发 XSS | 恶意登录名绕过 HTML 过滤,在浏览器中执行恶意 JS |
| ② 借用登录状态 | 如果受害者已以管理员身份登录,攻击者借用其现有登录状态执行管理操作 |
| ③ 窃取应用密码 | 获取 WordPress 应用程序密码(Application Password) |
| ④ 植入恶意页面 | 利用权限创建包含恶意 JavaScript 的页面 |
| ⑤ 上传恶意插件 | 上传包含 PHP 代码的恶意插件 |
| ⑥ 服务器端代码执行 | 最终在服务器上执行代码(RCE) |
⚠️ 注意:完整攻击链仍需结合社会工程学钓鱼——诱导已登录且拥有足够权限的管理员访问或操作恶意内容,才能从登录页 XSS 扩大至服务器端代码执行。也就是说:管理员点一下”恶意链接”,整个服务器就没了。
三、影响范围:所有版本 + 大规模利用
| 维度 | 数据 |
|---|---|
| 影响范围 | 所有 WordPress 版本 |
| 已利用情况 | 大规模在野利用 |
| 受影响规模 | 全球 67 个国家地区、超 1.1 万个网站 |
| 修复版本 | WordPress 7.0.3(7.0 系列用户尽快升级) |
四、站长必做的 4 件事
① 立即升级到 7.0.3
后台升级:
wp-admin → 更新 → 立即更新 WordPress 7.0.3
命令行升级(宝塔/SSH):
wp core update
升级后确认版本:
wp core version
# 应输出 7.0.3
② 检查异常管理员账号
攻击者可能已经创建了后门管理员账号,请检查:
-- 在 phpMyAdmin 或命令行执行
SELECT user_login, user_email, user_registered
FROM wp_users
WHERE user_login NOT IN ('admin', '你的管理员账号');
③ 检查应用程序密码
攻击链会获取 WordPress 应用密码,检查:
- 进入
wp-admin → 用户 → 个人资料; - 滚动到”应用程序密码”区域;
- 如果存在不认识的应用程序密码,立即删除。
④ 检查插件安装记录
攻击者会上传恶意插件,检查:
wp-admin → 插件是否有不认识的插件;- 服务器
wp-content/plugins/目录是否有可疑新目录; - 检查文件修改时间:
find /www/wwwroot/你的站点/wp-content/plugins -mtime -7 -type d
五、写在最后
“XSS2Shell” 这个名字本身就说明了一切:从一个 XSS 开始,一路打到 Shell(服务器控制权)。
这次事件最值得警惕的点:
- 影响所有版本——不是老版本专属,全新安装也一样中招;
- 全球 67 国 1.1 万+ 网站在野被利用——说明攻击者已经在大规模扫描利用;
- 攻击链完整——从登录页 XSS 到 RCE,配合钓鱼就能拿下整个服务器。
站长今天就要做两件事:升级到 7.0.3 + 检查后台有没有多出来的管理员账号/应用密码/插件。
如果已经中招,先断网取证,再找专业安全团队排查。
