Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-19478 — 非破壊的な Nuclei テンプレートを使用して GitLab CE/EE の CVE-2026-19478 を検出します。このテンプレートは touch を介して GraphQL フォールバックフィールドのメソッド呼び出しをトリガーし、破壊的な呼び出しを行わずに脆弱なインスタンスを確認します。 | Kitploit
ツール/GitHubGitHub/renzi25031469/cve-2026-19478
ウェブ脆弱性スキャナー脆弱性分析ウェブアプリケーション悪用APIセキュリティテスト情報収集ウェブセキュリティペネトレーションテスト
GitHubrenzi25031469/cve-2026-19478

CVE-2026-19478

非破壊的な Nuclei テンプレートを使用して GitLab CE/EE の CVE-2026-19478 を検出します。このテンプレートは touch を介して GraphQL フォールバックフィールドのメソッド呼び出しをトリガーし、破壊的な呼び出しを行わずに脆弱なインスタンスを確認します。

リポジトリを見る
2日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-19478 — GitLab GraphQL フォールバックフィールドの任意メソッド呼び出し — Nuclei 検出テンプレート

CVE Severity Nuclei Target License

CVE-2026-19478 — Nuclei テンプレート

GitLab GraphQL API における認証不要の任意メソッド呼び出しの重大な脆弱性(CVSS 9.4)CVE-2026-19478 を検出するための、非破壊的な Nuclei テンプレートです。GitLab は 2026年8月17日 にこの脆弱性を修正しました。

TL;DR

GitLab の GraphQL スキーマは、フィールドを GitLab の最小バージョンに制限する @gl_introduced(version: "X.Y.Z") ディレクティブをサポートしています。このディレクティブが稼働中のインスタンスよりも新しいバージョンを参照している場合、GitLab は(それ以外では不明な)フィールド名に対してフォールバックフィールドを生成します。このフォールバックリゾルバは、認可の再チェックを行うことなく、基盤となる Ruby オブジェクト — Project、User など — に対して object.public_send(method_name) を直接呼び出します。

その結果、/api/graphql に到達でき、任意の公開プロジェクトの fullPath(または任意の公開プロフィールのユーザー名)を知っている認証不要の攻撃者は、そのオブジェクト上の任意の public な引数なしメソッドを呼び出すことができます。これには、touch のような読み取り専用のものだけでなく、destroy / delete のような破壊的なものや、deactivate / block / ban のような状態を変更するものも含まれます。

このリポジトリのテンプレートは touch(updated_at を更新して true を返す)のみを呼び出します。詳細については、下記の安全性を参照してください。

影響を受けるバージョン

対象はセルフマネージドの GitLab CE/EE のみです。GitLab.com および GitLab Dedicated は影響を受けません。

安全性

このテンプレートは、テストを許可されたサーバーフリートをスキャンするために、意図的に無害化されています。

  • フォールバックフィールド経由で touch のみを呼び出します(updated_at を更新して true を返すだけの ActiveRecord メソッド)。
  • 決して destroy、delete、deactivate、block、ban を呼び出しません。これらはすべて同じバグを通じて到達可能であり、実際に破壊的なメソッドです。
  • 検出は日和見的です。REST API 経由で公開プロジェクトを1つ列挙し、見つからない場合はデフォルトの root ユーザープロフィールの調査にフォールバックします。どちらにも到達できない場合は、推測せずに単に "not detected" と報告します。

所有していないシステム、または明示的な書面によるテスト許可を得ていないシステムに対して、このテンプレートの GraphQL クエリを状態変更メソッドの呼び出しに流用しないでください。

検出の仕組み

修正済みのインスタンスは不明なフィールドを即座に拒否するため("... doesn't exist on type ...")、テンプレートのマッチャーは touch の肯定シグナルかつその拒否メッセージが存在しないことを要求します。

使用方法

root@kitploit:~
# single target
nuclei -t CVE-2026-19478.yaml -u https://gitlab.example.com

# validate the template itself
nuclei -t CVE-2026-19478.yaml -validate

# a list of targets, JSON output
nuclei -t CVE-2026-19478.yaml -l targets.txt -j -o results.json

nuclei v3 が必要です(このテンプレートは、v3 テンプレートエンジンで導入された http: プロトコルブロックと jq スタイルの json 抽出器を使用しています。nuclei v2.x では読み込まれません)。

出力例

root@kitploit:~
[CVE-2026-19478] [http] [critical] https://gitlab.example.com/api/graphql

対策

18.11.11、19.0.8、19.1.6、19.2.4(またはそれ以降)にアップグレードしてください。完全なアドバイザリについては、GitLab の 19.2.4 パッチリリースノート を参照してください。

参考情報

  • GitLab 19.2.4 パッチリリースノート
  • The Hacker News — 認証不要の攻撃者が公開プロジェクトを削除できる可能性がある重大な GitLab GraphQL の欠陥
  • Rescana — CVE-2026-19478 技術解説
  • PoC (davkharrr/CVE-2026-19478-PoC)

免責事項

このテンプレートは、防御的なセキュリティ目的 — 所有している、または明示的にテストを許可されたインフラストラクチャのスキャン — のために公開されています。許可なくシステムに対してこれを(またはリンクされた PoC を)実行することは、ほとんどの法域で違法です。著者は誤用に対する責任を負いません。

ライセンス

MIT

ツールをダウンロード
トラック影響を受けるバージョン修正バージョン
18.2.x – 18.11.x>= 18.2, < 18.11.1118.11.11
19.0.x< 19.0.819.0.8
19.1.x< 19.1.619.1.6
19.2.x< 19.2.419.2.4
手順リクエスト目的
1GET /api/v4/projects?visibility=public無害なターゲットとして使用する公開プロジェクトを探す
2POST /api/graphql — そのプロジェクトに対して touch @gl_introduced(version: "999.0.0") を実行フォールバックフィールドのリゾルバを起動する。脆弱なインスタンスは "touch": true を返す
3(フォールバック)POST /api/graphql — user(username: "root") に対して同じクエリを実行ステップ1で公開プロジェクトが見つからなかった場合のみ使用