CVE-2026-39826该漏洞存在于Go语言的模板引擎中。当受信任的模板作者编写包含空'type'属性或包含ASCII空白字符的'type'属性的<script>标签时,模板执行将错误地转义传递到<script>块中的任何数据。这可能导致攻击者注入恶意脚本代码并在用户浏览器中执行,从而窃取敏感信息或进行会话劫持。
Go的html/template包旨在通过上下文感知的自动转义机制来防御XSS攻击,它会根据内容所在的HTML上下文(如JavaScript块、CSS块、URL属性)选择合适的转义策略。然而,当<script>标签的type属性为空或仅包含ASCII空白字符(例如type=" "或type="")时,根据HTML5规范,这应被视为JavaScript代码块。但在该漏洞中,模板解析器未能正确识别这一特定上下文,导致其错误地认为内容不需要进行严格的JavaScript转义。因此,当未经过滤的用户输入被渲染到此类<script>标签内部时,恶意payloads(如</script><img src=x onerror=alert(1)>)将不会被转义,从而直接在浏览器中执行。利用此漏洞需要攻击者能够控制传递到该特定模板上下文的数据,并诱导受害者访问生成的页面。