情報取得日: 2026/09/04/最終確認: 2026/09/04・本ページは公開情報の非公式まとめです
| CVE ID | CVE-2026-19478 |
|---|---|
| 製品 | GitLab / GitLab Community Edition および Enterprise Edition。NVD の適用範囲は 18.2.0 以上 18.11.11 未満、19.0.0 以上 19.0.8 未満、19.1.0 以上 19.1.6 未満、19.2.0 以上 19.2.4 未満。18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 で修正されている。 |
| CVSS | 9.4(Critical) CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:H |
| 種別 (CWE) | CWE-94 コード生成の不適切な制御(コードインジェクション) |
| 登録/公開日 | 2026/09/04 |
| 出典 | https://nvd.nist.gov/vuln/detail/CVE-2026-19478 |
NVD の記述はこうである。「GitLab は、18.2 以上 18.11.11 未満、19.0 以上 19.0.8 未満、19.1 以上 19.1.6 未満、19.2 以上 19.2.4 未満のすべてのバージョンの GitLab CE/EE に影響する問題を修正した。特定の条件下で、**未認証のユーザーが GraphQL ディレクティブを介して公開プロジェクトとユーザーデータをリモートから改変または削除できる**可能性があった」。 **この欠陥の性質は「読める」ではなく「書ける」である。**CVSS ベクタが C:L / I:H / A:H になっているのがそれを示している。機密性への影響は Low にとどまる一方、**完全性と可用性が High** である。つまり、情報が漏れる話よりも、**公開プロジェクトの中身とユーザーデータが第三者に書き換えられる・消される**ことのほうが本体である。ソースコードのホスティングという用途を考えると、完全性が壊れることの意味は重い。 **PR:N(権限不要)と AV:N(ネットワーク経由)が同時に立っている。**ログインしていない相手が、ネットワーク越しに到達できるだけで成立する。自己ホストの GitLab をインターネットに公開している構成、あるいは公開プロジェクトを外部に見せている構成では、**攻撃に必要な前提条件が実質的に揃っている**と考えたほうがよい。 **入口は GraphQL のディレクティブである。**GitLab の GraphQL API は REST API とは別系統の入口で、認可の判定もそちらの実装に依存する。REST 側の権限設計をどれだけ丁寧に見ていても、GraphQL のディレクティブ処理に穴があればそこで迂回される。**「API を止めている」と思っている運用でも、GraphQL エンドポイントが空いていないかは別に確認する必要がある。** CWE-94(コードインジェクション)が割り当てられており、CVSS を採点しているのは GitLab 自身(cve@gitlab.com、Secondary)である。NVD の状態は Analyzed で、最終更新は 2026-09-02。**CISA KEV には 2026-09-04 時点で収載されていない**(悪用の確認は公表されていない)。ただし GitLab は攻撃者にとって価値の高い標的であり、修正版の公開から時間が経つほど差分解析による再現の難度は下がる。
各ベンダー公式アドバイザリで確認できた事実に基づき整理しています。確認できていない項目は「情報確認中」と明記し、存在しないパッチ番号・バージョンは記載しません。
| 環境 | 対応状況 | 対応方法・備考 |
|---|---|---|
| AWS (ECS/EC2) | パッチあり(アプリ更新) |
EC2 / ECS / EKS 上で自己ホストしている GitLab を、乗っている系統に応じて 18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 以上へ更新する。AWS のマネージドサービスではないため、クラウド側の対応を待つ性質のものではない。
更新までのあいだは、セキュリティグループと ALB のリスナールールで到達元を絞る。GraphQL は Web UI が依存しているためパス単位の遮断は実用にならない。ECS / EKS では可変タグを避け、修正版を明示したタグへ固定して上げること。
参照リンク
|
| GCP | パッチあり(アプリ更新) |
Compute Engine / GKE 上の GitLab を、乗っている系統に応じた修正版へ更新する。対応はアプリケーション側の更新である。
GKE では Ingress / Gateway 側で到達元を絞れる。IAP を前段に置いている構成なら未認証の到達自体が塞がるので、外部公開しているかどうかを先に確認する。
参照リンク
|
| Azure | パッチあり(アプリ更新) |
Azure VM / AKS 上の GitLab を、乗っている系統に応じた修正版へ更新する。プラットフォーム側の修正を待つものではない。
Application Gateway / Front Door を前段に置いている場合は、到達元の IP 制限で時間を稼げる。GraphQL のリクエスト選別による緩和は Web UI を壊すため推奨しない。
参照リンク
|
| Linux | パッチあり(アプリ更新) |
Omnibus パッケージ(deb / rpm)や Docker イメージ、Helm チャートで導入している場合、いずれも 18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 以上へ更新する。ディストリの標準リポジトリからは入らないため、OS の更新では直らない。
更新後に実際の版が上がっていることを確かめる。あわせて、公開プロジェクトへの想定外の force push・参照削除、ユーザーの SSH 公開鍵とアクセストークンの追加、GraphQL エンドポイントへの未認証リクエストの 2xx 応答を点検する。
参照リンク
|
対応は **GitLab を 18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 以上へ更新する**ことである。**自分がどの系統に乗っているかで上げ先が違う**点に注意する。18.2 系なら 18.11.11、19.0 系なら 19.0.8、19.1 系なら 19.1.6、19.2 系なら 19.2.4。GitLab はパッチリリースを系統ごとに出すので、最新版へ一気に上げる必要はない。 **更新が今すぐできない場合、最初に見るのは「未認証で到達できる範囲」である。**この欠陥は権限不要で成立するので、GitLab インスタンスをインターネットへ直接出しているかどうかが被害の広さを決める。VPN やゼロトラストプロキシの内側に入れているなら、外部からの単独成立は難しくなる。逆に、公開プロジェクトを外に見せるために GitLab 全体を公開している構成は、**更新が終わるまで書き換え可能な状態を晒している**ことになる。 **GraphQL エンドポイントへのアクセスを WAF で絞るのは、時間稼ぎとしてのみ有効である。**GraphQL は単一のエンドポイントにクエリを POST する形なので、パス単位の遮断は「GraphQL API を丸ごと止める」ことに等しい。GitLab の Web UI 自体が GraphQL に依存しているため、止めれば UI も壊れる。**緩和策として現実的なのは経路の制限であって、リクエストの選別ではない。** **更新後は改変の有無を確認する。**確認する順序は3つある。①公開プロジェクトのリポジトリに、身に覚えのない force push や参照の削除が無いか(`git reflog` と GitLab の監査イベントの両方を見る)。②ユーザーデータ(メールアドレス、SSH 公開鍵、アクセストークン)に追加・変更が無いか。**攻撃者が自分の SSH 鍵や PAT を仕込んでいれば、更新後も入り続けられる。**③GraphQL エンドポイントへの未認証リクエストのうち、2xx を返しているものが無いか。 **プロジェクトが消えている可能性も想定する。**可用性 High はそういう意味である。バックアップから復元できる体制になっているか、この機会に確かめておくとよい。
Critical(CVSS 9.4)に分類されるGitLab GitLab Community Edition および Enterprise Edition。NVD の適用範囲は 18.2.0 以上 18.11.11 未満、19.0.0 以上 19.0.8 未満、19.1.0 以上 19.1.6 未満、19.2.0 以上 19.2.4 未満。18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 で修正されている。の脆弱性です。NVD の記述はこうである。「GitLab は、18.2 以上 18.11.11 未満、19.0 以上 19.0.8 未満、19.1 以上 19.1.6 未満、19.2 以上 19.2.4 未満のすべてのバージョンの GitLab CE/EE に影響する問題を修正した。特定の条件下で、**未認証のユーザーが GraphQL ディレクティブを介して公開プロジェクトとユーザーデータをリモートから改変または削除できる**可能性があった」。 **この欠陥の性質は「読める」ではなく「書ける」である。**CVSS ベクタが C:L / I:H / A:H になっているのがそれを示している。機密性への影響は Low にとどまる一方、**完全性と可用性が High** である。つまり、情報が漏れる話よりも、**公開プロジェクトの中身とユーザーデータが第三者に書き換えられる・消される**ことのほうが本体である。ソースコードのホスティングという用途を考えると、完全性が壊れることの意味は重い。 **PR:N(権限不要)と AV:N(ネットワーク経由)が同時に立っている。**ログインしていない相手が、ネットワーク越しに到達できるだけで成立する。自己ホストの GitLab をインターネットに公開している構成、あるいは公開プロジェクトを外部に見せている構成では、**攻撃に必要な前提条件が実質的に揃っている**と考えたほうがよい。 **入口は GraphQL のディレクティブである。**GitLab の GraphQL API は REST API とは別系統の入口で、認可の判定もそちらの実装に依存する。REST 側の権限設計をどれだけ丁寧に見ていても、GraphQL のディレクティブ処理に穴があればそこで迂回される。**「API を止めている」と思っている運用でも、GraphQL エンドポイントが空いていないかは別に確認する必要がある。** CWE-94(コードインジェクション)が割り当てられており、CVSS を採点しているのは GitLab 自身(cve@gitlab.com、Secondary)である。NVD の状態は Analyzed で、最終更新は 2026-09-02。**CISA KEV には 2026-09-04 時点で収載されていない**(悪用の確認は公表されていない)。ただし GitLab は攻撃者にとって価値の高い標的であり、修正版の公開から時間が経つほど差分解析による再現の難度は下がる。
対応は **GitLab を 18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 以上へ更新する**ことである。**自分がどの系統に乗っているかで上げ先が違う**点に注意する。18.2 系なら 18.11.11、19.0 系なら 19.0.8、19.1 系なら 19.1.6、19.2 系なら 19.2.4。GitLab はパッチリリースを系統ごとに出すので、最新版へ一気に上げる必要はない。 **更新が今すぐできない場合、最初に見るのは「未認証で到達できる範囲」である。**この欠陥は権限不要で成立するので、GitLab インスタンスをインターネットへ直接出しているかどうかが被害の広さを決める。VPN やゼロトラストプロキシの内側に入れているなら、外部からの単独成立は難しくなる。逆に、公開プロジェクトを外に見せるために GitLab 全体を公開している構成は、**更新が終わるまで書き換え可能な状態を晒している**ことになる。 **GraphQL エンドポイントへのアクセスを WAF で絞るのは、時間稼ぎとしてのみ有効である。**GraphQL は単一のエンドポイントにクエリを POST する形なので、パス単位の遮断は「GraphQL API を丸ごと止める」ことに等しい。GitLab の Web UI 自体が GraphQL に依存しているため、止めれば UI も壊れる。**緩和策として現実的なのは経路の制限であって、リクエストの選別ではない。** **更新後は改変の有無を確認する。**確認する順序は3つある。①公開プロジェクトのリポジトリに、身に覚えのない force push や参照の削除が無いか(`git reflog` と GitLab の監査イベントの両方を見る)。②ユーザーデータ(メールアドレス、SSH 公開鍵、アクセストークン)に追加・変更が無いか。**攻撃者が自分の SSH 鍵や PAT を仕込んでいれば、更新後も入り続けられる。**③GraphQL エンドポイントへの未認証リクエストのうち、2xx を返しているものが無いか。 **プロジェクトが消えている可能性も想定する。**可用性 High はそういう意味である。バックアップから復元できる体制になっているか、この機会に確かめておくとよい。
GitLab GitLab Community Edition および Enterprise Edition。NVD の適用範囲は 18.2.0 以上 18.11.11 未満、19.0.0 以上 19.0.8 未満、19.1.0 以上 19.1.6 未満、19.2.0 以上 19.2.4 未満。18.11.11 / 19.0.8 / 19.1.6 / 19.2.4 で修正されている。 を利用している場合、稼働バージョンが影響範囲に含まれるかを一次情報(https://nvd.nist.gov/vuln/detail/CVE-2026-19478)で確認してください。AWS・GCP・Azure・Linux それぞれの対応状況は本ページの「クラウド/OS 別の対応状況」表にまとめています。確認できていない項目は「情報確認中」と明記しており、存在しないパッチ番号・バージョンは記載していません。
本ページの記載は下記の一次情報に基づく非公式まとめです。数値・対応状況は各出典元で最終確認してください(最終確認: 2026/09/04)。