GitLabにCVSS 10.0の脆弱性「CVE-2026-97229」―認証不要で任意コード実行の恐れ、修正版を公開

セキュリティニュース

投稿日時: 更新日時:

GitLabにCVSS 10.0の脆弱性「CVE-2026-97229」―認証不要で任意コード実行の恐れ、修正版を公開

GitLabは2026年10月12日、GitLab Community Edition(CE)およびEnterprise Edition(EE)向けのセキュリティ更新を公開しました。CI/CD設定に含まれる正規表現を処理するコンパイラーに、認証を受けていない第三者による任意コード実行につながる可能性がある脆弱性「CVE-2026-97229」が存在します。GitLabが付けたCVSS v3.1の評価は最高値の10.0です。

Self-Managed(自社管理)環境では修正版への更新が必要です。GitLabが示す修正版は19.4.2、19.3.5、19.2.8です。9月に公開された別のCI/CD関連脆弱性とは異なり、今回のCVEは悪用に認証を必要としないと評価されています。

CVE-2026-97229のサマリー

  • 公表日:2026年10月12日
  • 対象製品:GitLab CE/EE
  • 脆弱性:CVE-2026-97229(CI/CDの正規表現コンパイラーにおける整数オーバーフロー)
  • 深刻度:Critical、CVSS v3.1 10.0
  • 想定される影響:特定条件下で、認証されていない攻撃者がGitLabサーバー上で任意コードを実行する可能性
  • 影響範囲:19.2系は19.2.8未満、19.3系は19.3.5未満、19.4系は19.4.2未満
  • 修正版:19.2.8、19.3.5、19.4.2
  • 対応対象:Self-Managed GitLabの利用組織。GitLab.comは修正済み、GitLab Dedicatedは利用者による対応不要
  • 発見・報告:研究者「joaxcar」氏がGitLabのHackerOneプログラムを通じて報告
項目 内容
CVE CVE-2026-97229
影響製品 GitLab CE/EE
分類 整数オーバーフロー(Integer Overflow)
CVSS v3.1 10.0(Critical)
攻撃の前提 認証不要。ただしGitLabが示す「特定条件下」で成立
影響 GitLabサーバーでの任意コード実行の可能性
修正版 19.4.2/19.3.5/19.2.8

CI/CD設定の正規表現処理で整数オーバーフロー

GitLabの説明によると、問題があるのはCI/CD設定内の正規表現を処理する機能です。正規表現の検証が不十分なため、細工された正規表現がコンパイラーに渡されると、整数オーバーフローが発生し、特定の条件でGitLabサーバー上の任意コード実行につながる可能性があります。

GitLabが示したCVSSベクターはCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:Hです。ネットワーク経由での攻撃を想定し、攻撃者側に認証権限や被害者による操作を必要としないと評価されています。ただし、どのような運用構成でも無条件に攻撃が成功するという意味ではありません。

GitLabは研究者「joaxcar」氏から報告を受けて修正しました。公式アドバイザリには、このCVEが実際の攻撃で悪用されたとの記述はありません。

GitLabはソースコードだけでなく、パイプライン設定や認証トークン、デプロイに利用する認証情報などを扱います。そのためサーバー自体で任意コード実行が成立した場合、GitLabへのアクセス被害に加え、開発・配布工程や連携先システムへの影響も調べる必要があります。ただし、これは脆弱性から想定されるリスクであり、今回そうした被害が発生したという発表ではありません。

修正版は19.4.2・19.3.5・19.2.8―19.3.4からの更新にも注意

GitLabの10月12日付公式更新情報では、影響するバージョンと修正版を次のように示しています。

使用している系列 影響を受けるバージョン 更新先
19.2系 19.2.0~19.2.7 19.2.8
19.3系 19.3.0~19.3.4 19.3.5
19.4系 19.4.0~19.4.1 19.4.2

19.3系では、当初の修正版として案内された19.3.4に、Ona連携を有効化した環境のマージリクエスト画面へ影響する不具合がありました。GitLabはこの問題を修正した19.3.5を公開しており、最新の公式案内は19.3.5への更新を推奨しています。10月12日付の記事や初期の注意喚起で19.3.4と記載されていても、現在の公式情報に従ってください。

GitLab.comには修正済みのバージョンが導入されており、GitLab Dedicatedの顧客にも利用者側での作業は不要と案内しています。一方、自社管理のGitLab環境については、GitLabが影響を受ける全インストールの速やかな更新を呼びかけています。

同時に24件を修正、CI/CD変数や保護ブランチにも関わる問題

今回のCritical Patch ReleaseはCVE-2026-97229を含む計24件のセキュリティ問題に対応しています。このうちCriticalが1件、Highが5件です。CI/CD運用に関わる主な修正内容には次のものがあります。

CVE 深刻度 GitLabが説明した主な影響
CVE-2026-92883 High/CVSS 8.7 細工されたリポジトリを通じた、他のユーザーのブラウザー上での任意JavaScript実行
CVE-2026-16301 High/CVSS 8.5 Developer権限のあるユーザーが、許可なく保護ブランチ上でCI/CDパイプラインを実行できる可能性
CVE-2026-14814 High/CVSS 8.2 リポジトリのrawファイルのキャッシュ汚染を通じ、CI/CDで細工された内容が実行され、保護された環境変数が露出する可能性
CVE-2026-96893 High/CVSS 7.3 GitLab Duo Agent Platformで、細工されたAIエージェント指示により他ユーザーに帰属する意図しないコマンド実行が起きる可能性

上記のHigh脆弱性には、認証や特定の権限、ユーザー操作など、CVE-2026-97229とは異なる成立条件があります。同じパッチに含まれていることだけで、すべてが無認証で悪用できるわけではありません。

9月23日に公開されたパッチでも、認証済みユーザーがCI/CD設定へ細工した正規表現を与えることで任意コード実行につながる別の脆弱性(CVE-2026-89078、CVE-2026-93577)が修正されています。9月の修正内容はGitLabの9月Critical Patch Releaseに関する既報で整理しています。

Self-Managed環境での確認と対応

GitLabの管理担当者は、公開された修正版を基準に次の項目を確認できます。

  1. 自社管理のGitLab CE/EEのバージョンと導入形態を棚卸しし、19.2系・19.3系・19.4系の影響範囲に該当するインスタンスを特定する。
  2. 外部公開されているインスタンスを優先し、公式のアップグレード手順に沿って19.2.8、19.3.5、19.4.2のいずれか、または後続の修正版へ更新する。
  3. 更新前にバックアップ、保守時間、利用しているRunnerや外部連携への影響を確認する。更新後は管理画面とパイプラインの動作を検証する。
  4. 過去のアクセスログやCI/CD設定変更履歴、予期しないパイプライン実行を点検し、不審な操作がないか調べる。ログ確認は更新の代わりにはならない。
  5. 調査で侵害が疑われる場合は、保存しているCI/CD変数、デプロイトークン、外部連携用シークレットの影響範囲を判断し、必要に応じて失効・再発行する。

GitLabのパッチリリースは複数の修正を同時に含むため、CVE-2026-97229だけでなく、各環境で利用している機能に該当するCVEの影響を確認する必要があります。多数の製品・システムの更新順を判断する際の考え方は、脆弱性管理とパッチ対応の運用プロセスで整理しています。

出典