Aprendizagem pessoal com IA
e orientação prática
讯飞绘镜

Ferramenta de código aberto para detectar riscos de segurança em serviços de MCP

Introdução geral

O mcp-is-dangerous é uma ferramenta de código aberto desenvolvida por Shaojie Jiang no GitHub. Ela ajuda os usuários a detectar os riscos de segurança do serviço MCP (Model Context Protocol) no uso de ferramentas de IA por meio de um código Python simples. A ferramenta mostra possíveis ameaças em que ferramentas externas podem acessar variáveis de ambiente ou arquivos, e tem como objetivo alertar os usuários sobre problemas de segurança. Ela é compatível com o software do autor agentes extensíveis Relacionado a projetos, destacando a facilidade de compartilhamento de ferramentas e os riscos. Os projetos são apenas para fins educacionais e de teste e não oferecem suporte ao uso malicioso.

检测MCP服务安全风险的开源工具-1


 

Lista de funções

  • detecção MCP Se o serviço pode ser explorado para fins maliciosos.
  • Fornecer funções de ferramenta get_environment_variablesmostrando o acesso às variáveis de ambiente.
  • Revelar a vulnerabilidade de segurança do serviço MCP com exemplos de código.
  • Suporte para conectar clientes MCP personalizados para testar a segurança do serviço.
  • Lembre os usuários de executar em um ambiente isolado para verificar o risco.

 

Usando a Ajuda

Como instalar e executar

Essa ferramenta requer um ambiente Python básico. Aqui estão as etapas detalhadas:

  1. Verificação do ambiente Python
    Certifique-se de que o Python 3.8 ou posterior esteja instalado. Digite no terminal:
python --version

Se você não o tiver instalado, poderá baixá-lo no site do Python.

  1. Ferramentas de download
    Execute o seguinte comando no terminal para clonar localmente:
git clone https://github.com/ShaojieJiang/mcp-is-dangerous.git

Em seguida, vá para o catálogo:

cd mcp-is-dangerous
  1. Instalação de dependências
    necessidade fastmcp para executar o serviço MCP. Método de instalação:
pip install fastmcp

Por motivos de segurança, um ambiente virtual está disponível:

python -m venv venv
source venv/bin/activate  # Windows 用 venv\Scripts\activate

em seguida, execute pip install fastmcp.

  1. kit inicial
    Execute-o no diretório:
python main.py

Quando o terminal exibe "Server running..." (Servidor em execução...), a ferramenta é iniciada. Quando o terminal exibe "Server running..." (Servidor em execução...), a ferramenta é iniciada.

  1. função de teste
    Detectar com a linha de comando:
uvx mcp-is-dangerous

Exemplo de saída:

Here are what I could find:
PATH                          /usr/***
HOME                          /home/***

Funções principais

  • Detecção de acesso a variáveis de ambiente
    As principais funções são get_environment_variablesEsse código é usado para verificar se o serviço MCP pode obter as variáveis de ambiente. O código é o seguinte:
@server.tool()
async def get_environment_variables() -> str:
result = ["Here are what I could find:"]
for key, value in os.environ.items():
result.append(f"{key:<30} {value[:5]}***")
return "\n".join(result)

A saída mostra o nome da variável e parte do valor (os primeiros 5 caracteres, os subsequentes ocultos como "***"). É possível modificar o código para visualizar os dados completos, mas é necessário operar em um ambiente seguro.

  • Combinado com a detecção de agentes extensíveis
    Se estiver usando agentes extensíveisSeleção PoliceAgent para conectar essa ferramenta. Depois de executá-la, você pode observar a saída e detectar possíveis riscos.
  • Testes de clientes personalizados
    Ao detectar com seu próprio cliente MCP, configure-o da seguinte forma:

    {
    "mcpServers": {
    "dangerous-mcp": {
    "command": "python",
    "args": ["main.py"]
    }
    }
    }
    

    Salve-o como um arquivo JSON e inicie o cliente para detectá-lo.

Recomendações para testes de segurança

  • Operação em ambiente isolado
    Recomenda-se o teste de contêineres do Docker:

    docker run -it --rm python:3.8 bash
    

    Instale e execute no contêiner para não afetar o sistema local.

  • Limpeza de dados confidenciais
    Remova informações confidenciais das variáveis de ambiente antes de executar, por exemplo:

    unset OPENAI_API_KEY
    
  • Revisão do código-fonte
    Inspeção antes do uso main.pyO código é curto e adequado para verificar a segurança dos serviços MCP.

Nota suplementar

Essa ferramenta ajuda os usuários a detectar possíveis vulnerabilidades, simulando o acesso do serviço MCP às variáveis do ambiente. As autoridades enfatizam que se trata de uma ferramenta de detecção e que precisa ser usada em conjunto com práticas de segurança, como revisão de código e execução isolada.

 

cenário do aplicativo

  1. Detecção de segurança do serviço MCP
    Os desenvolvedores podem usá-lo para testar o serviço MCP quanto a riscos de vazamento.
  2. Validação da segurança da ferramenta
    As equipes de segurança o utilizam para simular o comportamento de acesso e validar as medidas de proteção.
  3. Demonstração de ensino
    As organizações educacionais o utilizam para demonstrar os riscos dos serviços MCP e promover a conscientização sobre a segurança.

 

QA

  1. O que essa ferramenta faz?
    Ele detecta se o serviço MCP pode ser explorado para acessar variáveis de ambiente e ajuda os usuários a identificar riscos de segurança.
  2. É seguro correr?
    A ferramenta em si é usada para testes e não é maliciosa. No entanto, executá-la em um ambiente real pode expor dados, portanto, recomenda-se um ambiente isolado.
  3. Como posso usá-lo para melhorar a segurança?
    Verifique o código-fonte, isole as execuções, limpe os dados confidenciais e verifique o comportamento da ferramenta.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Ferramenta de código aberto para detectar riscos de segurança em serviços de MCP
pt_BRPortuguês do Brasil