3 ポイント 投稿者 yjcho9317 2026-04-09 | まだコメントはありません。 | WhatsAppで共有

AIエージェントがMCPサーバーを通じてファイルを読んだりツールを呼び出したりする際、サーバーが返すレスポンスは別途の検証なしでコンテキストに入ります。mcp-fenceは、このリクエストとレスポンスの両方をリアルタイムで検査するセキュリティプロキシです。

nworks(NAVER WORKS MCPサーバー)を作りながら、この構造を自分で直接経験しました。GitHubでMCPセキュリティプロジェクト28件を確認しましたが、その大半は送信側だけを検査し、返ってくる側は見ない構造でした。そこで自分で作りました。

作成後には自分でセキュリティ監査も実施しました。人の目には同じに見えてもコンピュータには別の文字として認識される文字で検知をすべて突破でき、目に見えない透明文字を差し込んですべての検査を通過させることもでき、特殊な入力でセキュリティ検査そのものを停止させるバグも見つかりました。いずれもリリース前に修正しました。1,426件のテストのうち630件が対敵的セキュリティテストで、既知のMCP脆弱性13件に対して検知率は86%です。OWASP MCP Top 10基準では10項目中9項目をカバーします。

インジェクション、シークレット、PII、コマンドインジェクションを検知し、ツール説明が密かに書き換えられるrug-pullもハッシュピンニングで検出します。検知は正規表現ベースのため、同じ意味を別の表現にすると通過します。MLによるセマンティック検知はv1.xの計画です。

たとえばfilesystem MCPサーバーを使う場合は、前段に付ければ動作します。

npx mcp-fence start -- npx @modelcontextprotocol/server-filesystem /tmp  

既存サーバーのコードを修正する必要はなく、この1行で動作します。デフォルトではログだけを残し、ブロックはしません。まずどのようなトラフィックが流れているかを確認し、問題なければブロックモードに切り替えればよいです。

モバイルセキュリティを9年間担当してきたエンジニアが1人で10週間かけて作ったプロジェクトなので、足りない部分があるかもしれません。フィードバックをいただけるとありがたいです.

まだコメントはありません。

まだコメントはありません。