Modern Frontend CVEs

対象CVE: CVE-2026-69254

[緊急警告] Flowiseに認証済みRCE脆弱性 (CVE-2026-69254) - 全Flowiseユーザーは即時対応を!

AIワークフローツールFlowiseに、認証済みユーザーがサーバーを完全に制御できる極めて深刻なリモートコード実行(RCE)脆弱性(CVE-2026-69254)が発見されました。機密情報漏洩やシステム乗っ取りのリスクがあるため、**早急なアップデートとAPIキーの厳重な管理**が求められます。

はじめに:なぜフロントエンドエンジニアがこの脆弱性を知るべきか

日本のフロントエンドエンジニアの皆さん、こんにちは!今回は、AIアプリケーション開発で注目されているローコード/ノーコードツール「Flowise」に関する極めて深刻な脆弱性、GHSA-3769-jgqc-cxm7 (CVE-2026-69254) について解説します。

Flowiseはバックエンドツールですが、皆さんが開発するフロントエンドアプリケーションからFlowiseのAPIを呼び出したり、CI/CDパイプラインでFlowiseをデプロイ・運用している場合、この脆弱性は直接的な脅威となります。APIキーの管理やサーバー構成に関わるため、詳細を理解し、迅速な対応を検討することが不可欠です。

脆弱性の概要とサンドボックス脱出のメカニズム

この脆弱性は、Flowiseの`executeJavaScriptCode()`関数に存在します。この関数は、指定されたJavaScriptコードを安全なサンドボックス環境で実行することを目的としていますが、そのセキュリティメカニズムに致命的な欠陥がありました。

問題の核心は、`nodeVMOptions`という設定が外部から渡される際に、デフォルトのセキュリティ設定を上書きできてしまう点です。内部では、JavaScriptの「スプレッド構文`{ ...defaultNodeVMOptions, ...nodeVMOptions }`」を用いて設定を結合していますが、これにより攻撃者はデフォルトでブロックされているはずの`child_process`や`fs`といったNode.jsのシステム操作モジュールを「`builtin: ["*"]`」のように指定して、強制的に有効化することが可能になります。

具体的な攻撃手順は以下の通りです:

1. 攻撃者は、有効なAPIキーを持つ認証済みユーザーとしてFlowiseにアクセスします。

2. この脆弱性を悪用し、内部的に`executeJavaScriptCode()`関数を再度呼び出します。

3. この再呼び出しの際に、許可されるNode.jsモジュールを全て有効化するオプション(`builtin: ["*"]`)を悪意を持って渡します。

4. 結果として、サンドボックス内でNode.jsの`child_process`モジュールをロードし、最終的にFlowiseサーバー上で**任意のシステムコマンドをroot権限で実行**できてしまいます。これは、フロントエンドで利用されるAPIキーが漏洩した場合、バックエンドの基盤が完全に掌握されることを意味します。

想定される深刻な影響と被害

この脆弱性が悪用されると、Flowiseサーバー上で**root権限でのリモートコード実行(RCE)**が可能となり、攻撃者はサーバーを完全に制御できてしまいます。これにより、以下のような極めて甚大な被害が発生する可能性があります。

1. **サーバーの完全掌握**: サーバー上の任意のファイルの読み取り、変更、削除が可能となり、システム全体が乗っ取られます。

2. **機密情報の漏洩**: Flowiseに保存されているすべての機密情報(APIキー、OAuthトークン、データベースパスワードなど)が漏洩します。特に、Flowiseの暗号化キー(`/root/.flowise/encryption.key`)やJWT署名シークレット(`/root/.flowise/jwt_auth_token_secret.key`)といった、システム全体のセキュリティを司る鍵情報も標的となります。

3. **永続的なアクセスの確立**: バックドアの設置や永続的なアクセス経路(例:cronジョブの作成、リバースシェルの確立)が構築され、長期的な被害につながる恐れがあります。

影響を受けるバージョンと緊急対応策

この脆弱性の影響を受けるのは、**Flowiseのバージョン3.0.5以降、および現時点での最新版である3.1.1までのすべてのデプロイメント**です。つまり、現在Flowiseを利用しているほとんどの環境が対象となります。

**推奨される緊急対応策は以下の通りです。**

1. **直ちにアップデートを適用する**: Flowiseの開発元から提供される最新のセキュリティ修正パッチ(通常は次のリリースバージョン)が利用可能になり次第、**最優先でアップデートを適用**してください。現時点でパッチが公開されていない場合は、公式サイトやGitHubリポジトリを注視し、情報が公開され次第速やかに対応してください。

2. **認証情報の厳重な管理と見直し**: フロントエンド開発者がFlowiseのAPIキーを使用している場合、そのAPIキーが厳重に管理されていることを確認し、**信頼できるユーザーのみにアクセスを厳しく制限**してください。また、不要なAPIキーは速やかに削除し、定期的にキーをローテーションすることを検討してください。漏洩が疑われる場合は、直ちに全てのAPIキーを再生成してください。

3. **サーバーログの継続的な監視**: Flowiseサーバーのログを継続的に監視し、不審なアクセス、異常なJavaScriptコードの実行、または予期せぬシステムコマンドの起動がないかを確認してください。異常を検知した場合は、速やかに調査と対応を行ってください。

まとめ

Flowiseのこの脆弱性は、認証済みユーザーによるRCEという、データ漏洩やシステム乗っ取りに直結する非常に高いリスクを伴います。もし皆さんのプロジェクトでFlowiseが利用されている場合、今回の情報を決して軽視せず、**最高の優先度で対応を検討してください**。

セキュリティはフロントエンド、バックエンドの境界なく、開発者全員が意識すべき重要な課題です。常に最新のセキュリティ情報をキャッチアップし、安全なシステム構築に努めましょう。

← ブログ一覧に戻る