
CVE-2025-12163: Stored Cross-Site Scripting in Omnipress WordPress Plugin
Omnipress WordPress 插件存储型 XSS 漏洞(CVE-2025-XXXXX) — Omnipress Gutenberg 块插件中存在一个存储型跨站脚本漏洞,允许拥有作者级权限的认证攻击者注入恶意脚本。
在 Omnipress WordPress 插件中发现了一个存储型跨站脚本(XSS)漏洞,允许拥有作者级或更高权限的认证攻击者在页面中注入任意 Web 脚本,当其他用户访问该注入页面时脚本会执行。
发现者: Kai Aizen
发布: 2025年12月
CVSS 分数: 6.4(中等)
CWE: CWE-79 – 网页生成过程中输入中和不当('跨站脚本')
插件: Omnipress – WordPress Gutenberg 块插件
攻击类型: 认证(作者+)存储型跨站脚本
所需权限: 作者级或更高访问权限
Omnipress WordPress 插件在所有版本(包括 1.6.3 及之前版本)中均存在存储型跨站脚本漏洞,原因是对输入清除和输出转义不足。这使得拥有作者级或更高访问权限的认证攻击者能够在页面中注入任意 Web 脚本,当其他用户访问该注入页面时脚本会执行。
该漏洞允许认证攻击者执行以下操作:
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
该漏洞存在于 Omnipress 块编辑器组件对用户输入处理不当之处:
该漏洞可通过以下方式利用:
存在证明该漏洞的概念验证,但为了给补丁和用户更新留出时间,已暂不公开。
需立即采取的措施:
确保 Gutenberg 块中所有用户输入均实施了适当的安全控制:
// Example of proper output escaping in block render
function render_block_content( $attributes ) {
// Escape all user-supplied attributes
$safe_content = esc_html( $attributes['content'] );
$safe_url = esc_url( $attributes['url'] );
$safe_attr = esc_attr( $attributes['customAttr'] );
// Use wp_kses for HTML content with allowed tags
$allowed_html = array(
'a' => array( 'href' => array(), 'title' => array() ),
'strong' => array(),
'em' => array(),
);
$safe_html = wp_kses( $attributes['htmlContent'], $allowed_html );
return sprintf(
'<div class="%s"><a href="%s">%s</a></div>',
$safe_attr,
$safe_url,
$safe_content
);
}
研究人员:
披露流程: 通过 Wordfence 漏洞赏金计划协调
此信息仅用于安全研究和防御目的。恶意利用此漏洞进行攻击的行为是非法的且不道德的。在测试不属于您自己的系统之前,请务必获得适当授权。
关于此漏洞的问题或更多信息:
最后更新:2025年12月
此项目的完整报告、方法论及相关研究请访问:
https://snailsploit.com/security-research/cves/cve-2025-12163/
由 Kai Aizen 创建 — 独立进攻性安全研究员。
snailsploit.com · 研究 · 框架 · GitHub · LinkedIn · ResearchGate · X/Twitter
相同的攻击。不同的基底。
| 指标 | 值 |
|---|
| 攻击向量 | 网络(AV:N) |
| 攻击复杂度 | 低(AC:L) |
| 所需权限 | 低(PR:L) |
| 用户交互 | 无(UI:N) |
| 影响范围 | 已变更(S:C) |
| 机密性 | 低(C:L) |
| 完整性 | 低(I:L) |
| 可用性 | 无(A:N) |