GitHub Enterprise Server 漏洞允许攻击者窃取管理员凭据
CVE-2026-8106: GitHub Enterprise Server 管理控制台登录页面中的反射HTML注入,通过精心设计的 redirect_to 参数实现凭证窃取。

GitHub Enterprise Server漏洞允许攻击者窃取管理员凭据
执行摘要
GitHub Enterprise Server 管理控制台登录页面中的一个反射型 HTML 注入漏洞,跟踪编号为 CVE-2026-8106,可能允许未经身份验证的攻击者窃取管理员凭据。该漏洞位于 /setup/unlock 端点,其中 redirect_to 查询参数未经适当清理就反射到 HTML 属性中。攻击者可以注入一个恶意表单元素,当受害者的浏览器渲染时,会捕获管理员输入的凭据。GitHub 在 Enterprise Server 版本 3.19.6 中解决了这个问题,作为产品常规更新周期的一部分发布。截至本文撰写时,GitHub 尚未发布 CVSS 评分,但该漏洞使针对特权界面的凭据盗窃成为可能,需要紧急修补自托管实例。
技术分析
根据 GitHub 对 Enterprise Server 3.19.6 的发布说明,该漏洞是一个影响管理控制台登录页面的反射型 HTML 注入。/setup/unlock 端点上的 redirect_to 参数在未进行编码或验证的情况下插入到 HTML 属性中。攻击者可以制作一个包含恶意 redirect_to 值的 URL,该值关闭现有的 HTML 属性并注入指向攻击者控制的服务器的 <form> 元素。当管理员访问制作的 URL 并在看似合法的登录页面上提交凭据时,表单数据会被发送到攻击者的目的地。
攻击不需要身份验证,可以通过网络钓鱼电子邮件、社交工程或将制作的链接嵌入到管理员可能访问的被破坏网站上进行传递。GitHub Enterprise Server 管理控制台通常暴露在单独的端口上(默认为 8443),用于初始设置、配置更改和故障排除——使其成为寻求对组织代码基础设施持续访问的攻击者的高价值目标。
GitHub 的咨询说明,利用漏洞需要管理员点击恶意链接,然后输入凭据。注入是反射性的,意味着有效载荷不会存储在服务器上——它是作为 URL 本身的一部分传递的。这限制了攻击窗口到管理员会话的持续时间,但不需要事先破坏 GitHub 实例。
包含在版本 3.19.6 中的修复,会在将 redirect_to 参数反射到 HTML 响应之前正确清理。GitHub 没有透露该漏洞是内部发现还是由外部研究人员报告的。截至 2026 年 5 月 8 日,没有报告在野外积极利用的证据。
缓解措施与建议
运行自托管 GitHub Enterprise Server 实例的管理员应立即升级到 3.19.6 或更高版本。GitHub 的发布说明表明,修复包含在 3.19.6 发布系列中;使用较旧发布系列(3.18.x, 3.17.x)的组织应查阅升级路径文档,以确定适合其部署的适当修补版本。
对于无法立即修补的组织,通过防火墙规则或 VPN 将网络访问限制在管理控制台界面(通常是端口 8443)的有限数量的管理工作站上,可以减少攻击面。还应培训管理员在点击前仔细审查 URL,特别是那些指向管理控制台登录页面的 URL。启用管理控制台访问的多因素认证(MFA)——如果支持的话——即使攻击者捕获了密码,也能减轻凭据盗窃。
订阅更新
将最新的网络安全资讯直接发送到您的邮箱。
