Ruflo の重大な欠陥により、攻撃者が不正なAIスウォームを生成可能に

オープンソースのAIエージェント編成プラットフォームRufloに存在する重大度クリティカルの脆弱性を悪用すれば、認証を受けていない攻撃者がコンテナ内でコマンドを実行できてしまうと、Noma Labsのセキュリティ研究者らが警告しています。

GitHubスター数67,000超を誇る人気の自動化アシスタントRuflo(旧称Claude Flow)は、マルチモデル対応のAIチャットインターフェース、エージェントスウォーム、永続メモリ、そしてModel Context Protocol(MCP)ツール呼び出し機能を組み込みで備えています。

Rufloは、エージェントスウォーム(最大100エージェントをエンタープライズ向けの共有タスクで協調させる機能に対応)、過去のやり取りをエージェントが記憶できる長期メモリ、そして各種タスクの実行をエージェントに担わせる統合MCPサーバーを通じて、組織がAIアプリケーションを利用できるようにします。

「このブリッジはシェルアクセス、データベース操作、エージェント管理、メモリストレージにまたがる233個のツールを公開しており、あらゆるエージェントの動作が流れ込む単一のポイントとなっています。MCPブリッジはこれらのコマンドを実行するために基盤となるシステムリソースへの直接アクセスを必要とするため、極めてリスクの高いセキュリティ境界を形成しています」とNomaは説明しています。

CVE-2026-59726(CVSSスコア10/10)として追跡されているこのセキュリティ上の欠陥は、ruflo/docker-compose.yml内のMCPブリッジで発見され、POST /mcpエンドポイントが認証なしで公開されていました。

デフォルトのdocker-composeデプロイメントでは、ブリッジとMongoDBが全インターフェースにバインドされていたため、認証されていない攻撃者がterminal_executeを呼び出すことで、ブリッジコンテナ内でコマンドを実行できてしまう状態だったと、Rufloのアドバイザリには記されています。

この脆弱性の悪用に成功すると、攻撃者はnodeとしてのシェルアクセスを取得し、プロバイダーのAPIキーを読み取り、被害者のキーを使ってスウォームを生成し、さらにAgentDBの学習ストアに毒入りパターンを注入して全ユーザーのAI出力を改ざんできる可能性があります。

この脆弱性をRufRootと名付けたNomaによると、根本原因は、セルフホスト型のデプロイメントにおいてdocker-compose.ymlがデフォルトでポート3001を0.0.0.0にバインドしている点にあり、これによりネットワーク経由で到達可能な全インスタンスが、認証なしでの悪用にさらされる状態となっていました。

「MCPブリッジは、何気ない補助的なデバッグ用インターフェースなどではありません。むしろRufloの中枢神経系そのものです。あらゆるツール呼び出し、あらゆるエージェントの動作、あらゆるメモリ操作がMCPブリッジを経由します。MCPブリッジへの認証なしアクセスを誤って許してしまうことは、すべてへの認証なしアクセスを許すことに等しいのです」とNomaは説明しています。

ruflo__terminal_executeを狙ったHTTPリクエスト1件だけで、攻撃者はエージェントスウォームを乗っ取ることが可能です。というのも、このコマンドはコンテナのnodeユーザーとして実行されるため、それ以上の権限昇格を行わなくても、アクセス可能な全アセットへの到達が可能になるからです。

「コマンド実行権限さえ手に入れば、あとは同じエンドポイントに対してリクエストを連鎖させていくだけで、完全な侵害を達成できてしまいます」とNomaは説明しています。

攻撃者はこの脆弱性を、偵察、リモートコード実行(RCE)、APIキーや会話履歴の窃取、攻撃者が制御するエージェントスウォームの生成、攻撃者の意図した出力を生成させるための学習パイプラインの汚染、永続的なバックドアの設置、そして痕跡を消すためのシェル履歴の消去といった目的に悪用できます。

この脆弱性はRuflo バージョン3.16.3で修正されました。この修正版はあらゆる攻撃ベクトルに対処しており、Rufloのメンテナー陣は、インスタンスが外部に露出している利用者向けに対策手順を公開しています。

翻訳元: https://www.securityweek.com/critical-ruflo-flaw-lets-attackers-spawn-rogue-ai-swarms/

本記事は securityweek.com の記事を翻訳・要約したものです。