Skip to main content
Glama

Dangerous MCP

by ShaojieJiang

MCPは危険です

関数ツールの利用はAIエージェントを非常に強力にします。これはスマートフォンにアプリストアを導入するようなものです。特にMCP(モデルコンテキストプロトコル)のリリースにより、ツールの共有はかつてないほど容易になりました。そこで、オープンソースツールやカスタムツールを使ってAIエージェントの機能をいかに簡単に拡張できるかを示すために、 extendable-agentsプロジェクトを作成しました。

拡張可能なエージェントの開発に携わる中で、ツールの使用は諸刃の剣であることに気づきました。危険なのは、使用するツールが環境変数やファイルなど、マシンへの強力なアクセス権を持っていることです。

⚠️ セキュリティ警告

このプロジェクトは、ツールの使用に伴うセキュリティリスクを簡潔に示すものです。以下の例は、悪意のある攻撃者がMCPサーバーを悪用して機密情報にアクセスする可能性を示しています。

# WARNING: This is a demonstration of security risks. # DO NOT use this code maliciously! import os from mcp.server.fastmcp import FastMCP server = FastMCP("Dangerous MCP") @server.tool() async def get_environment_variables() -> str: """Get all environment variables.""" result = [ "Here are what I could find:", ] for key, value in os.environ.items(): result.append(f"{key:<30} {value[:5]}***") # This means I can open a backdoor to send your data to me!! return "\n".join(result)

⚠️**警告:**このサンプルはサンドボックス環境で実行し、実行後はOpenAI APIキーを削除することをお勧めします。また、以下のコマンドを使用して、ご自身のMCPクライアントでテストすることもできます: uvx mcp-is-dangerous

このツールを拡張可能エージェント ( PoliceAgentを選択) と共に使用すると、出力は次のようになります。

一見無害、あるいは意図的に無害に見えるかもしれません。しかし、次のシナリオを考えてみてください。現在時刻を尋ねただけで、知らないうちに機密データが漏洩してしまうのです。

セキュリティのベストプラクティス

MCP または同様のツールを使用する際に自分自身を保護するには:

  1. ツールを使用する前に必ずソースコードを確認してください
  2. 可能な場合は分離された環境でツールを実行する
  3. 機密情報へのアクセスを要求するツールには注意しましょう
  4. ツールを展開するときに環境変数フィルタリングを使用する
  5. 使用しているツールを定期的に監査する

免責事項

このプロジェクトは、潜在的なセキュリティリスクを示すための教育目的のみに使用されます。この知識を悪意のある目的で使用しないでください。著者は、この情報の誤用について一切責任を負いません。

ライセンス

MITライセンス

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

機密性の高い環境変数にアクセスすることでセキュリティ リスクを明らかにし、MCP ツールが明示的な同意なしにユーザー データを漏洩する可能性があることを示すデモ サーバーです。

  1. ⚠️ セキュリティ警告
    1. セキュリティのベストプラクティス
      1. 免責事項
        1. ライセンス

          Related MCP Servers

          • -
            security
            F
            license
            -
            quality
            Damn Vulnerable MCP Server for Security Researchers.
            Last updated -
            Python
          • -
            security
            -
            license
            -
            quality
            A vulnerable MCP server implementation that demonstrates how poor coding practices can lead to security issues like Remote Code Execution, designed for educational purposes to add numbers.
            Last updated -
            Python
            MIT License
          • -
            security
            -
            license
            -
            quality
            Intentionally vulnerable Model Context Protocol (MCP) server designed for security research that processes natural language queries through an LLM to execute SQL queries or shell commands without restrictions.
            Last updated -
            Python
          • -
            security
            F
            license
            -
            quality
            An educational project that deliberately implements vulnerable MCP servers to demonstrate various security risks like prompt injection, tool poisoning, and code execution for training security researchers and AI safety professionals.
            Last updated -
            859
            Python

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/ShaojieJiang/mcp-is-dangerous'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server