IPBUF安全漏洞报告
English
CVE-2026-6399 CVSS 4.4 中危

CVE-2026-6399 WordPress General Options插件存储型XSS漏洞

披露日期: 2026-05-20

漏洞信息

漏洞编号
CVE-2026-6399
漏洞类型
存储型跨站脚本 (Stored XSS)
CVSS评分
4.4 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
WordPress General Options Plugin

相关标签

XSSWordPressStored XSSGeneral OptionsCWE-79

漏洞概述

WordPress General Options插件在1.1.0及以下版本中存在存储型跨站脚本(XSS)漏洞。该漏洞源于在“联系号码”字段中使用了sanitize_text_field()函数进行输出转义,该函数虽然能剥离HTML标签,但未对双引号字符进行HTML实体编码。当存储的值在双引号HTML属性中被回显时,攻击者提供的双引号字符会破坏属性上下文。即使WordPress的wp_magic_quotes机制会在引号前添加反斜杠,HTML解析器仍将其视为字面量,导致引号闭合属性。这使得具有管理员权限的认证攻击者能够在管理设置页面中注入任意Web脚本。

技术细节

该漏洞的核心在于输出转义不充分。插件使用sanitize_text_field()处理用户输入的ad_contact_number字段,该函数仅去除HTML标签而不转义双引号。在HTML渲染阶段,数据被插入到value="..."属性中。攻击者输入双引号(")时,尽管WordPress会自动添加反斜杠转义(变为\"),但在HTML解析规则中,反斜杠不是转义字符。因此,\"被解析为字面量反斜杠后跟一个闭合属性的双引号。攻击者借此可以注入如onfocus或onmouseover等JavaScript事件处理器,绕过属性边界,执行任意恶意代码。

攻击链分析

STEP 1
获取权限
攻击者获取WordPress管理员级别或更高级别的账户权限。
STEP 2
访问设置页面
攻击者进入后台,访问General Options插件的设置页面。
STEP 3
注入恶意载荷
攻击者在“联系号码”字段输入包含双引号和JavaScript代码的特制载荷。
STEP 4
持久化存储
插件保存数据,由于输出转义缺陷,恶意载荷被存储在数据库中。
STEP 5
触发漏洞
当管理员再次访问该设置页面时,浏览器解析HTML属性,双引号逃逸导致恶意脚本执行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// PoC for CVE-2026-6399 // Payload to inject into the 'ad_contact_number' field // The double quote breaks out of the HTML attribute context. // WordPress wp_magic_quotes adds a backslash, but HTML parsers render it literally. var payload = '" onfocus="alert(document.cookie)" autofocus="'; /* Reproduction Steps: 1. Log in as Administrator. 2. Navigate to General Options settings page. 3. Input the payload into the 'Contact Number' field. 4. Save the settings. 5. Reload the page to trigger the XSS execution. */

影响范围

WordPress General Options Plugin <= 1.1.0

防御指南

临时缓解措施
建议立即更新插件至修复版本。若无法更新,应暂时禁用插件。开发者需修改代码逻辑,确保所有动态输出到HTML属性的数据都经过严格的实体编码,防止特殊字符破坏HTML结构。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表