IPBUF安全漏洞报告
English
CVE-2026-4074 CVSS 6.4 中危

CVE-2026-4074: WordPress Quran Live插件存储型XSS漏洞

披露日期: 2026-04-22

漏洞信息

漏洞编号
CVE-2026-4074
漏洞类型
Stored Cross-Site Scripting (存储型XSS)
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WordPress Quran Live Multilanguage Plugin

相关标签

Stored XSSWordPressWordPress PluginCWE-79Quran LiveCVE-2026-4074

漏洞概述

WordPress Quran Live Multilanguage插件(版本<=1.0.3)存在存储型跨站脚本漏洞。该漏洞源于对用户输入的短代码属性缺乏充分过滤,导致攻击者可将恶意脚本注入页面。具有贡献者及以上权限的攻击者可利用此漏洞,在受害者访问受感染页面时执行任意Web脚本,窃取数据或进行恶意操作。

技术细节

该漏洞属于存储型跨站脚本(Stored XSS)。其根本原因是WordPress插件Quran Live Multilanguage在处理短代码(Shortcode)时,未对用户输入进行有效的过滤和转义。具体流程如下:攻击者提交包含恶意数据的短代码属性(如`cheikh`或`lang`),插件在`quran-live.php`文件中的`quran_live_render()`函数接收这些参数。代码使用了`shortcode_atts()`设置默认值,并利用`extract()`将数组变量导入当前符号表。随后,这些未经清洗的数据被传递给`Render_Quran_Live::render_verse_quran_live()`方法。在`Class_QuranLive.php`的第191、216、217、245及246行,代码直接使用PHP短标签(`<?=$cheikh;?>`)将变量输出到HTML页面的`<script>`标签内。由于这些变量是直接拼接在JavaScript字符串或代码中,攻击者可以注入引号闭合原有字符串,进而执行任意JavaScript代码。一旦管理员或其他用户访问包含该短代码的页面,恶意脚本即会在其浏览器上下文中运行。

攻击链分析

STEP 1
1. 获取权限
攻击者注册或获取一个具有Contributor(贡献者)级别及以上权限的WordPress账户。
STEP 2
2. 构造Payload
攻击者构造包含恶意JavaScript代码的短代码,例如利用`cheikh`参数闭合引号并注入alert函数。
STEP 3
3. 注入Payload
攻击者创建或编辑一篇WordPress文章,将构造好的恶意短代码插入文章内容中并提交发布。
STEP 4
4. 触发漏洞
当普通用户或管理员访问该受感染的文章页面时,服务器会解析短代码并将恶意代码输出到页面中的<script>标签内。
STEP 5
5. 执行攻击
受害者的浏览器解析并执行恶意脚本,导致Cookie窃取、会话劫持或其他恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2026-4074 Usage: Add the following shortcode to a WordPress post or page (Contributor access or higher required). --> [quran_live cheikh="'; alert('XSS by CVE-2026-4074'); //" lang="en"] /* Explanation: The payload injects a single quote to break out of the JavaScript string context, followed by an arbitrary JavaScript alert statement, and a comment to ignore the rest of the line. When the page renders, the script block executes the alert. */

影响范围

WordPress Quran Live Multilanguage Plugin <= 1.0.3

防御指南

临时缓解措施
建议立即检查并更新WordPress Quran Live Multilanguage插件。若目前无法升级,应暂时禁用该插件以防止攻击。或者作为临时修复方案,修改插件源码,在Class_QuranLive.php文件中输出变量前添加转义函数,确保恶意字符无法破坏JavaScript结构。

参考链接

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