【漏洞通告】GitLab远程代码执行漏洞(CVE-2026-97229)

· 2026-10-15 17:17 · 27 阅读

深瞳漏洞实验室 2026-10-15 17:17 北京

2026年10月15日,深瞳漏洞实验室监测到一则GitLab组件存在整数溢出漏洞漏洞的信息,漏洞编号:CVE-2026-97229,漏洞威胁等级:严重。

漏洞名称:

GitLab远程代码执行漏洞(CVE-2026-97229)

组件名称:

GitLab

影响范围:

GitLab CE/EE 19.2 < 19.2.8
GitLab CE/EE 19.3 < 19.3.5
GitLab CE/EE 19.4 < 19.4.2

漏洞类型:

代码执行

利用条件:

1、用户认证:否

2、前置条件:攻击者具备仓库写权限或自行注册创建公开项目,能够访问目标CI Lint接口

3、触发方式:远程

综合评价:

<综合评定利用难度>:容易,攻击者具备仓库写权限即可远程代码执行。

<综合评定威胁等级>:高危,能造成远程代码执行。

官方解决方案:

已发布

漏洞分析

组件介绍

GitLab 是由 GitLab Inc. 开发的一体化 DevSecOps 平台,主体采用 Ruby on Rails 实现,可通过云端托管(gitlab.com)或私有化方式(CE/EE)交付,功能覆盖代码仓库托管、问题跟踪、合并请求评审、内置 CI/CD 流水线、容器与软件包仓库以及安全扫描等研发全流程。

漏洞简介

2026年10月15日,深瞳漏洞实验室监测到一则GitLab组件存在代码注入漏洞的信息,漏洞编号:CVE-2026-97229,漏洞威胁等级:严重。

GitLab CE/EE 是开源 DevOps 平台。受影响版本解析 CI/CD 配置时,会把其中的正则表达式交给发行版内置 Ruby 3.3/3.4 的 Onigmo 引擎编译,且不限制模式长度和重复次数。编译器在 regcomp.c 的 compile_length_quantifier_node 中以 32 位有符号整数计算量词目标编译长度与重复次数的乘积,并与固定阈值比较决定是否展开;该乘法与比较均无溢出防护,乘积回绕成小值或负值后仍能通过阈值判断,拦截超大重复的检查反被溢出本身绕过。编译器随后按回绕值分配缓冲区却写入完整指令流,相对跳转偏移也一并回绕,形成堆越界写——匿名攻击者将特制正则植入 CI/CD 配置,即可在服务进程内执行任意代码。

搭建GitLab漏洞环境复现该漏洞,效果如下:

影响范围

目前受影响的GitLab版本:

GitLab CE/EE 19.2 < 19.2.8
GitLab CE/EE 19.3 < 19.3.5
GitLab CE/EE 19.4 < 19.4.2

解决方案

官方修复建议

将组件 GitLab 升级至 19.2.8、19.3.5 或 19.4.2 及以上版本(按所在版本线选择对应目标版本)
https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-2-released/

临时修复建议

  • 关闭未使用的功能模块,减少潜在攻击入口。

  • 遵循最小权限原则,严控各类敏感操作权限范围。

  • 非必要不暴露服务到公网,限制访问源为可信范围。

  • 定期更新系统及各类组件至安全版本,及时修补已知隐患。

深信服解决方案

风险资产发现

支持对GitLab的主动检测,可批量检出业务场景中该事件的受影响资产情况,相关产品如下:

【深信服云镜YJ】已发布资产检测方案,指纹ID:0006687。

【深信服漏洞评估工具TSS】已发布资产检测方案,指纹ID:0006687。

参考链接

时间轴

2026/10/15

深瞳漏洞实验室监测到GitLab远程代码执行漏洞信息。

2026/10/15

深瞳漏洞实验室发布漏洞通告。

点击阅读原文,及时关注并登录深信服智安全平台,可轻松查询漏洞相关解决方案。

阅读原文

跳转微信打开

本文转载自微信公众号「深信服千里目安全实验室」,查看原文。版权归原作者所有,如有侵权请联系删除。