Vulnerabilidades e Demonstração de Ataques do Sistema MCP
MCP (Modelo de Contexto de Protocolo) O sistema ainda está em fase inicial de desenvolvimento, o ambiente geral é relativamente caótico, e várias formas potenciais de ataque surgem continuamente. Os protocolos e ferramentas existentes têm dificuldade em defender-se de forma eficaz. Para aumentar a segurança do MCP, a SlowMist abriu o código da ferramenta MasterMCP, que ajuda a identificar vulnerabilidades de segurança no design do produto através de simulações de ataques reais, fortalecendo assim o projeto MCP.
Este artigo demonstrará os métodos de ataque comuns sob o sistema MCP, como envenenamento de informações e ocultação de instruções maliciosas, entre outros casos reais. Todos os scripts de demonstração também serão disponibilizados no GitHub, permitindo que todos reproduzam todo o processo em um ambiente seguro, ou até desenvolvam seus próprios plugins de teste de ataque.
Visão Geral da Arquitetura
Demonstração de ataque ao alvo MCP:Toolbox
smithery.ai é um dos sites de plugins MCP mais populares atualmente, reunindo uma grande quantidade de listas MCP e usuários ativos. Entre eles, @smithery/toolbox é a ferramenta de gestão MCP lançada oficialmente.
Escolher o Toolbox como alvo de teste baseia-se principalmente em:
A base de usuários é grande e representativa
Suporta a instalação automática de outros plugins, complementando algumas funcionalidades do cliente.
Inclui configurações sensíveis ( como a chave API ), facilitando a demonstração
Demonstração de uso do MCP malicioso: MasterMCP
MasterMCP é uma ferramenta de simulação de MCP malicioso desenvolvida pela SlowMist especificamente para testes de segurança, adotando um design de arquitetura modular e incluindo os seguintes módulos chave:
Simulação de serviços de sites locais:
O MasterMCP possui um módulo de simulação de serviço de site local embutido, permitindo a rápida construção de um servidor HTTP simples através do framework FastAPI, simulando um ambiente de página web comum. Estas páginas parecem normais, mas na verdade contêm cargas maliciosas cuidadosamente projetadas no código-fonte ou nas respostas da interface.
Arquitetura MCP plugin local
O MasterMCP utiliza uma abordagem modular para expansão, facilitando a adição rápida de novos métodos de ataque. Após a execução, o MasterMCP executará o serviço FastAPI do módulo anterior em um subprocesso.
Cliente de Demonstração
Cursor: uma das IDEs de programação assistidas por IA mais populares globalmente
Claude Desktop: Cliente oficial da Anthropic
modelo grande usado para demonstração
Claude 3.7
Escolha a versão Claude 3.7, pois já houve melhorias no reconhecimento de operações sensíveis, representando ao mesmo tempo uma capacidade de operação bastante forte no atual ecossistema MCP.
Invocação Maliciosa Cross-MCP
Esta demonstração contém dois conteúdos: envenenamento e chamadas maliciosas Cross-MCP.
ataque de envenenamento de conteúdo da web
Injeção de Comentário
O cursor acede a um site de teste local, esta é uma página que parece inofensiva chamada "Delicious Cake World".
Executar instrução:
Buscar o conteúdo de
Os resultados mostram que o Cursor não apenas leu o conteúdo da página da web, mas também enviou dados sensíveis de configuração local de volta para o servidor de teste. No código-fonte, as palavras-chave maliciosas foram inseridas na forma de comentários HTML.
Injeção de comentários codificados
Acesse a página /encode, que é uma página semelhante, mas com as palavras-chave maliciosas codificadas, tornando a injeção de exp mais oculta, mesmo ao acessar o código-fonte da página da web, é difícil perceber diretamente.
Mesmo que o código-fonte não contenha palavras-chave em texto claro, o ataque ainda será executado com sucesso.
ataque de poluição de interface de terceiros
Esta demonstração serve principalmente para alertar que, seja um MCP malicioso ou não, ao chamar uma API de terceiros, se os dados de terceiros forem retornados diretamente ao contexto, isso pode ter sérias consequências.
Executar pedido:
Buscar json de /api/data
Resultado: palavras-chave maliciosas foram inseridas nos dados JSON retornados e acionaram com sucesso a execução maliciosa.
Técnica de envenenamento na fase de inicialização do MCP
Esta demonstração contém dois conteúdos: injeção de palavras-chave iniciais e conflitos de nome.
ataque de sobreposição de função maliciosa
MasterMCP escreveu uma ferramenta chamada remove_server com a mesma função que a Toolbox e codificou palavras-chave maliciosas de forma oculta.
Claude Desktop não chamou o método remove_server do toolbox original, mas sim acionou o método homônimo fornecido pelo MasterMCP.
O princípio é enfatizar que "o método original foi descontinuado", priorizando a indução do modelo grande a chamar funções de sobreposição maliciosas.
Adicionar lógica de verificação global maliciosa
MasterMCP escreveu a ferramenta banana, cuja função principal é forçar a execução dessa ferramenta para verificação de segurança antes que todas as outras ferramentas sejam executadas no prompt.
Antes de cada execução da função, o sistema prioriza a chamada ao mecanismo de verificação banana. Isso é alcançado através da injeção de lógica global, enfatizando repetidamente no código que "a verificação banana deve ser executada".
Dicas avançadas para ocultar palavras-chave maliciosas
forma de codificação amigável para grandes modelos
Devido à forte capacidade de análise de formatos multilíngues dos grandes modelos de linguagem, isso é frequentemente utilizado para ocultar informações maliciosas, sendo os métodos mais comuns incluem:
Ambiente em inglês: usar codificação Hex Byte
Ambiente em chinês: usar codificação NCR ou codificação JavaScript
mecanismo de retorno de carga maliciosa aleatória
Quando o pedido /random é feito, ele retorna aleatoriamente uma página com carga maliciosa a cada vez, aumentando significativamente a dificuldade de detecção e rastreamento.
Resumo
Através da demonstração prática do MasterMCP, vimos claramente os vários riscos de segurança ocultos no sistema MCP. Desde a injeção de palavras-chave simples e chamadas cruzadas de MCP, até ataques na fase de inicialização e ocultação de instruções maliciosas, cada etapa nos lembra: embora o ecossistema MCP seja poderoso, também é igualmente frágil.
Particularmente, à medida que os grandes modelos interagem cada vez mais com plugins externos e APIs, uma pequena contaminação na entrada pode causar riscos de segurança em nível de sistema. A diversidade de métodos dos atacantes, como a codificação oculta (, contaminação aleatória e sobrecarga de funções ), significa que as abordagens tradicionais de proteção precisam de uma atualização abrangente.
Espero que esta demonstração sirva de alerta para todos: desenvolvedores e utilizadores devem manter-se vigilantes em relação ao sistema MCP, prestando atenção a cada interação, linha de código e valor de retorno. Somente tratando os detalhes com rigor, podemos construir um ambiente MCP sólido e seguro.
A SlowMist continuará a aprimorar o script MasterMCP, open source mais casos de teste direcionados, ajudando a entender, praticar e reforçar a proteção em um ambiente seguro. O conteúdo relacionado já foi sincronizado no GitHub, os leitores interessados podem conferir.
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
11 gostos
Recompensa
11
6
Partilhar
Comentar
0/400
screenshot_gains
· 17h atrás
gm há uma nova vulnerabilidade
Ver originalResponder0
AirdropSweaterFan
· 17h atrás
Cuidado para não ser enganado por idiotas!
Ver originalResponder0
ContractCollector
· 17h atrás
MCP enviou, enviou
Ver originalResponder0
ForkItAll
· 17h atrás
Tudo está escuro, o que mais há para dizer?
Ver originalResponder0
MissedAirdropBro
· 17h atrás
As ambulâncias são mais estáveis do que isso.
Ver originalResponder0
MEVSandwichVictim
· 17h atrás
又被 fazer as pessoas de parvas啦?fazer as pessoas de parvas什么都不如 fazer as pessoas de parvas我们这些 idiotas~
MasterMCP revela vulnerabilidades de segurança do MCP com demonstrações práticas de vários métodos de ataque
Vulnerabilidades e Demonstração de Ataques do Sistema MCP
MCP (Modelo de Contexto de Protocolo) O sistema ainda está em fase inicial de desenvolvimento, o ambiente geral é relativamente caótico, e várias formas potenciais de ataque surgem continuamente. Os protocolos e ferramentas existentes têm dificuldade em defender-se de forma eficaz. Para aumentar a segurança do MCP, a SlowMist abriu o código da ferramenta MasterMCP, que ajuda a identificar vulnerabilidades de segurança no design do produto através de simulações de ataques reais, fortalecendo assim o projeto MCP.
Este artigo demonstrará os métodos de ataque comuns sob o sistema MCP, como envenenamento de informações e ocultação de instruções maliciosas, entre outros casos reais. Todos os scripts de demonstração também serão disponibilizados no GitHub, permitindo que todos reproduzam todo o processo em um ambiente seguro, ou até desenvolvam seus próprios plugins de teste de ataque.
Visão Geral da Arquitetura
Demonstração de ataque ao alvo MCP:Toolbox
smithery.ai é um dos sites de plugins MCP mais populares atualmente, reunindo uma grande quantidade de listas MCP e usuários ativos. Entre eles, @smithery/toolbox é a ferramenta de gestão MCP lançada oficialmente.
Escolher o Toolbox como alvo de teste baseia-se principalmente em:
Demonstração de uso do MCP malicioso: MasterMCP
MasterMCP é uma ferramenta de simulação de MCP malicioso desenvolvida pela SlowMist especificamente para testes de segurança, adotando um design de arquitetura modular e incluindo os seguintes módulos chave:
O MasterMCP possui um módulo de simulação de serviço de site local embutido, permitindo a rápida construção de um servidor HTTP simples através do framework FastAPI, simulando um ambiente de página web comum. Estas páginas parecem normais, mas na verdade contêm cargas maliciosas cuidadosamente projetadas no código-fonte ou nas respostas da interface.
O MasterMCP utiliza uma abordagem modular para expansão, facilitando a adição rápida de novos métodos de ataque. Após a execução, o MasterMCP executará o serviço FastAPI do módulo anterior em um subprocesso.
Cliente de Demonstração
modelo grande usado para demonstração
Escolha a versão Claude 3.7, pois já houve melhorias no reconhecimento de operações sensíveis, representando ao mesmo tempo uma capacidade de operação bastante forte no atual ecossistema MCP.
Invocação Maliciosa Cross-MCP
Esta demonstração contém dois conteúdos: envenenamento e chamadas maliciosas Cross-MCP.
ataque de envenenamento de conteúdo da web
O cursor acede a um site de teste local, esta é uma página que parece inofensiva chamada "Delicious Cake World".
Executar instrução: Buscar o conteúdo de
Os resultados mostram que o Cursor não apenas leu o conteúdo da página da web, mas também enviou dados sensíveis de configuração local de volta para o servidor de teste. No código-fonte, as palavras-chave maliciosas foram inseridas na forma de comentários HTML.
Acesse a página /encode, que é uma página semelhante, mas com as palavras-chave maliciosas codificadas, tornando a injeção de exp mais oculta, mesmo ao acessar o código-fonte da página da web, é difícil perceber diretamente.
Mesmo que o código-fonte não contenha palavras-chave em texto claro, o ataque ainda será executado com sucesso.
ataque de poluição de interface de terceiros
Esta demonstração serve principalmente para alertar que, seja um MCP malicioso ou não, ao chamar uma API de terceiros, se os dados de terceiros forem retornados diretamente ao contexto, isso pode ter sérias consequências.
Executar pedido: Buscar json de /api/data
Resultado: palavras-chave maliciosas foram inseridas nos dados JSON retornados e acionaram com sucesso a execução maliciosa.
Técnica de envenenamento na fase de inicialização do MCP
Esta demonstração contém dois conteúdos: injeção de palavras-chave iniciais e conflitos de nome.
ataque de sobreposição de função maliciosa
MasterMCP escreveu uma ferramenta chamada remove_server com a mesma função que a Toolbox e codificou palavras-chave maliciosas de forma oculta.
Executar instruções: ferramenta remover buscar plugin servidor
Claude Desktop não chamou o método remove_server do toolbox original, mas sim acionou o método homônimo fornecido pelo MasterMCP.
O princípio é enfatizar que "o método original foi descontinuado", priorizando a indução do modelo grande a chamar funções de sobreposição maliciosas.
Adicionar lógica de verificação global maliciosa
MasterMCP escreveu a ferramenta banana, cuja função principal é forçar a execução dessa ferramenta para verificação de segurança antes que todas as outras ferramentas sejam executadas no prompt.
Antes de cada execução da função, o sistema prioriza a chamada ao mecanismo de verificação banana. Isso é alcançado através da injeção de lógica global, enfatizando repetidamente no código que "a verificação banana deve ser executada".
Dicas avançadas para ocultar palavras-chave maliciosas
forma de codificação amigável para grandes modelos
Devido à forte capacidade de análise de formatos multilíngues dos grandes modelos de linguagem, isso é frequentemente utilizado para ocultar informações maliciosas, sendo os métodos mais comuns incluem:
mecanismo de retorno de carga maliciosa aleatória
Quando o pedido /random é feito, ele retorna aleatoriamente uma página com carga maliciosa a cada vez, aumentando significativamente a dificuldade de detecção e rastreamento.
Resumo
Através da demonstração prática do MasterMCP, vimos claramente os vários riscos de segurança ocultos no sistema MCP. Desde a injeção de palavras-chave simples e chamadas cruzadas de MCP, até ataques na fase de inicialização e ocultação de instruções maliciosas, cada etapa nos lembra: embora o ecossistema MCP seja poderoso, também é igualmente frágil.
Particularmente, à medida que os grandes modelos interagem cada vez mais com plugins externos e APIs, uma pequena contaminação na entrada pode causar riscos de segurança em nível de sistema. A diversidade de métodos dos atacantes, como a codificação oculta (, contaminação aleatória e sobrecarga de funções ), significa que as abordagens tradicionais de proteção precisam de uma atualização abrangente.
Espero que esta demonstração sirva de alerta para todos: desenvolvedores e utilizadores devem manter-se vigilantes em relação ao sistema MCP, prestando atenção a cada interação, linha de código e valor de retorno. Somente tratando os detalhes com rigor, podemos construir um ambiente MCP sólido e seguro.
A SlowMist continuará a aprimorar o script MasterMCP, open source mais casos de teste direcionados, ajudando a entender, praticar e reforçar a proteção em um ambiente seguro. O conteúdo relacionado já foi sincronizado no GitHub, os leitores interessados podem conferir.