GitLab 警告用户,其CI/CD 正则表达式编译器组件中存在严重程度最高的安全漏洞,远程且未经身份验证的攻击者可能利用该漏洞在目标 GitLab 服务器上执行任意代码。该漏洞编号为CVE-2026-97229,由一名使用joaxcar这一化名的安全研究人员发现,并通过 HackerOne 漏洞赏金计划报告。
漏洞如何运作?
该问题源于正则表达式编译器中的整数溢出漏洞。该组件负责分析、编译并评估 CI/CD 流水线配置文件中的正则表达式。根据 GitLab 的声明,在特定条件下,攻击者可以利用对正则表达式验证不足的问题,在 CI/CD 配置中使用特制表达式,从而允许未经身份验证的用户在 GitLab 服务器上执行代码。
受影响版本与更新
GitLab 已在 Community Edition 和 Enterprise Edition 的以下版本中修复该问题:
- 19.2.8 或更高版本,取代早于 19.2.8 的版本。
- 19.3.4 或更高版本,取代早于 19.3.4 的版本。
- 19.4.2 或更高版本,取代早于 19.4.2 的版本。
该公司建议所有自托管 GitLab 安装用户立即升级到上述版本之一,这些版本还包含错误修复和安全漏洞修复。GitLab.com 服务已经运行修复后的版本,根据该公司的说法,GitLab Dedicated 客户无需采取行动。
为什么这条消息很重要?
该漏洞的重要性在于,利用它不需要身份验证,而成功攻击可能导致攻击者在托管项目和 CI/CD 流水线的服务器上执行代码。因此,根据现有信息,实际受影响范围主要集中在自行管理 GitLab 的环境,而不是 GitLab.com 或 GitLab Dedicated 用户。
此次修复发生在 GitLab 近几个月修复一系列漏洞之后。今年 1 月,该公司修复了一个可绕过双因素身份验证的高危漏洞,编号为 CVE-2026-0723;上月,公司又修复了另一个严重程度最高的漏洞 CVE-2026-85706。该漏洞允许未经身份验证的攻击者从受影响服务器读取敏感数据,包括凭据和机密信息。
美国网络安全与基础设施安全局(CISA)在 CVE-2026-85706 修复一天后,将其加入已遭实际利用漏洞目录,并要求联邦机构在三天内保护其系统。已发布的信息还指出,自 2021 年 11 月以来,CISA 已发现 GitLab 的五个漏洞被用于攻击,其中一个漏洞曾被实施勒索软件攻击的组织利用。
消息来源并未证明新的 CVE-2026-97229 漏洞截至目前已遭到实际利用,因此目前确定的措施仍是立即更新自托管版本,并检查相关 CI/CD 配置。