n8nでリモートコード実行が可能になる脆弱性(CVE-2026-1470,CVE-2026-0863)

セキュリティニュース

投稿日時: 更新日時:

n8nでリモートコード実行が可能になる脆弱性(CVE-2026-1470,CVE-2026-0863)

2026年1月27日、JFrogのセキュリティリサーチチームが、n8nのサンドボックス機構に関する2件の脆弱性を公表しました。

1件は式評価エンジンの不備によるリモートコード実行につながるCVE-2026-1470で、深刻度は9.9のCriticalです。もう1件はPython実行(Codeノードのinternal相当の実行形態)でのサンドボックス回避により任意コード実行が可能となるCVE-2026-0863で、深刻度は8.5のHighです。

両方とも、ワークフローを作成または編集できる認証済みユーザーが悪用できる点が重要です。業務自動化基盤は認証情報や社内APIへのアクセス権を内包しやすく、侵害されると横展開が起きやすいため、情報システム部門としては優先度高く扱うべき類型です。

概要

今回の2件は、いずれもサンドボックスをすり抜けてホスト上で任意コードを実行できる、いわゆるサンドボックス脱出に分類されます。

n8nは式評価やコード実行を安全に使えるよう、AST解析による入力検査や危険なグローバルの無効化など複数の防御層を設けていますが、言語仕様の隙や実装上の見落としが突かれました。

結果として、権限の低い認証ユーザーであっても、条件がそろえばn8nプロセス権限でのリモートコード実行に至り、インスタンス全体の乗っ取りにつながり得ます。

関連:【2025年】サイバー攻撃の事例

影響を受ける範囲

CVE-2026-1470

n8nの式評価機構が対象です。GitHub Advisoryでは影響範囲が明確に整理されており、1.123.17未満、または2系では2.4.5未満、2.5.1未満が影響します。

CVE-2026-0863

PythonのCodeノード実行が対象です。NVDの説明では、Pythonタスク実行のサンドボックス制限を回避し、OS上で任意のPythonコード実行に至る可能性が示されています。特にinternal相当の実行形態ではメインノード側が直接影響を受け、external相当(Dockerサイドカー側で実行)では影響が限定される、とされています。

対策 まずやること

パッチ適用が最優先です。JFrogのレポートおよび報道ベースで、修正済みバージョンは以下です。

CVE 修正済みバージョンの例 それ以前
CVE-2026-1470 1.123.17 / 2.4.5 / 2.5.1 影響あり
CVE-2026-0863 1.123.14 / 2.3.5 / 2.4.2 影響あり

加えて、すぐにアップグレードできない場合の暫定策として、次の優先順位でリスクを下げてください。

  • ワークフロー作成・編集権限を持つユーザーを最小化し、外部委託や開発検証用アカウントの権限を棚卸しする

  • PythonのCodeノードを業務で必須としていないなら無効化または利用制限する

  • Python実行をexternal相当の分離実行へ寄せ、メインノードでの直接実行を避ける(運用形態の見直し)

  • n8nの実行ホストに対して、外向き通信や管理系ネットワークへの到達性を最小化する(侵害後の横展開を抑止)

原因

CVE-2026-1470の原因

式評価は内部的にJavaScriptの動的評価に近い形で処理されるため、本来は安全なAST検査で危険な構文やプロパティ参照を遮断する設計でした。ところが、with文のような非推奨だが利用可能な構文が想定外のスコープ解決を生み、検査ロジックの抜け穴になりました。結果として、禁止したい経路が識別子扱いで通ってしまい、実行時に危険なオブジェクトへ解決される形で回避されました。

CVE-2026-0863の原因

Python側もASTベースの制限でimportや危険な組み込み関数を抑止していますが、文字列フォーマットと例外処理を組み合わせたアクセスにより、制限対象のオブジェクトへ段階的に到達できてしまいました。さらに、Python 3.10以降の例外オブジェクトの属性仕様が、この回避の成立を後押しした点が指摘されています。

要するに、静的なAST検査は強力でも、言語機能の全体を完全に覆うのが難しく、少しの仕様差分や実装の取りこぼしが突破口になります。

運用面での現実的な備え

n8nのような自動化基盤では、脆弱性そのものの修正に加えて、侵害された場合の被害半径を小さくする設計が効きます。

  • 実行ホストの権限を最小化する(ファイル権限、実行ユーザー、コンテナ分離)

  • ワークフローが扱う認証情報を棚卸しし、必要に応じてローテーションする

  • 監査ログやワークフロー変更履歴の監視を強化し、急増する編集や不自然なノード追加を検知する

  • インターネット公開している場合は管理画面への到達性を制限し、SSOやMFA、IP制限などを組み合わせる