{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "extracted_events": [
              {
                "cpe": "cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*",
                "range": [
                  {
                    "introduced": "3.3.0"
                  },
                  {
                    "fixed": "3.3.13"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*",
                "range": [
                  {
                    "introduced": "3.4.0"
                  },
                  {
                    "fixed": "3.4.12"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*",
                "range": [
                  {
                    "introduced": "4.0.0"
                  },
                  {
                    "fixed": "4.0.8"
                  }
                ],
                "source": "CPE_RANGE"
              }
            ]
          },
          "events": [
            {
              "introduced": "5124f9ac7513eb590c37717337c430cb93caa151"
            },
            {
              "fixed": "af48f08f2113db1cc4ee171f34e399d7a902151b"
            },
            {
              "introduced": "f45010833071b953744658842369e3496dfacb48"
            },
            {
              "fixed": "366f5fdc00cbd2e7997e03b6654d10163ff19bad"
            },
            {
              "introduced": "553f1675f3a9cece340b90f374a4245dccac2272"
            },
            {
              "fixed": "60c3d71bfbf9790229c682e26f8ec968f078c7da"
            }
          ],
          "repo": "https://github.com/ruby/ruby",
          "type": "GIT"
        },
        {
          "database_specific": {
            "extracted_events": [
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:community:*:*:*",
                "range": [
                  {
                    "introduced": "19.2.0"
                  },
                  {
                    "fixed": "19.2.8"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:enterprise:*:*:*",
                "range": [
                  {
                    "introduced": "19.2.0"
                  },
                  {
                    "fixed": "19.2.8"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:community:*:*:*",
                "range": [
                  {
                    "introduced": "19.3.0"
                  },
                  {
                    "fixed": "19.3.5"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:enterprise:*:*:*",
                "range": [
                  {
                    "introduced": "19.3.0"
                  },
                  {
                    "fixed": "19.3.5"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:community:*:*:*",
                "range": [
                  {
                    "introduced": "19.4.0"
                  },
                  {
                    "fixed": "19.4.2"
                  }
                ],
                "source": "CPE_RANGE"
              },
              {
                "cpe": "cpe:2.3:a:gitlab:gitlab:*:*:*:*:enterprise:*:*:*",
                "range": [
                  {
                    "introduced": "19.4.0"
                  },
                  {
                    "fixed": "19.4.2"
                  }
                ],
                "source": "CPE_RANGE"
              }
            ]
          },
          "events": [
            {
              "introduced": "68485a1eb627c9a992f266263157327649822db3"
            },
            {
              "fixed": "9a42f777a0147768457ebe684e13e69d54eee652"
            },
            {
              "introduced": "8f83039bebbbb61d3b7b8b7e2342d1deec1e14c6"
            },
            {
              "fixed": "ce7cbf1bcc4e49e98f209097d5081030e30410c5"
            },
            {
              "introduced": "fa703f93afaf1133cd263f6aa0e91d284d7f1ebf"
            },
            {
              "fixed": "9c053f678a4924425869b1b9e4bca3a44e45edf7"
            }
          ],
          "repo": "https://gitlab.com/gitlab-org/gitlab",
          "type": "GIT"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "GitLab",
    "cwe_ids": [
      "CWE-190"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97229.json"
  },
  "details": "GitLab has remediated an issue in GitLab CE/EE affecting all versions from 19.2 before 19.2.8, 19.3 before 19.3.5, and 19.4 before 19.4.2 that, under certain conditions, could have allowed an unauthenticated user to execute arbitrary code on the GitLab server via a specially crafted regular expression in a CI/CD configuration, due to insufficient regular expression validation.",
  "id": "CVE-2026-97229",
  "modified": "2026-11-04T02:30:20.811476328Z",
  "published": "2026-10-13T01:05:46.166Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-2-released/"
    },
    {
      "type": "WEB",
      "url": "https://gitlab.com/gitlab-org/gitlab/-/work_items/630686"
    },
    {
      "type": "WEB",
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-97229"
    },
    {
      "type": "WEB",
      "url": "https://www.ruby-lang.org/en/news/2026/10/23/regexp-fixes-for-gitlab-cves/"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97229.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-97229"
    },
    {
      "type": "REPORT",
      "url": "https://hackerone.com/reports/4055749"
    },
    {
      "type": "REPORT",
      "url": "https://hackerone.com/reports/4058589"
    },
    {
      "type": "FIX",
      "url": "https://github.com/rapid7/metasploit-framework/pull/22017"
    },
    {
      "type": "PACKAGE",
      "url": "https://gitlab.com/gitlab-org/gitlab"
    }
  ],
  "schema_version": "1.9.2",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "Integer Overflow or Wraparound in GitLab"
}