【已复现】GitLab远程代码执行漏洞(CVE-2026-97229)"

admin 2026-10-16 13:29:52 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

【已复现】GitLab 远程代码执行漏洞(CVE-2026-97229)

长亭安全应急响应中心

2026年10月14日 16:00
浙江
标题已修改

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

GitLab 是一体化 DevOps 平台,提供代码托管、代码审查、持续集成与持续交付(CI/CD)、制品管理等能力,广泛用于企业内部的软件研发与交付流程,支持自建部署(CE/EE)与云端托管(GitLab.com)等多种形态。

2026 年 10 月,长亭安全应急响应中心监测到 GitLab CE/EE 的 CI/CD 正则表达式编译器存在整数溢出风险。攻击者可借助公开可访问的 CI/CD 配置校验入口,以不携带任何凭据的网络请求触发该缺陷,导致 GitLab 服务端进程以 git 账号身份执行任意命令,可能造成服务器被完全控制以及源码、CI/CD 凭据泄露。截至通告发布,官方已发布修复版本,GitLab.com 已完成修复;建议自建 GitLab CE/EE 用户尽快确认版本并按官方指引升级。

漏洞描述 Description

01

漏洞成因

GitLab CE/EE 在处理 CI/CD 配置中的正则表达式(例如规则中的路径匹配条件)时,会调用随包 Ruby 的 Onigmo 正则引擎,将表达式编译为引擎内部执行的指令程序。当表达式包含超出常规范围的重复次数时,编译器在累计每步指令长度与重复次数、以及计算分支指令的相对偏移时,使用了固定宽度的整型运算。相关乘积越过该整型可表示的最大值后发生回绕,使编译出的指令程序长度突破上限、分支偏移指向错误位置,正则虚拟机随后基于被破坏的程序执行,从而丧失控制流完整性。

经分析,GitLab 应用层原有的两道防护未覆盖上述路径:其一对量词边界值的校验与实际编译展开行为不一致;其二编译产物大小检查针对的是首次以 US-ASCII 编码编译得到的紧凑形式,而真正的大规模展开发生在表达式与包含补充平面字符的 UTF-8 仓库路径匹配、引擎按新编码重新编译的阶段,该阶段不再受大小限制。

需要说明的是,完整利用链还要求攻击者能够向某个可被配置校验入口读取的项目写入特制的 CI/CD 配置。在允许自助注册或攻击者已持有普通账号的自建实例上,该条件较易满足。

漏洞影响

成功利用该漏洞的攻击者可在 GitLab 服务端进程上下文中,以 git 账号身份执行任意命令,进而可能读取或篡改源代码、CI/CD 变量与访问令牌、Runner 注册令牌、部署密钥以及云环境凭据,并可能以此为跳板进一步影响关联的构建与部署环境。此外,触发该缺陷会消耗大量服务端 CPU 与内存并导致处理进程崩溃,同一根因也可被用于低门槛的拒绝服务攻击。实际影响范围取决于实例的部署方式、网络暴露面与凭据管理情况。

处置优先级:高

漏洞类型: 远程代码执行

漏洞危害等级: 高

触发方式: 网络远程

权限认证要求: 无需权限

系统配置要求: 默认配置

用户交互要求: 无需用户交互

利用成熟度: POC/EXP 已公开

修复复杂度: 低,官方已提供修复方案

影响版本 Affects

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

解决方案 Solution

03

升级修复方案

官方已发布修复版本,建议受影响用户尽快升级至 GitLab CE/EE 19.2.8、19.3.5、19.4.2 或更高版本。GitLab.com 已完成修复,GitLab Dedicated 用户无需操作。自建实例请按官方补丁发布说明执行升级,并确认随包 Ruby 组件已同步更新;升级前建议做好数据备份与变更窗口安排。

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

临时缓解方案

以下方案为应急临时措施,可能影响业务功能,升级完成后应及时移除。在完成升级前,可限制匿名用户访问公开项目,并禁止不受信任的用户创建或写入公开项目,以降低已公开利用路径的暴露面。上述措施仅针对当前已知的投递路径,不能替代版本升级,也无法修复存在缺陷的正则编译器。

漏洞复现 Reproduction

04

长亭安全应急响应中心已完成复现验证。

复现验证:匿名触发后服务端进程执行验证命令

时间线 Timeline

05

2026 年 10 月 14 日 长亭安全应急响应中心发布通告

参考资料

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

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

长亭应急响应服务

全力进行产品升级

及时将风险提示预案发送给客户

检测业务是否受到此次漏洞影响

请联系长亭应急服务团队

7\*24小时,守护您的安全

第一时间找到我们:

邮箱:[email protected]

【已复现】GitLab远程代码执行漏洞(CVE-2026-97229)" 网络安全文章

【已复现】GitLab远程代码执行漏洞(CVE-2026-97229)"

GitLabCE/EE存在CVE-2026-97229远程代码执行漏洞,源于CI/CD正则表达式编译器整数溢出,攻击者可无凭据远程触发,以git账号执行任意命令,可能导致服务器被控制及源码凭据泄露。影响19.2至19.4多个版本,官方已发布修复版本,建议用户尽快升级,并可通过限制匿名访问等临时措施缓解风险。
速看,AWS发布免费AIAgent沙箱StrandsBox" 网络安全文章

速看,AWS发布免费AIAgent沙箱StrandsBox"

AWS发布免费开源AIAgent沙箱工具StrandsBox,结合操作系统级隔离与策略规则,通过四个检查点统一执行策略检查,默认拒绝所有操作。网络网关可保护Secrets,防止凭证泄露。该工具处于开发者预览阶段,支持AppleSiliconMac,Linux支持后续推出。文章也指出其局限性,如授权文件不经过策略引擎、需信任更多代码、策略编写有门槛。
评论:0   参与:  0