CVE-2026-44429MCP Registry在1.7.7之前的版本中存在严重的存储型XSS漏洞。攻击者利用发布令牌,通过构造包含引号的恶意URL并提交至`server.websiteUrl`字段,绕过服务端验证。由于客户端渲染时未对属性中的引号进行正确转义,导致恶意脚本被注入到主页的`href`属性中。当受害者访问注册表首页时,恶意代码将在其浏览器中执行,窃取敏感信息。
该漏洞源于服务端验证逻辑与客户端HTML渲染机制的不匹配。服务端的`validateWebsiteURL`函数仅验证URL是否为绝对路径及是否使用HTTPS协议,但未对双引号字符进行过滤。在客户端,应用使用自定义的`escapeHtml`辅助函数通过`textContent`赋值再读取`innerHTML`的方式来转义内容。根据HTML序列化算法,该过程仅对文本节点中的`&`、`<`、`>`和`U+00A0`进行编码,而不会编码双引号。因此,攻击者可以在`websiteUrl`字段中注入双引号,从而跳出`href`属性上下文,并追加任意`on*`事件处理器(如`onmouseover`)。尽管应用配置了内容安全策略(CSP),但由于包含了`'unsafe-inline'`指令,注入的恶意事件处理器仍可在受害者浏览器中成功执行。