何が起きたか
2026-08-20に公開された本コマンドインジェクション脆弱性(CVSS未評価)は、Neo.mjs の MCP ファイルシステムサーバー内で、呼び出し元が制御可能なパス値がシェルコマンドに unsafe に補間され、サーバーの syntax-check および Playwright-test ツールアクション内で実行されます。
なぜ重要か
これは繰り返される MCP ツール表面パターンの別のインスタンスです — AI エージェントが呼び出し可能なツールアクションで、不十分にサニタイズされたインプットを使用してシェルアウトします — スコープされたファイル/テストチェックツールであるべきものが、任意の MCP クライアントまたはインジェクトされたプロンプトコンテンツで到達可能な任意の OS コマンド実行に変わります。
攻撃経路
FileSystemService.mjs の checkSyntax() および runPlaywrightTest() 関数は、呼び出し元が制御可能な absolutePath 値をシェルコマンドに unsafe に補間しており、MCP クライアント(またはプロンプトインジェクトされたエージェント)が細工されたパスを供給する場合、任意の OS コマンド実行を可能にします。
影響を受けるシステム
Neo.mjs ai/mcp/server/file-system MCP サーバー(FileSystemService.mjs)
緩和策
上流の修正(コミット 5acc564ea1b278bca5fab1f8f397a6ba9b849d75)を適用してください;呼び出し元が提供するパスのシェル補間を避け、代わりにパラメータ化されたサブプロセス呼び出しを使用してください。