CVE-2025-13608CC Child Pages是WordPress平台上一款用于展示子页面的插件。该插件在2.0.0及以下所有版本中存在一处严重的存储型跨站脚本(Stored XSS)漏洞。漏洞源于插件的child_pages短代码功能中,对四个用户可控属性(use_custom_link、use_custom_link_target、use_custom_thumbs、use_custom_excerpt)缺乏充分的输入过滤和输出编码。攻击者只需拥有WordPress contributor级别或更高权限,即可通过在页面中插入恶意构造的短代码,将恶意JavaScript脚本存储到数据库中。当其他用户访问包含该恶意短代码的页面时,存储的恶意脚本将在受害者浏览器中执行,可能导致会话劫持、凭据窃取或进一步的攻击。由于是存储型XSS,攻击具有持久性,一旦注入成功,恶意代码将持续存在直至被发现和清除。
该漏洞存在于CC Child Pages插件的show_child_pages函数中。当插件处理child_pages短代码时,会接收并使用use_custom_link、use_custom_link_target、use_custom_thumbs、use_custom_excerpt这四个参数来控制子页面的显示方式。然而,插件在接收到这些参数后,直接将其输出到HTML页面中,没有进行任何输入验证或输出转义。攻击者可以通过构造如下短代码注入恶意脚本:[child_pages use_custom_link='1' use_custom_link_target=' onclick=alert(1)//'],其中use_custom_link_target参数的值会被直接插入到HTML标签的属性中。由于缺乏对引号和尖括号的转义,攻击者可以提前闭合属性并注入新的事件处理器或脚本标签。由于该短代码会被存储在WordPress的post_content字段中,每次页面加载时都会从数据库读取并执行,形成持久性攻击向量。攻击者利用此漏洞需要至少具有WordPress contributor角色权限,该角色通常允许创建和编辑草稿文章。