CVE-2026-97229
Integer Overflow or Wraparound in GitLab
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
10.0
Integer Overflow or Wraparound in GitLab
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.
- Record
CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
EUVDEUVD-2026-98214
10.0
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.
- Record
EUVD-2026-98214- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-9hj5-r43h-h3xg
10.0
GitLab has remediated an issue in GitLab CE/EE affecting all versions from 19.2 before 19.2.8, 19...
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.
- Record
GHSA-9hj5-r43h-h3xg- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
CISA KEV No score
GitLab Community Edition and Enterprise Edition Integer Overflow or Wraparound Vulnerability
GitLab Community Edition and Enterprise Edition contain a integer overflow or wraparound vulnerability that could allow 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.
- Record
CVE-2026-97229- Weakness
- CWE-190
- Updated
- 2026-11-02
NVD
10.0
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.
- Record
CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
OSVALPINE-CVE-2026-97229
10.0
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.
- Record
ALPINE-CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-03
Show 15 moreShow less
OSVBELL-CVE-2026-97229
10.0
- Record
BELL-CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-02
OSV
10.0
Integer Overflow or Wraparound in GitLab
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.
- Record
CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-05
OSVDEBIAN-CVE-2026-97229
10.0
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.
- Record
DEBIAN-CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-07
OSVUBUNTU-CVE-2026-97229
10.0
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.
- Record
UBUNTU-CVE-2026-97229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-02
OSVAZL-111074 No score
CVE-2026-97229 affecting package ruby for versions less than 3.3.13-0
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.
- Record
AZL-111074- Updated
- 2026-11-02
OSVBIT-gitlab-2026-97229 No score
Integer Overflow or Wraparound in GitLab
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.
- Record
BIT-gitlab-2026-97229- Updated
- 2026-11-02
OSVCLSA-2026-1792788765 No score
ruby: Fix of 3 CVEs
- CVE-2026-93577, CVE-2026-97229: fix integer overflow in the regexp compiler's quantifier expansion and program size checks
- CVE-2026-110264: reject regexps whose repeat or null-check IDs overflow
- Record
CLSA-2026-1792788765- Updated
- 2026-11-02
OSVCLSA-2026-1792788996 No score
ruby: Fix of 3 CVEs
- CVE-2026-93577, CVE-2026-97229: fix integer overflow in the regexp compiler's quantifier expansion and program size checks
- CVE-2026-110264: reject regexps whose repeat or null-check IDs overflow
- Record
CLSA-2026-1792788996- Updated
- 2026-11-02
OSVCLSA-2026-1792795468 No score
Fix CVE(s): CVE-2026-110264, CVE-2026-93577, CVE-2026-97229
- SECURITY UPDATE: out-of-bounds repeat stack access in huge regexps
- debian/patches/CVE-2026-110264.patch: reject patterns whose range repeat or null check IDs overflow in regcomp.c, regerror.c.
- CVE-2026-110264
- SECURITY UPDATE: wrapped jump offsets in the regexp compiler
- debian/patches/CVE-2026-93577-CVE-2026-97229.patch: check the quantifier expansion size without int overflow and reject programs too big for their offset type in regcomp.c, regint.h, regerror.c.
- CVE-2026-93577
- CVE-2026-97229
- Fix build-time test failures:
- debian/patches/exclude-tests-failing-on-build-system.patch: skip the DTrace probe and permission tests, which fail when the test suite runs as root, the TLS tests whose test certificates expired and the Asia/Singapore tests that do not match the installed tzdata
- Record
CLSA-2026-1792795468- Updated
- 2026-11-02
OSVCLSA-2026-1792795609 No score
Fix CVE(s): CVE-2026-110264, CVE-2026-93577, CVE-2026-97229
- SECURITY UPDATE: out-of-bounds repeat stack access in regexps
- debian/patches/CVE-2026-110264.patch: reject patterns whose range-repeat or null-check count overflows the ID type in regcomp.c
- CVE-2026-110264
- SECURITY UPDATE: wrapped jump offsets in compiled regexps
- debian/patches/CVE-2026-93577-CVE-2026-97229.patch: check quantifier expansion without int overflow and cap program size in regcomp.c
- CVE-2026-93577
- CVE-2026-97229
- Fix build-time test failures:
- debian/tests/excludes: skip the DTrace probe and two permission tests, which fail when the test suite runs as root, the TLS tests whose test certificates expired and the EADDRINUSE local bind tests
- Record
CLSA-2026-1792795609- Updated
- 2026-11-02
OSVCLSA-2026-1792795786 No score
Fix CVE(s): CVE-2026-110264, CVE-2026-93577, CVE-2026-97229
- SECURITY UPDATE: out-of-bounds repeat stack access in Onigmo
- debian/patches/CVE-2026-110264.patch: reject patterns whose range-repeat or null-check count overflows the internal ID type in include/ruby/onigmo.h, regcomp.c, regerror.c.
- CVE-2026-110264
- SECURITY UPDATE: wrapped jump offsets in Onigmo
- debian/patches/CVE-2026-93577-CVE-2026-97229.patch: check the quantifier expansion size without integer overflow and reject compiled programs too big for their offset type in regcomp.c, regint.h.
- CVE-2026-93577
- CVE-2026-97229
- Record
CLSA-2026-1792795786- Updated
- 2026-11-02
OSVCLSA-2026-1792798327 No score
Fix CVE(s): CVE-2026-110264, CVE-2026-93577, CVE-2026-97229
- SECURITY UPDATE: integer overflow when compiling crafted regexps
- debian/patches/CVE-2026-110264.patch: reject overflowed range-repeat and null-check IDs in huge regexps
- CVE-2026-110264
- SECURITY UPDATE: integer overflow when compiling crafted regexps
- debian/patches/CVE-2026-93577-CVE-2026-97229.patch: avoid overflow in the quantifier expansion size check and reject a compiled program too big for its offset type
- CVE-2026-93577
- CVE-2026-97229
- Fix build-time test failures:
- debian/patches/fix-timezone-tests-and-update-expired-certs.patch: replace the expired test certificates and follow the installed tzdata in the Asia/Singapore checks
- debian/patches/fix-eaddrinuse-race-in-port0-tests.patch: avoid EADDRINUSE races in tests that listen on a random port
- debian/tests/excludes: skip the DTrace probe tests and two permission tests, which fail when the test suite runs as root
- Record
CLSA-2026-1792798327- Updated
- 2026-11-02
OSVCLSA-2026-1792800480 No score
ruby: Fix of 3 CVEs
- CVE-2026-110264: regexp: fix out-of-bounds repeat stack access in Onigmo by rejecting patterns whose range-repeat or null-check count overflows the internal ID type
- CVE-2026-93577, CVE-2026-97229: regexp: fix wrapped jump offsets in Onigmo by checking the quantifier expansion size without integer overflow and rejecting compiled programs too big for their offset type
- Record
CLSA-2026-1792800480- Updated
- 2026-11-02
OSVCLSA-2026-1792801476 No score
ruby: Fix of 3 CVEs
- CVE-2026-110264: regexp: fix out-of-bounds repeat stack access in Onigmo by rejecting patterns whose range-repeat or null-check count overflows the internal ID type
- CVE-2026-93577, CVE-2026-97229: regexp: fix wrapped jump offsets in Onigmo by checking the quantifier expansion size without integer overflow and rejecting compiled programs too big for their offset type
- Record
CLSA-2026-1792801476- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:12252-1 No score
libruby4_0-4_0-4.0.9-1.1 on GA media
These are all security issues fixed in the libruby4_0-4_0-4.0.9-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12252-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
rubyAlpine:v3.21 |
3.3.0 up to 3.3.13-r0 | 3.3.13-r0 |
rubyAlpine:v3.22 |
3.3.0 up to 3.4.12-r0 | 3.4.12-r0 |
rubyAlpine:v3.23 |
3.3.0 up to 3.4.12-r0 | 3.4.12-r0 |
rubyAlpine:v3.24 |
3.3.0 up to 3.4.12-r0 | 3.4.12-r0 |
rubyAzure Linux:3 |
before 3.3.13-0 | 3.3.13-0 |
rubyAlpaquita:23 |
3.1.2-r1 up to 3.3.13-r0 | 3.3.13-r0 |
rubyAlpaquita:25 |
3.4.4-r0 up to 3.4.12-r0 | 3.4.12-r0 |
rubyAlpaquita:stream |
3.1.2-r1 up to 3.4.12-r0 | 3.4.12-r0 |
gitlabBitnami |
19.2.0 up to 19.2.8, 19.3.0 up to 19.3.5, 19.4.0 up to 19.4.2 | 19.2.819.3.519.4.2 |
rubyTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
Show 95 moreShow less
| Package | Affected | Fixed |
|---|---|---|
ruby-develTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-docTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-irbTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-libsTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-tcltkTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
rubygem-bigdecimalTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 1.2.0-39.0.1.el7_9.tuxcare.els2 | 1.2.0-39.0.1.el7_9.tuxcare.els2 |
rubygem-io-consoleTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 0.4.2-39.0.1.el7_9.tuxcare.els2 | 0.4.2-39.0.1.el7_9.tuxcare.els2 |
rubygem-jsonTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 1.7.7-39.0.1.el7_9.tuxcare.els2 | 1.7.7-39.0.1.el7_9.tuxcare.els2 |
rubygem-minitestTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 4.3.2-39.0.1.el7_9.tuxcare.els2 | 4.3.2-39.0.1.el7_9.tuxcare.els2 |
rubygem-psychTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.0-39.0.1.el7_9.tuxcare.els2 | 2.0.0-39.0.1.el7_9.tuxcare.els2 |
rubygem-rakeTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 0.9.6-39.0.1.el7_9.tuxcare.els2 | 0.9.6-39.0.1.el7_9.tuxcare.els2 |
rubygem-rdocTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 4.0.0-39.0.1.el7_9.tuxcare.els2 | 4.0.0-39.0.1.el7_9.tuxcare.els2 |
rubygemsTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.14.1-39.0.1.el7_9.tuxcare.els2 | 2.0.14.1-39.0.1.el7_9.tuxcare.els2 |
rubygems-develTuxCare:RHEL:7 From an advisory covering 3 CVEs |
before 2.0.14.1-39.0.1.el7_9.tuxcare.els2 | 2.0.14.1-39.0.1.el7_9.tuxcare.els2 |
rubyTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-develTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-docTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-irbTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-libsTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
ruby-tcltkTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0.648-39.0.1.el7_9.tuxcare.els2 | 2.0.0.648-39.0.1.el7_9.tuxcare.els2 |
rubygem-bigdecimalTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 1.2.0-39.0.1.el7_9.tuxcare.els2 | 1.2.0-39.0.1.el7_9.tuxcare.els2 |
rubygem-io-consoleTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 0.4.2-39.0.1.el7_9.tuxcare.els2 | 0.4.2-39.0.1.el7_9.tuxcare.els2 |
rubygem-jsonTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 1.7.7-39.0.1.el7_9.tuxcare.els2 | 1.7.7-39.0.1.el7_9.tuxcare.els2 |
rubygem-minitestTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 4.3.2-39.0.1.el7_9.tuxcare.els2 | 4.3.2-39.0.1.el7_9.tuxcare.els2 |
rubygem-psychTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.0-39.0.1.el7_9.tuxcare.els2 | 2.0.0-39.0.1.el7_9.tuxcare.els2 |
rubygem-rakeTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 0.9.6-39.0.1.el7_9.tuxcare.els2 | 0.9.6-39.0.1.el7_9.tuxcare.els2 |
rubygem-rdocTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 4.0.0-39.0.1.el7_9.tuxcare.els2 | 4.0.0-39.0.1.el7_9.tuxcare.els2 |
rubygemsTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.14.1-39.0.1.el7_9.tuxcare.els2 | 2.0.14.1-39.0.1.el7_9.tuxcare.els2 |
rubygems-develTuxCare:OracleLinux:7 From an advisory covering 3 CVEs |
before 2.0.14.1-39.0.1.el7_9.tuxcare.els2 | 2.0.14.1-39.0.1.el7_9.tuxcare.els2 |
libruby2.3TuxCare:Ubuntu:16.04 From an advisory covering 3 CVEs |
before 2.3.1-2~ubuntu16.04.16+tuxcare.els1 | 2.3.1-2~ubuntu16.04.16+tuxcare.els1 |
ruby2.3TuxCare:Ubuntu:16.04 From an advisory covering 3 CVEs |
before 2.3.1-2~ubuntu16.04.16+tuxcare.els1 | 2.3.1-2~ubuntu16.04.16+tuxcare.els1 |
ruby2.3-devTuxCare:Ubuntu:16.04 From an advisory covering 3 CVEs |
before 2.3.1-2~ubuntu16.04.16+tuxcare.els1 | 2.3.1-2~ubuntu16.04.16+tuxcare.els1 |
ruby2.3-docTuxCare:Ubuntu:16.04 From an advisory covering 3 CVEs |
before 2.3.1-2~ubuntu16.04.16+tuxcare.els1 | 2.3.1-2~ubuntu16.04.16+tuxcare.els1 |
ruby2.3-tcltkTuxCare:Ubuntu:16.04 From an advisory covering 3 CVEs |
before 2.3.1-2~ubuntu16.04.16+tuxcare.els1 | 2.3.1-2~ubuntu16.04.16+tuxcare.els1 |
libruby2.5TuxCare:Ubuntu:18.04 From an advisory covering 3 CVEs |
before 2.5.1-1ubuntu1.16+tuxcare.els1 | 2.5.1-1ubuntu1.16+tuxcare.els1 |
ruby2.5TuxCare:Ubuntu:18.04 From an advisory covering 3 CVEs |
before 2.5.1-1ubuntu1.16+tuxcare.els1 | 2.5.1-1ubuntu1.16+tuxcare.els1 |
ruby2.5-devTuxCare:Ubuntu:18.04 From an advisory covering 3 CVEs |
before 2.5.1-1ubuntu1.16+tuxcare.els1 | 2.5.1-1ubuntu1.16+tuxcare.els1 |
ruby2.5-docTuxCare:Ubuntu:18.04 From an advisory covering 3 CVEs |
before 2.5.1-1ubuntu1.16+tuxcare.els1 | 2.5.1-1ubuntu1.16+tuxcare.els1 |
libruby2.7TuxCare:Ubuntu:20.04 From an advisory covering 3 CVEs |
before 2.7.0-5ubuntu1.18+tuxcare.els1 | 2.7.0-5ubuntu1.18+tuxcare.els1 |
ruby2.7TuxCare:Ubuntu:20.04 From an advisory covering 3 CVEs |
before 2.7.0-5ubuntu1.18+tuxcare.els1 | 2.7.0-5ubuntu1.18+tuxcare.els1 |
ruby2.7-devTuxCare:Ubuntu:20.04 From an advisory covering 3 CVEs |
before 2.7.0-5ubuntu1.18+tuxcare.els1 | 2.7.0-5ubuntu1.18+tuxcare.els1 |
ruby2.7-docTuxCare:Ubuntu:20.04 From an advisory covering 3 CVEs |
before 2.7.0-5ubuntu1.18+tuxcare.els1 | 2.7.0-5ubuntu1.18+tuxcare.els1 |
libruby2.5TuxCare:Debian:10 From an advisory covering 3 CVEs |
before 2.5.5-3+deb10u6+tuxcare.els1 | 2.5.5-3+deb10u6+tuxcare.els1 |
ruby2.5TuxCare:Debian:10 From an advisory covering 3 CVEs |
before 2.5.5-3+deb10u6+tuxcare.els1 | 2.5.5-3+deb10u6+tuxcare.els1 |
ruby2.5-devTuxCare:Debian:10 From an advisory covering 3 CVEs |
before 2.5.5-3+deb10u6+tuxcare.els1 | 2.5.5-3+deb10u6+tuxcare.els1 |
ruby2.5-docTuxCare:Debian:10 From an advisory covering 3 CVEs |
before 2.5.5-3+deb10u6+tuxcare.els1 | 2.5.5-3+deb10u6+tuxcare.els1 |
rubyTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.4-160.el9_2.tuxcare.els22 | 3.0.4-160.el9_2.tuxcare.els22 |
ruby-default-gemsTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.4-160.el9_2.tuxcare.els22 | 3.0.4-160.el9_2.tuxcare.els22 |
ruby-develTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.4-160.el9_2.tuxcare.els22 | 3.0.4-160.el9_2.tuxcare.els22 |
ruby-docTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.4-160.el9_2.tuxcare.els22 | 3.0.4-160.el9_2.tuxcare.els22 |
ruby-libsTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.4-160.el9_2.tuxcare.els22 | 3.0.4-160.el9_2.tuxcare.els22 |
rubygem-bigdecimalTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.0.0-160.el9_2.tuxcare.els22 | 3.0.0-160.el9_2.tuxcare.els22 |
rubygem-bundlerTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 2.2.33-160.el9_2.tuxcare.els22 | 2.2.33-160.el9_2.tuxcare.els22 |
rubygem-io-consoleTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 0.5.7-160.el9_2.tuxcare.els22 | 0.5.7-160.el9_2.tuxcare.els22 |
rubygem-irbTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 1.3.5-160.el9_2.tuxcare.els22 | 1.3.5-160.el9_2.tuxcare.els22 |
rubygem-jsonTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 2.5.1-160.el9_2.tuxcare.els22 | 2.5.1-160.el9_2.tuxcare.els22 |
rubygem-minitestTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 5.14.2-160.el9_2.tuxcare.els22 | 5.14.2-160.el9_2.tuxcare.els22 |
rubygem-power_assertTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 1.2.0-160.el9_2.tuxcare.els22 | 1.2.0-160.el9_2.tuxcare.els22 |
rubygem-psychTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.3.2-160.el9_2.tuxcare.els22 | 3.3.2-160.el9_2.tuxcare.els22 |
rubygem-rakeTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 13.0.3-160.el9_2.tuxcare.els22 | 13.0.3-160.el9_2.tuxcare.els22 |
rubygem-rbsTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 1.4.0-160.el9_2.tuxcare.els22 | 1.4.0-160.el9_2.tuxcare.els22 |
rubygem-rdocTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 6.3.3-160.el9_2.tuxcare.els22 | 6.3.3-160.el9_2.tuxcare.els22 |
rubygem-rexmlTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.3.3-160.el9_2.tuxcare.els22 | 3.3.3-160.el9_2.tuxcare.els22 |
rubygem-rssTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 0.2.9-160.el9_2.tuxcare.els22 | 0.2.9-160.el9_2.tuxcare.els22 |
rubygem-test-unitTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.3.7-160.el9_2.tuxcare.els22 | 3.3.7-160.el9_2.tuxcare.els22 |
rubygem-typeprofTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 0.15.2-160.el9_2.tuxcare.els22 | 0.15.2-160.el9_2.tuxcare.els22 |
rubygemsTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.2.33-160.el9_2.tuxcare.els22 | 3.2.33-160.el9_2.tuxcare.els22 |
rubygems-develTuxCare:AlmaLinux:9.2 From an advisory covering 3 CVEs |
before 3.2.33-160.el9_2.tuxcare.els22 | 3.2.33-160.el9_2.tuxcare.els22 |
rubyTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.7-165.el9_6.tuxcare.els10 | 3.0.7-165.el9_6.tuxcare.els10 |
ruby-default-gemsTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.7-165.el9_6.tuxcare.els10 | 3.0.7-165.el9_6.tuxcare.els10 |
ruby-develTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.7-165.el9_6.tuxcare.els10 | 3.0.7-165.el9_6.tuxcare.els10 |
ruby-docTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.7-165.el9_6.tuxcare.els10 | 3.0.7-165.el9_6.tuxcare.els10 |
ruby-libsTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.7-165.el9_6.tuxcare.els10 | 3.0.7-165.el9_6.tuxcare.els10 |
rubygem-bigdecimalTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.0.0-165.el9_6.tuxcare.els10 | 3.0.0-165.el9_6.tuxcare.els10 |
rubygem-bundlerTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 2.2.33-165.el9_6.tuxcare.els10 | 2.2.33-165.el9_6.tuxcare.els10 |
rubygem-io-consoleTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 0.5.7-165.el9_6.tuxcare.els10 | 0.5.7-165.el9_6.tuxcare.els10 |
rubygem-irbTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 1.3.5-165.el9_6.tuxcare.els10 | 1.3.5-165.el9_6.tuxcare.els10 |
rubygem-jsonTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 2.5.1-165.el9_6.tuxcare.els10 | 2.5.1-165.el9_6.tuxcare.els10 |
rubygem-minitestTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 5.14.2-165.el9_6.tuxcare.els10 | 5.14.2-165.el9_6.tuxcare.els10 |
rubygem-power_assertTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 1.2.1-165.el9_6.tuxcare.els10 | 1.2.1-165.el9_6.tuxcare.els10 |
rubygem-psychTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.3.2-165.el9_6.tuxcare.els10 | 3.3.2-165.el9_6.tuxcare.els10 |
rubygem-rakeTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 13.0.3-165.el9_6.tuxcare.els10 | 13.0.3-165.el9_6.tuxcare.els10 |
rubygem-rbsTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 1.4.0-165.el9_6.tuxcare.els10 | 1.4.0-165.el9_6.tuxcare.els10 |
rubygem-rdocTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 6.3.4.1-165.el9_6.tuxcare.els10 | 6.3.4.1-165.el9_6.tuxcare.els10 |
rubygem-rexmlTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.2.5-165.el9_6.tuxcare.els10 | 3.2.5-165.el9_6.tuxcare.els10 |
rubygem-rssTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 0.2.9-165.el9_6.tuxcare.els10 | 0.2.9-165.el9_6.tuxcare.els10 |
rubygem-test-unitTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.3.7-165.el9_6.tuxcare.els10 | 3.3.7-165.el9_6.tuxcare.els10 |
rubygem-typeprofTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 0.15.2-165.el9_6.tuxcare.els10 | 0.15.2-165.el9_6.tuxcare.els10 |
rubygemsTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.2.33-165.el9_6.tuxcare.els10 | 3.2.33-165.el9_6.tuxcare.els10 |
rubygems-develTuxCare:AlmaLinux:9.6 From an advisory covering 3 CVEs |
before 3.2.33-165.el9_6.tuxcare.els10 | 3.2.33-165.el9_6.tuxcare.els10 |
ruby3.1Debian:12 |
All versions, plus listed versions 3.1.2-73.1.2-7+deb12u13.1.2-7+hurd.13.1.2-83.1.2-8.1~exp13.1.2-8.33.1.2-8.43.1.2-8.5 |
None known |
ruby3.3Debian:13 |
before 3.3.13-0+deb13u1, plus listed versions 3.3.8-23.3.8-2.13.3.8-2.2 |
3.3.13-0+deb13u1 |
ruby3.3Debian:14 |
All versions, plus listed versions 3.3.8-23.3.8-2.13.3.8-2.2 |
None known |
gitlabUbuntu:16.04:LTS |
All versions, plus listed versions 8.4.3+dfsg-98.4.3+dfsg-128.5.8+dfsg-5 |
None known |
ruby4.0openSUSE:Tumbleweed From an advisory covering 2 CVEs |
before 4.0.9-1.1 | 4.0.9-1.1 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Metasploit | GitLab CI/CD RegExp Integer Overflow Remote Code Execution | 2026-10-12 |
| PoC in GitHub | AmpedWasTaken/CVE-2026-97229-GitLab-CI-CD-Regex-Compiler-RCE | 2026-10-13 |
| PoC in GitHub | jburgess-r7/CVE-2026-97229-PoC | 2026-10-13 |
| PoC in GitHub | gandli/cve-2026-97229-lab | 2026-10-17 |
| PoC in GitHub | Noshadi-sec/CVE-2026-97229 | 2026-10-26 |
| PoC in GitHub | murat-levi/gitlab-rce-toolkit | 2026-10-29 |
| PoC in GitHub | foxcornlab/gitlab-onigmo-scanner | 2026-10-30 |
| PoC in GitHub | emc-kk/cve-2026-97229-lab | 2026-11-03 |
| PoC in GitHub | Certbn/CVE-2026-97229-GitLab-CI-CD | 2026-11-04 |
| PoC in GitHub | Ghost-Bx1/cve-2026-97229-gitlab-ci-rce | 2026-11-06 |
| Nuclei | GitLab CE/EE < 19.2.8 / 19.3.5 / 19.4.2 - Unauthenticated RCE via Onigmo Integer Overflow |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | OSV | |
| exploits | PoC in GitHub | |
| affected | ||
| exploits | OSV, PoC in GitHub | |
| exploits | OSV, PoC in GitHub | |
| exploits | Nuclei | |
| exploitation | OSV | |
| affected, exploits | OSV | |
| products, references | NVD | |
| first indexed | CVE List, EUVD, GitHub Advisories, CISA KEV, Metasploit, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-97229 is a critical vulnerability (CVSS 10.0) in Gitlab, published October 13, 2026. CISA lists it as known to be exploited, since October 29, 2026. EUVD reports exploitation since October 29, 2026. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 65.2%, the 99th percentile. Fixed in ruby 3.3.13-r0.
References
gitlab.com/gitlab-org/gitlab/-/work_items/630686
hackerone.com/reports/4055749
hackerone.com/reports/4058589
docs.gitlab.com/releases/patches/patch-release-gitlab-19-4-2-released
cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-97229
github.com/rapid7/metasploit-framework/pull/22017
Show 23 moreShow less
ruby-lang.org/en/news/2026/10/23/regexp-fixes-for-gitlab-cves
nvd.nist.gov/vuln/detail/CVE-2026-97229
github.com/advisories/GHSA-9hj5-r43h-h3xg
security.alpinelinux.org/vuln/CVE-2026-97229
docs.bell-sw.com/security/cves/CVE-2026-97229
errata.tuxcare.com/els_os/rhel7els/CLSA-2026-1792788765.html
nvd.nist.gov/vuln/detail/CVE-2026-110264
nvd.nist.gov/vuln/detail/CVE-2026-93577
errata.tuxcare.com/els_os/oraclelinux7els/CLSA-2026-1792788996.html
errata.tuxcare.com/els_os/ubuntu16.04els/CLSA-2026-1792795468.html
errata.tuxcare.com/els_os/ubuntu18.04els/CLSA-2026-1792795609.html
errata.tuxcare.com/els_os/ubuntu20.04els/CLSA-2026-1792795786.html
errata.tuxcare.com/els_os/debian10els/CLSA-2026-1792798327.html
errata.tuxcare.com/els_os/almalinux9.2esu/CLSA-2026-1792800480.html
errata.tuxcare.com/els_os/tuxcare9.6esu/CLSA-2026-1792801476.html
github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97229.json
gitlab.com/gitlab-org/gitlab
security-tracker.debian.org/tracker/CVE-2026-97229
ubuntu.com/security/CVE-2026-97229
cve.org/CVERecord?id=CVE-2026-97229
cisa.gov/known-exploited-vulnerabilities-catalog
suse.com/security/cve/CVE-2026-89078
suse.com/security/cve/CVE-2026-97229