[緊急警戒] n8nのHTTP RequestノードにPrototype PollutionからRCEに至る重大な脆弱性(CVE-2026-44789)が発見!
はじめに:なぜフロントエンドエンジニアがこの脆弱性に注目すべきか
n8nは、API連携やバックエンド処理の自動化、CI/CDパイプラインの一部など、多岐にわたるシステム連携に利用されるノーコード・ローコードのワークフロー自動化ツールです。直接n8nのワークフローを開発していなくても、皆さんの開発するフロントエンドアプリケーションが連携するバックエンドシステムや、開発プロセスを自動化するインフラストラクチャの一部としてn8nが稼働している可能性があります。
今回発見された脆弱性は、n8nインスタンス全体、ひいてはそのインスタンスが稼働しているサーバーに重大なリスクをもたらします。そのため、フロントエンドエンジニアの皆さんも、社内のインフラ担当者やバックエンドエンジニアと連携し、自社システムへの影響を確認し、適切な対策を講じることが非常に重要です。
脆弱性の概要と深刻度(GHSA-c8xv-5998 / CVE-2026-44789)
この脆弱性は、n8nのHTTP Requestノードに存在し、深刻度は「critical」と評価されています。具体的には、このノードのページネーション処理におけるパラメータ検証の不備を突かれ、「Prototype Pollution」という状態を引き起こし、最終的には「リモートコード実行(RCE)」へと繋がる可能性があります。攻撃者は、n8nのワークフロー作成・編集権限を持つ認証済みユーザーに限られますが、一度脆弱性が悪用されると、n8nインスタンスが動作するサーバー全体が乗っ取られる恐れがあります。
脆弱性の詳細:Prototype PollutionからRCEへの道筋
脆弱性の根本原因は、n8nのHTTP Requestノードが、ページネーション処理時に受け取るパラメータの検証が不十分である点にあります。この検証不備を悪用し、不正に細工されたページネーションパラメータをHTTP Requestノードに渡すことで、「Prototype Pollution」という状態を誘発できます。
**Prototype Pollutionとは?** JavaScriptの世界では、すべてのオブジェクトはプロトタイプチェーンを通じてプロパティやメソッドを継承します。Prototype Pollutionは、`Object.prototype`のようなグローバルなプロトタイプオブジェクトに任意のプロパティを追加・変更することで、アプリケーション全体に影響を及ぼす脆弱性です。これ自体は直接的な攻撃ではありませんが、アプリケーションの他の部分がその不正なプロパティに依存している場合、予期せぬ動作を引き起こしたり、本脆弱性のようにRCEなどのより深刻な攻撃に繋がる可能性があります。
Prototype Pollutionが成立すると、攻撃者はn8nインスタンスの実行環境において、内部的にオブジェクトの挙動を操作できるようになります。この状態を悪用し、n8nがコードを実行する際のコンテキストを乗っ取ることで、結果として「リモートコード実行(RCE)」が可能となります。
**RCEとは?** リモートコード実行は、攻撃者がインターネット経由で対象のサーバー上で任意のプログラムコードを実行できてしまう最も危険な脆弱性の一つです。RCEが成功すると、攻撃者はサーバー上の機密情報の窃取、改ざん、システムの破壊、他のシステムへの侵入など、あらゆる悪意のある操作を行うことが可能になります。
対策と推奨事項
この脆弱性に対処するためには、迅速な対応が不可欠です。
以下のいずれかのバージョン、またはそれ以降のバージョンにn8nをアップグレードすることを強く推奨します。
<ul><li>バージョン <strong>1.123.43</strong></li><li>バージョン <strong>2.20.7</strong></li><li>バージョン <strong>2.22.1</strong></li></ul>
これらのバージョンで脆弱性は修正されています。
直ちにアップグレードが難しい場合は、一時的なリスク軽減策として以下のいずれかを検討してください。ただし、これらはあくまで一時的なものであり、根本的な解決にはバージョンアップが必要です。
<ol><li>ワークフローの作成および編集権限を、完全に信頼できるユーザーのみに厳格に制限する。</li><li>環境変数<code>NODES_EXCLUDE</code>に<code>n8n-nodes-base.httpRequest</code>を追加し、HTTP Requestノード自体を無効にする。これにより、HTTP Requestノードを利用するワークフローは動作しなくなります。</li></ol>
まとめ:サプライチェーン全体のセキュリティ意識を
この脆弱性は、たとえ直接n8nを触っていなくても、開発環境や本番環境で間接的に利用されている可能性があるツールが、いかに全体のセキュリティに影響を与えるかを示しています。フロントエンドエンジニアの皆さんも、自分たちの担当範囲だけでなく、システム全体のセキュリティ、特に利用しているサードパーティ製のツールやライブラリの脆弱性情報にも常にアンテナを張り、関係者と連携しながらサプライチェーン全体のセキュリティレベルを向上させていく意識を持つことが重要です。
定期的なセキュリティ情報のチェックと、迅速なアップデート実施を心がけましょう。