eSecurity Planet の内容および製品に関する推奨事項は、編集上の独立性を保っています。当サイトはパートナーへのリンクをクリックいただくことで収益を得る場合があります。 詳しくはこちら
GitLabの脆弱性により、インターネットに公開されているセルフホスト型インスタンスが危険にさらされています。
研究者らは警告を発しており、認証されていない攻撃者がわずか1回のリクエストでリポジトリを削除したり、プロジェクトデータを改ざんしたり、メンテナーの作業を妨害したりできる可能性があるとしています。
「今回新たに公表されたコードインジェクションの脆弱性により、認証されていない攻撃者が、一般公開されているGitLabプロジェクトを削除し、その状態を書き換えることが可能になります」と、watchTowrのプリンシパル・セキュリティ・リサーチャーであるJake Knott氏はeSecurityPlanetへのメールで述べています。
同氏はさらに、「これにより攻撃者は、認証情報もユーザー操作も、特殊な設定も一切必要とせず、たった1回のHTTPリクエストでリポジトリを完全に削除したり、マージ記録を偽造したり、メンテナーをBAN(追放)したりできてしまいます」と付け加えています。
GitLab脆弱性のポイント
- CVE-2026-19478は深刻なGitLabの脆弱性であり、CVSSスコアは9.4。認証されていない攻撃者が公開プロジェクトやユーザーデータを改ざん・削除できる可能性があります。
- セルフホスト型GitLabインスタンスが危険にさらされる一方、GitLab[.]comおよびGitLab Dedicatedはすでにパッチが適用済みです。
- watchTowrは実際の攻撃(in-the-wild)による悪用の試みを観測しており、脆弱性の公表からわずか数分で再現に成功しています。
- 侵害が発生すると、より広範なソフトウェアサプライチェーンのリスクにつながる恐れがあります。攻撃者がリポジトリやマージ記録、メンテナー権限を操作できてしまうためです。
- 組織は影響を受けるGitLabインスタンスを直ちにパッチ適用すべきであり、更新を適用するまではアクセス制限や監視などの代替的な対策を講じる必要があります。
GitLab CVE-2026-19478の詳細
GitLabは2026年8月17日、GitLab Community Edition(CE)およびEnterprise Edition(EE)に影響する CVE-2026-19478に対応するため、緊急のセキュリティアップデートをリリースしました。
この脆弱性のCVSSスコアは9.4で、セルフホスト型GitLabの複数のサポート対象バージョンに影響します。
特定の条件下では、この脆弱性により、認証されていない攻撃者がGraphQLディレクティブを通じて、公開プロジェクトやユーザーデータをリモートから改ざん・削除できる可能性があります。
このリスクは主に、セルフホスト型のGitLab環境を運用している組織に該当します。
GitLab[.]comおよびGitLab Dedicatedはすでにパッチ適用済みのバージョンで稼働しているため、これらのサービスを利用している顧客は対応の必要はありません。
GitLabは、関与している具体的なGraphQLディレクティブや、攻撃を成功させるために必要なすべての条件について、公式には詳細を明らかにしていません。
しかしwatchTowrのセキュリティ研究者らは、GitLabのセキュリティアドバイザリとパッチに記載された情報をもとに、CVE-2026-19478の公表からわずか数分で再現に成功したと述べています。
Knott氏は「……watchTowrはアドバイザリの詳細とパッチのみを頼りに、公表からわずか数分で脆弱性の再現に成功しました」と述べています。
CVE-2026-19478、実際の攻撃(in-the-wild)での悪用を確認
さらに重要な点として、Knott氏はwatchTowrがすでに自社のハニーポットネットワークを通じて、この脆弱性を悪用しようとする試みを観測していると述べています。
「予想通り、当社のグローバルなAttacker Eyeハニーポットネットワークにおいて、すでにこの脆弱性の実際の悪用(in-the-wild exploitation)を確認しています」とKnott氏は述べています。
Knott氏はまた、AIによって脆弱性の公表から悪用までの時間がさらに短縮される恐れがあると警告しています。
「AIを活用する攻撃者たちも、そう遠くない時期に追随してくるでしょう」とKnott氏は述べています。「これが脆弱性の再現・悪用における新たな現実です。AIを活用する攻撃者は、公表から悪用までの時間を圧縮できるようになっており、『次のパッチサイクルまで待つ』という対応では、しばしば手遅れになってしまいます」
GitLabは組織のソフトウェア開発ライフサイクルにおいて中心的な役割を担っていることが多いため、潜在的な影響は個々のリポジトリの削除にとどまりません。
プロジェクトやマージ記録、メンテナー権限を操作する攻撃者は、開発業務を妨害し、より広範なソフトウェアサプライチェーンのリスクを生み出す可能性があります。
GitLab、CVE-2026-19650も併せて修正
同じセキュリティリリースでは、CVSSスコア7.1の別個の深刻度の高いクロスサイトリクエストフォージェリ(CSRF)脆弱性であるCVE-2026-19650にも対応しています。
この脆弱性は、GitLabのGraphQLマルチプレックスクエリハンドラーにおけるリクエスト検証の不備に起因しており、特定の条件下では、認証されていない攻撃者がGETリクエストを通じてミューテーションを実行できる可能性があります。
CVE-2026-19478とは異なり、CVE-2026-19650の悪用を成功させるにはユーザー操作が必要です。
CVE-2026-19478の緩和策
影響を受けるセルフホスト型GitLabインスタンスを運用している組織は、特にシステムが公衆インターネットに公開されている場合、パッチ適用を最優先すべきです。
組織が更新を適用する前に攻撃者がこの脆弱性を狙う可能性があるため、セキュリティチームは露出を抑え、不審な活動を監視するための一時的な対策も講じるべきです。
- パッチ適用を行う: 影響を受けるセルフホスト型GitLabインスタンスにパッチを適用するか、パッチ適用が可能になるまで/api/graphqlへの未認証アクセスを制限してください。
- 不要な公開リポジトリへのアクセスを削除し、認証されていない攻撃者への露出を減らしてください。
- VPN、ネットワークの許可リスト、リバースプロキシ、あるいはゼロトラスト制御によって、外部からのGitLabアクセスを制限してください。
- 監視を行う: GraphQLのトラフィックやログを監視し、通常とは異なる未認証リクエストやミューテーション、見慣れないIPアドレスからの活動がないか確認してください。
- リポジトリ、プロジェクト設定、マージ記録、メンテナーアカウントを監査し、不正または予期しない変更がないか確認してください。
- インシデント対応計画をテストし、調査を支援するためにGitLab、プロキシ、WAF、認証に関する関連ログを保存してください。
これらの対策を組み合わせることで、潜在的な攻撃の被害範囲を抑えつつ、レジリエンスを高めることができます。
結論
より大きな懸念は、GitLabの侵害が下流の開発環境や本番環境にどれほど速く波及し得るかという点です。
セキュリティチームは、不正なリポジトリの変更が検知されないまま本番環境にまで到達し得るかどうかを見極めるため、GitLabがCI/CDパイプライン、ビルドシステム、シークレット、成果物、デプロイワークフローに対して持つアクセス権を評価すべきです。
CVE-2026-19478はまた、信頼されている開発プラットフォームが侵害の起点となった際に、既存の対策が改ざんを検知し、ソフトウェアの完全性を保護し、攻撃を封じ込められるかどうかを検証する機会にもなります。
ゼロトラストを導入することで、開発環境や本番環境全体における暗黙の信頼を制限し、アクセスを継続的に検証することにより、組織はこうしたリスクの一部を軽減できます。