极狐GitLab补丁版本19.2.4发布:GraphQL严重漏洞修复
2026 年 8 月 19 日,极狐GitLab 发布了基础版和企业版的 19.2.4、19.1.6、19.0.8、18.11.11 四个补丁版本。这些版本包含重要的安全修复,其中一项漏洞的 CVSS 评分高达 9.4(严重级别)。强烈建议所有私有化部署的极狐GitLab 安装实例立即升级到这些版本之一。JihuLab.com 已运行修复后的版本,JihuLab.com 客户无需采取任何操作。
补丁版本有两种类型:定期发布(每月第二和第四个星期五)和针对高严重性漏洞的临时关键补丁。安全漏洞的详细信息会在修复版本发布 90 天后在 GitLab 议题跟踪器上公开。
安全修复(共 2 项 CVE)
本次补丁共修复 2 个安全漏洞,其中严重 1 项、高危 1 项。两项漏洞均围绕 GraphQL 接口,且影响范围一致,值得重点关注。
CVE 编号 | 漏洞标题 | 严重性 | CVSS |
|---|---|---|---|
GraphQL 指令导致的代码注入问题影响极狐GitLab 基础版/企业版 | 严重 | 9.4 | |
GraphQL 多路查询处理器中的跨站请求伪造问题影响极狐GitLab 基础版/企业版 | 高 | 7.1 |
CVE-2026-19478:GraphQL 指令代码注入(CVSS 9.4)
受影响版本:极狐GitLab 基础版/企业版:18.2 及以上且低于 18.11.11 的版本、19.0 及以上且低于 19.0.8 的版本、19.1 及以上且低于 19.1.6 的版本,以及 19.2 及以上且低于 19.2.4 的版本。
CVSS 向量:CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H
该漏洞允许未经身份验证的攻击者通过 GraphQL 指令远程修改或删除公共项目和用户数据。从 CVSS 向量分析:
攻击向量(AV:N):网络可达,无需物理或本地访问
攻击复杂度(AC:L):低复杂度,无需特殊条件
所需权限(PR:N):无需认证,任何人均可利用
用户交互(UI:N):无需用户交互
影响范围(S:U):影响范围限定在受影响组件
机密性影响(C:L):低机密性影响
完整性影响(I:H):高完整性影响——可篡改或删除数据
可用性影响(A:H):高可用性影响——可导致服务不可用
该漏洞由安全研究员 hiimguardian 通过 GitLab 的 HackerOne 漏洞赏金计划报告。
风险分析:CVSS 9.4 属于"严重"级别,是本次补丁中最关键的修复项。由于无需认证即可利用,且可对数据的完整性和可用性造成高级别影响,未及时升级的实例面临数据被篡改或删除的风险。对于承载重要代码资产和项目数据的私有化部署实例,此漏洞的潜在危害尤为突出。
CVE-2026-19650:GraphQL 多路查询处理器 CSRF(CVSS 7.1)
受影响版本:与 CVE-2026-19478 相同——极狐GitLab 基础版/企业版:18.2 及以上且低于 18.11.11 的版本、19.0 及以上且低于 19.0.8 的版本、19.1 及以上且低于 19.1.6 的版本,以及 19.2 及以上且低于 19.2.4 的版本。
CVSS 向量:CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:L
该漏洞因 GraphQL 多路查询处理中的请求验证不当,允许未经身份验证的攻击者通过 GET 请求执行变更操作(mutation)。从 CVSS 向量分析:
攻击向量(AV:N):网络可达
用户交互(UI:R):需要用户交互——典型的 CSRF 攻击场景
完整性影响(I:H):高完整性影响——可执行未授权的数据变更操作
可用性影响(A:L):低可用性影响
该漏洞由安全研究员 kreep 通过 GitLab 的 HackerOne 漏洞赏金计划报告。
风险分析:GraphQL 多路查询(multiplex query)允许客户端在单个 HTTP 请求中发送多个 GraphQL 操作。正常情况下,变更操作应仅允许通过 POST 请求执行,而该漏洞导致攻击者可构造恶意 GET 请求,在用户不知情的情况下触发变更操作。结合社工手段诱导用户点击恶意链接,攻击者可在用户已登录极狐GitLab 的上下文中执行未授权的数据修改。
漏洞技术解读:为什么 GraphQL 安全如此重要
GraphQL 作为极狐GitLab 的核心 API 层之一,承担着前后端数据交互的关键角色。与传统 REST API 相比,GraphQL 的灵活性更高——客户端可以精确指定所需字段,但也因此带来了更复杂的安全挑战。
GraphQL 指令注入
GraphQL 指令(directive)是一种以 @ 开头的修饰符,用于控制查询的执行行为。例如 @skip、@include 等内置指令可以条件化字段返回。当服务端对用户提供的指令内容未做充分校验时,攻击者可利用指令机制注入恶意代码或触发非预期行为。CVE-2026-19478 正是此类问题——未经认证的攻击者通过精心构造的 GraphQL 指令,绕过正常的数据访问控制,实现对公共项目和用户数据的远程修改或删除。
GraphQL CSRF 与多路查询
GraphQL 多路查询机制允许在一个请求中打包多个查询或变更操作,以减少网络往返。然而,当服务端对 HTTP 方法验证不当(如允许通过 GET 请求执行 mutation)时,就产生了 CSRF 风险。攻击者只需诱导已登录用户访问一个包含恶意 GET 请求的页面,浏览器就会自动携带用户的会话 Cookie 发起请求,从而以用户身份执行未授权的变更操作。CVE-2026-19650 就是此类问题的典型案例。
两项漏洞的关联性
值得注意的是,两项漏洞均围绕 GraphQL 接口,且影响范围完全一致。这意味着同一批受影响版本同时存在两个 GraphQL 安全缺陷。从攻击面来看:
CVE-2026-19478 无需用户交互,可直接远程利用,危害更大
CVE-2026-19650 需要用户交互(CSRF),但在社工攻击配合下同样具有实际威胁
两者的组合使得攻击者可以采用更灵活的攻击路径——先利用无需认证的指令注入获取初步访问能力,再结合 CSRF 扩大影响范围。
受影响版本汇总
本次补丁覆盖四个版本线,受影响版本范围如下:
版本线 | 受影响范围 | 修复版本 |
|---|---|---|
19.2.x | 19.2 及以上且低于 19.2.4 | 19.2.4 |
19.1.x | 19.1 及以上且低于 19.1.6 | 19.1.6 |
19.0.x | 19.0 及以上且低于 19.0.8 | 19.0.8 |
18.11.x | 18.2 及以上且低于 18.11.11 | 18.11.11 |
如果您的实例运行在上述受影响范围内,请尽快升级到对应版本线的最新补丁版本。
升级指南
建议操作
强烈建议所有运行受影响版本的安装实例尽快升级到最新版本。当未提及产品的特定部署类型(Omnibus、源代码、Helm Chart 等)时,表示所有类型均受影响。
升级对安装实例的影响
这些版本不包含任何新的数据库迁移,对于多节点部署,可以实现零停机升级。
需要注意的是,默认情况下,Omnibus 软件包会停止服务、运行迁移,然后重新启动,无论升级规模大小。可以通过添加 /etc/gitlab/skip-auto-reconfigure 文件来更改此行为,该文件仅用于更新。
升级步骤
如需更新极狐GitLab,请查阅更新页面。要更新极狐GitLab Runner,请参阅更新 Runner 页面。
对于 Omnibus 安装,典型的升级命令如下:
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install gitlab-jh
# CentOS/RHEL
sudo yum install gitlab-jh
# 升级后自动执行 reconfigure
sudo gitlab-ctl reconfigure对于 Helm Chart 部署,请参考 Helm Chart 升级文档。
安全漏洞信息公开
对于安全修复,每个漏洞的详细信息会在修复版本发布 90 天后在 GitLab 议题跟踪器上公开。这遵循负责任披露原则,为用户提供了充足的升级窗口期。
补丁版本机制说明
极狐GitLab 在补丁版本中发布漏洞修复。补丁版本有两种类型:
定期发布:每月第二和第四个星期五发布,包含累积的错误修复和安全修复。
临时关键补丁:针对高严重性漏洞,在定期发布周期之外紧急发布。
本次 19.2.4 等版本属于定期补丁发布。如需了解更多关于发布流程的信息,请访问 GitLab 的发布手册和安全常见问题解答。
总结
本次 19.2.4、19.1.6、19.0.8、18.11.11 补丁版本共修复 2 项 GraphQL 相关安全漏洞,其中 CVE-2026-19478(CVSS 9.4)为无需认证即可远程利用的严重漏洞,可导致公共项目数据被篡改或删除;CVE-2026-19650(CVSS 7.1)为 CSRF 漏洞,可通过诱导用户交互执行未授权变更操作。
由于两项漏洞均无需认证即可触发(CSRF 漏洞的"无需认证"指攻击者本身无需拥有账户,但需借助受害者的会话),且影响范围覆盖从 18.2 到 19.2.x 的广泛版本线,所有私有化部署用户应尽快升级。此次补丁不含数据库迁移,多节点部署可实现零停机升级,升级成本较低。
极狐GitLab 致力于确保所有面向客户或承载客户数据的方面都符合最高安全标准。为保持良好的安全实践,强烈建议所有客户将其使用的受支持版本升级至最新补丁版本。










