注目★★★★★GitHub Advisory
Flowise の CSV Agent に認証なし RCE、data URI 内容が Python コード注入に
30秒で把握
- 1Flowise の CSVAgent が data URI の base64 セグメントを検証なし Python コードに挿入・実行
- 2Pyodide 内の js ブリッジ経由で fs/child_process 動的 import・任意 OS コマンド実行可能
- 3chatflows:create 権限のワークスペースユーザが攻撃可能・POST /api/v1/prediction/:id は認証不要
要約
Flowise の CSVAgent は、attacker が制御可能な data URI の base64 セグメントを検証なしで Python ソースコードテンプレートに直接挿入し、Pyodide で実行させる。Pyodide が Node.js の globalThis に js ブリッジをデフォルト有効で読み込むため、攻撃者は Python 文字列リテラルを脱出して js.eval に JS 文字列を渡し、fs や child_process などの Node 組み込みモジュールを動的 import して、Flowise プロセスで任意の OS コマンドや ファイル I/O を実行できる。chatflows:create 権限を持つワークスペースユーザが細工した CSVAgent を設置後、chatflow が POST /api/v1/prediction/:id エンドポイント経由で公開されると、認証なしのリクエストが RCE をトリガーする。
あなたへの影響
この記事が日本のエンジニアに与える影響と、今日取るべきアクションは、Personal会員向けに掲載しています。
クレカ不要・いつでも解約