

1. 漏洞说明
漏洞类型:远程代码执行(RCE) / 整数溢出(Integer Overflow) 受影响组件:GitLab Community Edition (CE) 和 Enterprise Edition (EE) 的 CI/CD 正则表达式编译器(Regex Compiler) 危害等级:CVSS 10.0(最高危) 攻击条件:无需身份认证(Unauthenticated)。攻击者无需登录或获取任何账户权限,即可通过网络发起攻击。
2. 漏洞原理
该漏洞源于 GitLab 处理 CI/CD 配置文件中的正则表达式时的输入验证不足,导致正则表达式编译器(Regex Compiler)在解析、编译或评估时触发了整数溢出(Integer Overflow)。
攻击者可以通过精心构造恶意的正则表达式(嵌入在 CI/CD 配置中),触发底层的内存或逻辑缺陷。 成功利用后,攻击者能够在受影响的自建(Self-managed) GitLab 服务器上执行任意代码,进而可能导致整个服务器被完全沦陷、源代码泄露、CI/CD 密钥及部署凭证被窃取。
3. 影响
受影响对象:主要针对所有暴露在互联网上的自建/私有化部署服务。 云端影响:GitLab.com 已经完成了安全修复。 利用状态:根据官方及安全情报披露,截至漏洞发布时,暂无公开的 PoC(概念验证)代码,也暂未发现大规模在野利用(In-the-wild exploitation)的证据,但由于危害极高,安全风险不容小觑。
4. 修复与应对措施
GitLab 官方已经紧急发布了安全更新来修补该漏洞:
升级版本: 请立即将自建 GitLab 实例升级至修复版本:19.4.2、19.3.4、19.2.8(或更新版本) 临时缓解方案: 该漏洞没有有效的代码级临时规避手段(Workaround)。 如果无法立即升级,建议通过网络层访问控制(如防火墙、VPN、安全组限制 IP 白名单),严格限制对公网暴露的 GitLab 服务的访问。 建议安全团队排查最近的 CI/CD 配置文件,并排查是否有异常的正则表达式或敏感凭证泄漏迹象(如发现异常建议及时轮换 CI/CD 密钥)。