n8n Sandbox の脆弱性 CVE-2026-1470/0863 が FIX:サンドボックス回避と RCE

Critical and High Severity n8n Sandbox Flaws Allow RCE

2026/01/28 InfoSecurity — n8n に、深刻なセキュリティ脆弱性 CVE-2026-1470/CVE-2026-0863 が発見された。このワークフロー自動化プラットフォームに影響を与えるセキュリティ欠陥が明らかにしたのは、JavaScript および Python コードに対するサンドボックス機構の弱点である。これらの脆弱性は JFrog Security Research チームにより開示されたものであり、パッチ未適用の n8n インスタンスをホストするシステム上で、認証済みの攻撃者に対して任意のコマンド実行を許す可能性がある。これらの脆弱性が影響を及ぼす範囲は、n8n のクラウド・サービスおよびセルフホスト環境である。

AI 駆動の機能とビジネスプロセス・オーケストレーションを融合する n8n は、広く利用される自動化のためのプラットフォームである。ワークフローではカスタム・スクリプトが必要となることが多いため、このくプラットフォームはサンドボックス制御に依存することで、基盤となるオペレーティング・システムへの、ユーザー提供コードによるアクセスを防いでいる。しかし、研究者たちによると、最近のセキュリティ改善にもかかわらず、これらの制御は回避が可能であるという。

1 件目の脆弱性 CVE-2026-1470 (CVSS 3.1:9.9:Critical) は、n8n の JavaScript 式エンジンに影響を及ぼすものだ。2 件目の CVE-2026-0863 (CVSS:8.5:High) は、Internal モードで動作する Code ノードの Python 実行に影響を及ぼす。

いずれのケースにおいても、抽象構文木 (AST:abstract syntax tree) 検証の欠陥を悪用する攻撃者は、サンドボックスを脱出し、完全なリモートコード実行 (RCE) を達成できることを、研究者たちが実証している。

この攻撃を成立させるためには、ワークフローの作成/変更の権限が必要であるが、この権限は、正規ユーザーに付与されていることが多い。これらの脆弱性が悪用する攻撃者は、n8n のメインサービスと同一のコンテキストでコマンドを実行し、環境変数/機密データ/システムレベル・アクセスの露出を引き起こす可能性がある。

JavaScript に関する問題では、サンドボックス・ロジックが with 文を適切に処理していないことが判明した。この言語機能は、非推奨にされているが、依然としてサポートされている。

識別子解決の仕組みを操作することで、研究者は間接的に Function コンストラクタへアクセスし、任意のコードを実行することに成功した。n8n の主要プロセス内でコードが直接実行される点から、この脆弱性は特に深刻であると評価された。

Python の欠陥は、複数の弱点に起因している。n8n は import などのビルトイン関数をブロックする、きわめて制限的なポリシーを採用している。しかし研究者は、Python の文字列フォーマット機構と Python 3.10 で導入された変更点を例外処理と組み合わせることで、制限されたオブジェクトを回復できることを示した。これにより、禁止された関数へ直接アクセスすることなく、サンドボックスを回避することが可能となる。

n8n ユーザーに推奨されるのは、早急なアップグレードである。CVE-2026-1470 はバージョン 1.123.17/2.4.5/2.5.1 で修正されており、CVE-2026-0863 はバージョン 1.123.14/2.3.5/2.4.2 で修正されている。これ以前のすべてのバージョンは、脆弱な状態を引きずっている。