GitLab于2026年9月10日发布紧急安全更新,修复包括CVE-2026-85706在内的多项漏洞。CISA随后将该漏洞加入“已知被利用漏洞目录”,说明它已经不是只存在于理论中的风险。
本文依据GitLab与CISA公开信息整理,不是云侦探实测,也不提供漏洞利用代码。使用GitLab.com或GitLab Dedicated的用户无需按自建实例流程处理;重点排查对象是部署在云服务器、物理服务器或私有云中的自建GitLab CE/EE。
漏洞会造成什么影响
CVE-2026-85706是GitLab仓库提交API中的路径遍历漏洞,CVSS评分为10.0。在特定条件下,攻击者无需登录,就可能读取GitLab服务器上的任意文件。
真正的风险不只是项目代码。GitLab服务器通常还保存配置、数据库连接信息、访问令牌、密钥或CI/CD相关凭据。一旦这些文件被读取,后续可能引发更大的安全问题。
需要注意:GitLab官方没有把这个漏洞描述为远程代码执行。它确认的是“未登录读取任意文件”,不能夸大成“攻击者可以直接控制服务器”。
哪些版本受到影响
- GitLab 18.7.0至19.1.7;
- GitLab 19.2.0至19.2.5;
- GitLab 19.3.0至19.3.1。
对应的修复版本为19.1.8、19.2.6和19.3.2。自建实例应升级至所在受支持分支的修复版本,或更高的受支持安全版本。
GitLab官方公告:GitLab Critical Patch Release 19.3.2、19.2.6、19.1.8
为什么需要立即处理
CISA于2026年9月11日将CVE-2026-85706加入已知被利用漏洞目录,并明确表示该决定基于实际利用证据。CISA对受相关指令约束的美国联邦机构给出的整改期限是2026年9月14日,目前已经过期。
这个日期只约束特定美国联邦机构,不是全球用户的“补丁截止日”。对公网开放的自建GitLab更不应该等到某个日期才处理,应尽快完成升级。
CISA官方公告:CISA Adds One Known Exploited Vulnerability to Catalog
自建GitLab应该怎么处理
- 确认当前版本。先在后台或服务器中确认GitLab版本,并核对是否位于受影响范围。
- 备份再升级。升级前备份数据库和关键配置,按照GitLab官方升级路径操作,不要跳过必要的中间版本。
- 预留维护时间。GitLab说明本次补丁包含数据库迁移,单节点实例可能在升级期间出现停机;多节点环境应按零停机升级文档执行。
- 完成业务验证。升级后检查Web访问、代码拉取、CI/CD任务、Runner连接和备份是否正常。
- 排查异常请求。GitLab已发布三项检测规则,用于发现读取gitlab.yml、利用metadata.path参数及异常文件路径请求的尝试,可结合访问日志和安全设备日志排查。
发现异常后还要做什么
如果实例曾直接暴露在公网,或日志中出现无法解释的异常请求,不要只做版本升级。应先保留日志和现场信息,再评估服务器文件是否可能被读取。
如果确认敏感配置存在泄露风险,应按实际影响轮换访问令牌、SSH密钥、数据库密码、对象存储密钥和其他连接凭据。没有证据时不要直接宣称“服务器已被入侵”,但也不能把打补丁等同于完成事件处置。
临时限制访问能否代替升级
不能。收紧安全组、限制访问IP或临时关闭公网入口,可以降低暴露面,但这只是过渡措施。漏洞发生在GitLab应用层,只要存在不受信任的访问路径,就仍然需要安装官方修复。
总结
这次事件最关键的三点是:漏洞评分达到10.0、攻击不一定需要登录、CISA已确认存在实际利用。自建GitLab用户应立即核对版本并升级;使用GitLab.com或GitLab Dedicated的用户,则以官方托管服务说明为准。