Exploited vulnerability

GitLab CI/CD regular expression compiler remote code execution (CVE-2026-97229)

A critical integer overflow in the CI/CD regular expression compiler of GitLab Community Edition and Enterprise Edition.

CVE ID
CVE-2026-97229
CVSS
10.0 Critical (CVSS v3.1, GitLab)
Affected product
GitLab Community Edition and Enterprise Edition (self-managed)
Exploited
Unknown
Published
October 2026

In short

CVE-2026-97229 is a critical integer overflow in the CI/CD regular expression compiler of GitLab Community Edition and Enterprise Edition. GitLab says that under certain conditions an unauthenticated user could run arbitrary code on the server through a crafted regular expression in a CI/CD configuration. It is rated CVSS 10.0 and was fixed in 19.4.2, 19.3.5 and 19.2.8 on 12 October 2026.

Profile MapVulnerability
  1. CVECVE-2026-97229
  2. ProductGitLab GitLab Community Edition and Enterprise Edition (self-managed)
  3. Fix Steps4actions listedCheck your version · Skip ahead to the newer patch

What it allows

GitLab says an unauthenticated user could execute arbitrary code on the GitLab server through a specially crafted regular expression in a CI/CD configuration, because of insufficient regular expression validation. The CVSS vector is network, low complexity, no privileges, no user interaction and a changed scope.

Rapid7 reproduced code execution on the official GitLab 19.4.1 CE image with address space layout randomization on, and saw no execution on the patched 19.4.2 image. In its description, a regular expression first compiles in a compact US-ASCII form and passes GitLab's validation. It is then recompiled for UTF-8 when matched against a specially formed repository path, and an integer overflow in the compiler's program-size calculation produces invalid instructions. The command runs as the GitLab git user.

Rapid7 notes that its route needs the attacker to place a malicious CI/CD configuration and a specially named path in a public project first. On instances where new users can register and create projects, that step is easy. Rapid7 says this conflicts with the "no privileges" rating and that it does not know how the private report avoids it.

In Brandefense's dark web and Telegram monitoring, we found 23 posts naming this CVE between 12 and 22 October 2026. Seventeen repeat advisories or news and six point to public proof-of-concept repositories or report on them. GitHub search metadata showed three repositories claiming a proof of concept. Treat unverified repositories with care. We did not open or run any code.

Who is affected

GitLab CE and EE, all deployment types: all versions from 19.2 before 19.2.8, 19.3 before 19.3.5 and 19.4 before 19.4.2. Fixed in 19.2.8, 19.3.5 and 19.4.2. GitLab.com was already patched and Dedicated tenants did not need to act.

These fixed versions are not the end of the story. CVE-2026-110264, fixed by GitLab on 21 October 2026, affects 19.2.8, 19.3.5 and 19.4.2 as well. Move to 19.2.9, 19.3.6, 19.4.3 or 19.5.1.

Timeline

  1. 12 Oct 2026

    GitLab releases 19.4.2, 19.3.5 and 19.2.8 and lists six threat detections for self-managed customers.

  2. 13 Oct 2026

    The NVD record is published. Rapid7 publishes its alert, links a proof-of-concept repository and reports no confirmed exploitation in the wild.

  3. 14 Oct 2026

    The CISA coordinator entry on the NVD record marks exploitation as "none", automatable as "yes" and technical impact as "total".

  4. 16 Oct 2026

    Rapid7 publishes a technical analysis of one exploit route.

  5. 21 Oct 2026

    GitLab ships a further critical fix, CVE-2026-110264, in 19.4.3, 19.3.6, 19.2.9 and newer. The 12 October versions are affected by it.

What to do

  1. Check your version

    Open Help in the left sidebar and read the version. If it is below 19.2.8, 19.3.5 or 19.4.2 on those branches, you are exposed to this flaw.

  2. Skip ahead to the newer patch

    Do not stop at 19.4.2 or 19.3.5. Go to 19.5.1, 19.4.3, 19.3.6 or 19.2.9 so that CVE-2026-110264 is fixed too.

  3. Limit public project exposure if you must wait

    Rapid7 said restricting anonymous access to public projects and stopping untrusted users from creating or writing to public projects can reduce exposure to the route it showed. It does not fix the flaw.

  4. Review logs

    Rapid7 suggests looking in the Workhorse log for long CI lint API requests that end in HTTP 502, and for Puma worker crashes that mention regexp_matcher.rb. GitLab also lists six detections.

Questions

What is CVE-2026-97229?

It is a critical integer overflow in the GitLab CI/CD regular expression compiler. GitLab says it could let an unauthenticated user run code on the server. It is rated CVSS 10.0.

Which versions fix CVE-2026-97229?

GitLab 19.2.8, 19.3.5 and 19.4.2 fixed it on 12 October 2026. Versions before 19.2 are not listed as affected by this CVE.

Is 19.4.2 still safe to run?

Not fully. CVE-2026-110264, fixed on 21 October 2026, affects 19.4.2, 19.3.5 and 19.2.8. Upgrade to 19.4.3, 19.3.6, 19.2.9 or 19.5.1.

Is there a public proof of concept?

Rapid7 published one and links it from its alert. We also saw other repositories claiming the same, which we could not verify. Do not run code you have not read.

In our research

  1. GitLab CVE-2026-110264: Am I Affected and What to Do in the Next Hour October 2026

Sources

  1. GitLab Critical Patch Release: 19.4.2, 19.3.5, 19.2.8 GitLab
  2. CVE-2026-97229: Critical Unauthenticated Remote Code Execution in GitLab Rapid7
  3. Rapid7 Analysis: GitLab CI/CD Regex Integer Overflow (CVE-2026-97229) Rapid7
  4. CVE-2026-97229 NVD
  5. CVE-2026-97229 CVE Program
  6. Known Exploited Vulnerabilities catalog CISA
  7. CWE-190: Integer Overflow or Wraparound MITRE
  8. GitLab Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13 GitLab