漏洞概述

漏洞名称

GitLab 正则表达式编译器未授权远程代码执行漏洞

漏洞编号

QVD-2026-82700,CVE-2026-97229

公开时间

2026-10-13

影响量级

十万级

奇安信评级

高危

CVSS 3.1分数

9.9

威胁类型

代码执行

利用可能性

高

POC状态

已公开

在野利用状态

未发现

EXP状态

已公开

技术细节状态

已公开

危害描述:攻击者可借由 CI/CD 配置处理链路在无需有效账号凭据的交付阶段触发漏洞,在 GitLab 服务端进程内以运行账户(通常为 git)身份执行任意命令,进而可读取/篡改实例内代码与密钥、横向移动并完全控制实例。配合其他暴露面,可能造成供应链级影响。

01

漏洞详情

>>>>

影响组件

GitLab 是由 GitLab Inc. 开发的一体化 DevOps 平台,提供代码托管、CI/CD、包与容器镜像管理等能力,广泛部署于企业内网与公网自托管环境。其内嵌 Ruby 运行时(Onigmo 正则引擎)负责解析和编译 `.gitlab-ci.yml` 中的各类正则表达式。

>>>>

漏洞描述

近日,奇安信CERT监测到官方修复GitLab 正则表达式编译器未授权远程代码执行漏洞(CVE-2026-97229),该漏洞源于 GitLab 内嵌 Ruby(Onigmo 正则引擎)在编译 CI/CD 配置中的正则表达式时存在整数溢出与内存管理缺陷:特制的正则表达式可在编译阶段造成内存破坏。攻击者可借由 CI/CD 配置处理链路(包括无需认证即可到达的接口)在 GitLab 服务端进程(Puma/Sidekiq)中执行任意代码。目前该漏洞PoC和技术细节已公开。鉴于该漏洞影响范围较大,建议客户尽快做好自查及防护。

>>>>

利用条件

攻击者能够向实例上的公开项目推送分支并提交 CI 配置文件(含特制的正则表达式与文件路径)。

02

影响范围

>>>>

影响版本

GitLab CE/EE 19.2 < 19.2.8

GitLab CE/EE 19.3 < 19.3.5

GitLab CE/EE 19.4 < 19.4.2

03

复现情况

目前,奇安信CERT已成功复现GitLab 正则表达式编译器未授权远程代码执行漏洞(CVE-2026-97229),截图如下:

04

受影响资产情况

奇安信鹰图资产测绘平台数据显示,GitLab 正则表达式编译器未授权远程代码执行漏洞(CVE-2026-97229)关联的国内风险资产总数为107249个,关联IP总数为22627个。国内风险资产分布情况如下:

GitLab 正则表达式编译器未授权远程代码执行漏洞(CVE-2026-97229)关联的全球风险资产总数为173721个,关联IP总数为47285个。全球风险资产分布情况如下:

05

处置建议

>>>>

安全更新

官方已发布安全补丁,请及时更新至最新版本:

GitLab CE/EE ≥ 19.2.8

GitLab CE/EE ≥ 19.3.5

GitLab CE/EE ≥ 19.4.2(或更高受支持版本)

下载地址:

https://about.gitlab.com/update/

临时缓解措施:

1. 收缩暴露面:限制 GitLab 实例的互联网直接访问(VPN/白名单);

2. 关闭或收紧用户注册与项目创建权限,降低攻击者预置条件;

3. 审计并轮换全部 pipeline trigger token,停用不再使用的触发器;

4. 加强监控:关注 Puma/Sidekiq 异常重启、[BUG] Segmentation fault 日志与容器 oom_kill 计数。

06

参考资料

[1]https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-2-released/

[2]https://github.com/jburgess-r7/CVE-2026-97229-PoC

声明:本文来自奇安信 CERT,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。