• ひとことでGitLab で、細工した正規表現から、攻撃者が選んだプログラムを動かされてしまう弱点です。
  • 深刻度10.0 緊急CVSS v3.1
  • まずやること自分で管理している GitLab の版を確かめる

何をすればいいかを詳しく読む

基本情報(データから表示)

CVE番号CVE-2026-97229
製品GitLab Community Edition and Enterprise Edition
深刻度(CVSS)10.0 緊急CVSS v3.1
NVD に登録された、他の機関(開発元など)による評価
詳細(ベクター)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
KEVへの追加日2026-10-29
米国政府機関の対応期限2026-11-01
ランサムウェアでの悪用不明(確認されていない)
弱点の種類(CWE)CWE-190(整数オーバーフロー(桁あふれ))

何が起きた

ソフトウェア開発の管理に使う GitLab の、CI/CD(プログラムの組み立てや確認を自動で行うしくみ)の設定にある正規表現(文字の並びのパターン)の処理に、数値のあふれ(整数オーバーフロー)の弱点が見つかり、アメリカの CISA が実際に悪用されていることを確認しています。GitLab によると、条件によっては、ログインしていない攻撃者が、細工した正規表現を使って GitLab のサーバーで任意のコード(攻撃者が好きに選べるプログラム)を実行できたおそれがあります。GitLab は、原因を正規表現の確かめ方が不十分だったためとしています。Ruby のお知らせによると、この弱点のもとは、GitLab が使っている Ruby の正規表現の部品(Onigmo)の、組み立てたパターンの大きさの整数オーバーフローで、GitLab は、細工したパターンを Ruby が組み立てる途中でメモリが壊れることを見つけました。

攻撃の流れ

データをもとに、AIを使用して作成した図です。実際の攻撃は、これと異なる場合があります。

攻撃の流れ: 1. 攻撃者が細工した正規表現を用意する → 2. CI/CD の設定を通して GitLab に処理させる → 3. 正規表現を組み立てる途中でメモリが壊れる → 4. GitLab のサーバーでプログラムを動かされる1攻撃者が細工した正規表現を用意する2CI/CD の設定を通して GitLab に処理させる3正規表現を組み立てる途中でメモリが壊れる4GitLab のサーバーでプログラムを動かされる攻撃の流れ: 1. 攻撃者が細工した正規表現を用意する → 2. CI/CD の設定を通して GitLab に処理させる → 3. 正規表現を組み立てる途中でメモリが壊れる → 4. GitLab のサーバーでプログラムを動かされる1攻撃者が細工した正規表現を用意する2CI/CD の設定を通して GitLab に処理させる3正規表現を組み立てる途中でメモリが壊れる4GitLab のサーバーでプログラムを動かされる攻撃の流れ: 1. 攻撃者が細工した正規表現を用意する → 2. CI/CD の設定を通して GitLab に処理させる → 3. 正規表現を組み立てる途中でメモリが壊れる → 4. GitLab のサーバーでプログラムを動かされる1攻撃者が細工した正規表現を用意する2CI/CD の設定を通して GitLab に処理させる3正規表現を組み立てる途中でメモリが壊れる4GitLab のサーバーでプログラムを動かされる

誰が影響を受ける

自分のサーバーに GitLab Community Edition(CE)や Enterprise Edition(EE)を入れて使っている組織が対象です。GitLab によると、影響を受けるのは 19.2 から 19.2.8 より前、19.3 から 19.3.5 より前、19.4 から 19.4.2 より前の版です。GitLab.com と GitLab Dedicated は、GitLab がすでに対策しています。なお、CISA は、同じ Ruby(Onigmo)の不具合がほかの製品にも影響するおそれがあるとしています。Ruby によると、影響を受けるのは、攻撃者が操れる文字列から正規表現を組み立てるアプリだけで、開発者が自分で書いた正規表現だけを使うアプリは影響を受けません。

何をすればいい

GitLab の公式の案内を確認し、自分で管理している GitLab を 19.4.2、19.3.5、19.2.8 以降に更新してください。GitLab は、影響を受ける版を使っているすべての環境を、できるだけ早く最新の版に更新するよう強く勧めています。GitLab の修正は GitLab の更新に含まれます。これとは別に、攻撃者が操れる文字列から正規表現を組み立てる Ruby のアプリを作っている場合は、Ruby の公式の案内に従い、Ruby を 4.0.9、3.4.12、3.3.13 以降に更新してください。すぐに更新できない場合、Ruby は、信頼できない入力から正規表現を組み立てないよう案内しています。

やることチェックリスト

  • 自分で管理している GitLab の版を確かめる
  • GitLab を 19.4.2・19.3.5・19.2.8 以降に更新する
  • 外部の文字列で正規表現を作るアプリは Ruby を更新する

用語メモ

正規表現
「数字が3つ続く」のような、文字の並びのパターンを書き表す方法です。文字の検索や入力のチェックに使われます。
CI/CD
プログラムの組み立て・確認・公開を自動で行うしくみです。GitLab では、設定ファイルに手順を書いて使います。
整数オーバーフロー 用語集で見る
計算の結果が、入れ物に入る数の大きさを超えてしまうことです。数がおかしな値になり、メモリを壊す原因になることがあります。

次に読む

公式情報と元データ

公式情報

元データ(英語・CISA KEV より)を開く

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.

推奨対応

Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.

この元データの出どころ: CISA KEV カタログで見る