近日,GitLab 官方面向社区版(CE)与企业版(EE)同步发布了新一轮安全更新,涉及18.9.2、18.8.6、18.7.6三个版本。此次补丁属于紧急级别,一口气修复了四项高危漏洞以及若干中低危安全问题。对于采用自建部署(Self-Managed)的团队来说,如果当前运行版本恰好落在受影响区间内,拖得越久,暴露面就越大。
GitLab 在官方安全公告中措辞相当直接:强烈建议所有自建实例立即升级。这不是例行维护,而是实打实的安全红线。
一、这次为什么要紧急升级?
很多团队对安全补丁的态度是"等一等、看一看",但这一次不建议观望。
本次修复的四项高危漏洞,攻击面覆盖到了日常使用的核心环节:从 Markdown 渲染到 GraphQL 接口,从代码归档下载到保护分支管理。换句话说,无论是普通开发者日常浏览 Wiki,还是管理员操作仓库权限,都可能成为攻击入口。
更麻烦的是,其中多个漏洞的利用门槛并不高——攻击者无需高权限账号,甚至只需要构造特定请求,就能让服务陷入瘫痪,或者在受害者会话里植入恶意脚本。
二、四项高危漏洞详解:风险在哪?
1. CVE-2026-1090(CVSS 8.7)——Markdown XSS 漏洞
这是本次补丁中评分最高的一项。问题出在 GitLab 对 Markdown 占位符的处理逻辑上,存在存储型跨站脚本(Stored XSS)缺陷。
攻击者可以在 Issue、Merge Request 或评论中嵌入恶意脚本,当其他用户浏览相关内容时,脚本会在其浏览器会话中执行。这意味着攻击者能够窃取 Cookie、伪造用户操作,甚至直接接管账号。对于使用 GitLab 作为核心协作平台的团队,这个漏洞的杀伤力不容小觑。
2. CVE-2026-1069(CVSS 7.5)——GraphQL API 拒绝服务
GitLab 的 GraphQL 接口在资源消耗控制上存在短板。攻击者通过构造异常复杂的嵌套查询,可以在短时间内耗尽服务器资源,导致 API 层面对所有用户无响应。
这类 DoS 攻击的可怕之处在于影响范围是全局的——一个恶意请求就能拖垮整个实例的可用性,而正常用户的 CI/CD 流水线、代码提交、页面访问都会跟着遭殃。
3. CVE-2025-13929(CVSS 7.5)——仓库归档接口 DoS
这是另一个独立的拒绝服务漏洞,位于代码仓库的归档下载接口。攻击者可以针对性地触发该缺陷,阻止用户正常下载或归档项目代码。
对于依赖 GitLab 进行源码分发或版本备份的团队,这个漏洞直接威胁到业务连续性。
4. CVE-2025-14513(CVSS 7.5)——保护分支 API 拒绝服务
保护分支(Protected Branches)是 GitLab 保障代码完整性的核心安全机制,防止关键分支被误删或强制推送。然而管理该功能的 API 同样存在 DoS 漏洞,一旦被利用,可能间接削弱代码仓库的安全策略执行。
三、中低危漏洞:细节里的安全隐患
除了上述四项高危漏洞,GitLab 安全团队还顺带堵上了多个中低危漏洞。虽然单独看危害等级不高,但安全从来都是"千里之堤毁于蚁穴":
Webhook 拒绝服务:修复了自定义请求头和接口处的两处独立 DoS 问题,避免外部集成成为压垮服务的最后一根稻草。
权限控制加固:Runner API、代码片段渲染环节存在权限校验不足的情况,群组导入功能更是缺少授权校验,修复后能有效防止越权操作。
信息泄露封堵:解决了无权限用户可获取敏感 Issue 信息的问题,减少数据外泄风险。
凭证与集成安全:Datadog 集成模块曾存在 API 密钥泄露隐患,现已修复;分支引用校验错误导致的代码下载异常也得到了纠正。
企业版虚拟仓库权限:EE 专属功能——虚拟仓库曾出现权限配置不当,允许非群组成员访问相关数据,此次补丁一并收紧了访问控制。
四、升级建议:别等,现在就动手
如果你正在运行 GitLab 自建实例,请按以下步骤排查和处置:
核对当前版本:登录 Admin 面板,确认实例版本是否在 18.9.x、18.8.x 或 18.7.x 的受影响区间内。
制定升级计划:根据当前版本,对应升级至18.9.2、18.8.6 或 18.7.6。GitLab 官方通常支持同主版本内的平滑升级,跨大版本升级需查阅官方升级路径文档。
备份先行:升级前务必做好数据库和仓库备份,尤其是生产环境。
验证修复:升级完成后,可通过官方安全公告中的 CVE 编号交叉验证补丁是否生效。
关注后续更新:如果暂时无法升级,建议至少限制外部不可信用户的访问权限,并监控异常请求日志。