CVE-2026-21618CVE-2026-21618是hexpm(Elixir生态系统的官方包管理器)中发现的存储型跨站脚本(Stored XSS)漏洞。该漏洞存在于HexpmWeb.SharedAuthorizationView模块的render_grouped_scopes/3函数中,由于对用户输入的输出编码处理不当,攻击者可以在授权作用域参数中注入恶意JavaScript代码。当其他用户访问包含恶意载荷的页面时,攻击脚本将在受害者浏览器中执行,可能导致会话劫持、敏感信息窃取或对页面内容进行篡改。hexpm作为Elixir社区的核心基础设施,处理大量包管理操作,用户基数广泛,该漏洞对整个Elixir生态系统构成安全风险。攻击利用门槛较低,但需要诱导目标用户点击恶意构造的链接或访问特定页面。
该漏洞是典型的Web应用跨站脚本漏洞,源于Elixir模板渲染时未对动态内容进行适当的HTML转义。具体问题出现在lib/hexpm_web/views/shared_authorization_view.ex文件的render_grouped_scopes/3函数中。当处理OAuth授权请求的作用域参数时,系统直接将用户可控的数据嵌入到HTML响应中而未进行输出编码。攻击者可构造包含<script>标签或事件处理器(如onerror、onload)的恶意作用域值。由于hexpm使用EEx模板引擎,虽然框架本身提供自动转义机制,但在某些渲染路径或自定义视图函数中可能绕过了安全机制。成功利用后,恶意JavaScript代码会在管理员或开发者的浏览器会话中执行,可窃取认证令牌、API密钥或执行任意操作。漏洞利用需要攻击者具备创建恶意包或授权请求的能力,并通过社会工程学手段诱导受害者交互。