CVE-2026-23643CVE-2026-23643是CakePHP框架中的一个存储型跨站脚本(Stored XSS)漏洞。CakePHP是一个流行的PHP快速开发框架,广泛应用于Web应用程序开发。该漏洞存在于PaginatorHelper::limitControl()方法中,该方法用于生成分页限制控件。由于该方法在处理用户可控的查询字符串参数时,未对输出内容进行充分的HTML转义和过滤,攻击者可以通过构造恶意的URL参数注入任意JavaScript代码。当其他用户访问包含恶意脚本的页面时,攻击代码将在其浏览器上下文中执行,可能导致会话劫持、敏感信息窃取、钓鱼攻击等安全问题。此漏洞的CVSS评分为5.4,属于中等严重程度,需要用户交互才能触发,攻击复杂度较低。
该漏洞的根本原因在于PaginatorHelper::limitControl()方法对URL查询字符串参数的处理不当。当用户访问包含特殊构造的查询参数页面时,例如在URL中添加如limit=10这样的参数时,方法会将该值直接输出到HTML页面而未进行适当的HTML实体编码。攻击者可以利用此漏洞在查询参数中注入恶意JavaScript代码,如<img src=x onerror=alert(document.cookie)>等payload。当其他用户访问该页面或点击包含恶意参数的链接时,攻击代码会在受害者浏览器中执行。由于该漏洞位于分页组件中,几乎所有使用CakePHP分页功能的页面都可能受到影响。攻击者可以通过社交工程手段诱导管理员或普通用户访问恶意链接,从而窃取认证凭证、会话令牌或其他敏感信息。修复措施包括对所有用户输入进行严格的输入验证,并在输出时使用htmlspecialchars()或类似函数进行HTML实体编码。