GitHub CVE-2026-3854 RCE漏洞可通过单个Git推送利用
CVE-2026-3854(CVSS 8.7)允许具有推送权限的认证用户通过精心制作的git推送命令在GitHub.com和GitHub Enterprise Server上实现远程代码执行。

执行摘要
研究人员披露了GitHub.com和GitHub Enterprise Server中一个关键的命令注入漏洞,跟踪编号为CVE-2026-3854,CVSS评分为8.7,该漏洞使得具有推送访问权限的认证用户可以通过发出一个精心制作的git push命令,在服务器上实现远程代码执行(RCE)。该漏洞存在于GitHub在推送操作期间处理某些仓库元数据的方式中,允许攻击者将任意命令注入到服务器的执行上下文中。截至发稿时,GitHub尚未确认补丁或缓解措施的时间表。该漏洞影响托管的GitHub.com平台和自托管的GitHub Enterprise Server实例,使其成为任何使用GitHub进行源代码管理的组织的高优先级问题。
技术分析
根据网络安全研究人员在The Hacker News的披露,CVE-2026-3854是一个在处理git push操作期间触发的命令注入漏洞。获得目标GitHub实例上任何仓库推送访问权限的攻击者可以精心制作一个恶意推送负载,当服务器处理时,执行任意命令。该漏洞不需要攻击者是仓库所有者或管理员——任何具有写入访问权限的协作者都可以利用它。
确切的代码路径和注入点尚未公开详细说明,可能是为了使用户有时间在发布完整的技术细节之前应用缓解措施。然而,作为命令注入的分类表明,该漏洞存在于GitHub的服务器端钩子或元数据解析器如何处理推送流中用户提供的输入。鉴于攻击向量是一个单一的git push,可利用的攻击面很广:任何至少有一个具有推送访问权限的协作者的仓库都可能是易受攻击的。
GitHub Enterprise Server (GHES)部署尤其处于风险之中,因为它们是自管理的,可能不会像云托管的GitHub.com那样迅速接收补丁。在防火墙后面运行GHES的组织可能有一种错误的安全感,因为该漏洞不需要出站连接来利用——只需要能够推送到本地实例上的仓库。
CVSS评分8.7将这个漏洞归类为“高”严重性。该向量可能包括低攻击复杂性、需要的权限低(具有推送访问权限的认证用户)和不需要用户交互,对机密性、完整性和可用性的影响很大。发现该漏洞的研究人员在可用的源材料中未被命名,披露时间线仍然不清楚。
缓解措施与建议
在GitHub发布CVE-2026-3854的安全补丁之前,防御者应采取以下步骤:
- 限制推送访问:审核所有仓库,并删除任何不需要明确推送访问的用户或服务帐户的推送访问权限。在仓库权限上强制执行最小权限原则。
- 监控git push活动:在GitHub Enterprise Server上启用审计日志记录,并监控异常推送事件,特别是那些包含不寻常元数据或提交消息、标签或分支名称中的大型负载的事件。
- 隔离GitHub Enterprise Server:如果可能,将GHES实例放置在可以检查和阻止可疑推送负载的Web应用程序防火墙(WAF)或反向代理后面。然而,这充其量只是部分缓解措施,因为漏洞在Git协议级别上运作。
- 及时应用补丁:关注GitHub的安全通告和GitHub Enterprise Server发布说明中的修补版本。一旦可用,在将其推广到生产环境之前,立即在暂存环境中测试并部署更新。
- 考虑临时服务禁用:对于不能容忍任何风险的组织,考虑临时禁用对所有仓库的写入访问或暂停GitHub Enterprise Server服务,直到补丁可用。这是一个极端的措施,但对于高安全环境可能是必要的。
订阅更新
将最新的网络安全资讯直接发送到您的邮箱。