Cibersegurança

6 Melhores Práticas para Construir um Servidor MCP Seguro

mm
Adicione Unite.AI às suas fontes preferidas no Google

Desde que a Anthropic lançou o Protocolo de Contexto de Modelo no final de 2024, a adoção tem crescido, com muitas empresas lançando seus próprios servidores MCP para ajudar os agentes de IA a acessar seus dados.

Embora isso seja benéfico para ampliar as capacidades da IA, também expõe essas empresas a vulnerabilidades de segurança significativas.

Sem as precauções certas, os servidores MCP podem conceder acesso irrestrito a dados sensíveis em e-mails, CRMs, ferramentas de armazenamento de arquivos e outras aplicações. E mesmo quando medidas de segurança agressivas são tomadas, atores mal-intencionados podem usar táticas como ataques de injeção de prompts para obter credenciais de autenticação.

Já estamos começando a ver incidentes de segurança acontecerem. O GitHub, por exemplo, recentemente experimentou uma vulnerabilidade do MCP que expôs repositórios privados.

Aprendemos por experiência própria o que é necessário para construir um servidor MCP que possa resistir a qualquer ameaça de segurança.

Com isso em mente, aqui estão minhas principais dicas para construir e gerenciar servidores MCP.

Garanta a Segurança com Blocos Rígidos e Gerenciamento de Permissões

O princípio de segurança mais crítico para os MCPs é que os blocos rígidos sempre substituirão prompts e outros controles flexíveis dados aos agentes. Embora os agentes de IA tenham flexibilidade para decidir quando chamar ferramentas e quais entradas enviar, as implementações de ferramentas — ou uma camada codificada rigidamente na frente delas — ultimatemente prevenirão problemas de permissão, desde que a identidade do usuário seja autenticada corretamente.

Para garantir a segurança, configure as extensões com gerenciamento de permissões estrito desde o início.

Isso começa com o gerenciamento das permissões concedidas às chaves de API. As ferramentas fornecem uma vantagem aqui, envolvendo código estático e criando uma interface controlada que pode aplicar políticas de segurança, independentemente do comportamento do agente.

Trate as Chaves de API como Senhas

Em vez de codificar as chaves, mova todas as credenciais fora do código e dos arquivos de configuração para variáveis de ambiente ou gerenciadores de segredos dedicados, como o HashiCorp Vault ou o AWS Secrets Manager.

As credenciais temporárias fornecem uma camada adicional de segurança para dados extremamente sensíveis e casos de uso em que conexões permanentes não são necessárias. Nesse caso, ferramentas como o AWS STS podem gerar tokens de curta duração que expiram rapidamente, minimizando a janela de uso potencial. No entanto, para a maioria das implementações, o OAuth apropriado com token de atualização ou autenticação básica bem segura pode abordar eficazmente essas preocupações.

A chave é implementar o controle de acesso baseado em papéis por ferramenta (RBAC) com sistemas de gerenciamento de permissões integrados. Dê a cada integração do MCP seu próprio papel granular, com escopo estritamente para permissões necessárias. Uma política do Vault que permite apenas acesso de leitura para kv/data/GitHub é infinitamente mais segura do que um token raiz. Os sistemas de Gerenciamento de Identidade e Acesso (IAM) do seu provedor de nuvem podem aplicar automaticamente padrões de acesso de privilégio mínimo.

Proteja Dados Sensíveis com Software de DLP e Detecção de PII

As ferramentas do MCP podem acessar vastas quantidades de dados sensíveis em toda a sua organização. Sem os controles apropriados, elas podem expor inadvertidamente PII de clientes, registros financeiros ou informações proprietárias sobre seu produto.

Para abordar isso, implante software de prevenção de perda de dados (DLP) que possa inspecionar o tráfego do MCP em tempo real. Configure regras de DLP para detectar e bloquear a transmissão de números de cartão de crédito, números de Seguro Social, chaves de API e outros padrões sensíveis antes que eles deixem seu ambiente.

Você também deve usar ferramentas que possam identificar e mascarar automaticamente informações pessoais em prompts, respostas de ferramentas e logs de auditoria. E considere usar soluções que possam detectar PII em vários formatos, incluindo campos de banco de dados estruturados, texto não estruturado e conteúdo de imagem por meio de técnicas avançadas, como OCR ou NLP.

Proteja e Gerencie suas Dependências

O crescimento rápido do ecossistema do MCP criou um Faroeste de binários potencialmente não confiáveis. Os servidores publicados pela comunidade podem ser backdoored, mal mantidos ou simplesmente abandonados. Quando você instala dependências sem verificação, corre o risco de executar código mal-intencionado.

Implemente um gerenciamento de dependência estrito com verificação de integridade. Use assinaturas digitais e checksums para garantir que o código não tenha sido alterado. E siga as melhores práticas de segurança, reutilizando código de verificação de autorização comprovado, escrevendo testes abrangentes e aproveitando ferramentas automatizadas, como teste de segurança de aplicativos estáticos (SAST), teste de segurança de aplicativos dinâmicos (DAST) e análise de composição de software (SCA), para identificar vulnerabilidades antes que elas possam ser exploradas.

Teste Cada Ferramenta Rigorosamente

Os ataques de injeção direta inserem comandos mal-intencionados nos prompts de invocação de ferramentas, mas os ataques indiretos são mais sutis e potencialmente mais perigosos. Os atacantes podem, por exemplo, incorporar instruções mal-intencionadas em descrições de ferramentas ou metadados que são incluídos nos prompts do LLM.

Todas as ferramentas devem passar por um processo de aprovação rigoroso antes do deploy que combine testes automatizados com revisão por profissionais de segurança. Implemente medidas de defesa em camadas, incluindo verificação manual para operações críticas, separação clara entre prompts do sistema e entradas do usuário e sistemas de detecção automatizados que possam identificar instruções mal-intencionadas potenciais em prompts do usuário e metadados de ferramentas.

Monitore Incidentes de Segurança Proativamente

Além dos controles fundamentais, as equipes devem aproveitar uma ferramenta de segurança abrangente, incluindo monitoramento de chamadas de ferramentas, padrões de atividade do usuário e padrões de acesso de URL de saída, para detectar incidentes de segurança potenciais antes que eles escalonem.

Ao implantar sistemas de detecção automatizados, você pode identificar padrões incomuns no uso de ferramentas, tentativas de acesso de dados inesperadas ou tráfego de rede anormal que possam indicar um sistema comprometido. Além disso, manter logs consistentes para monitorar o raciocínio e as saídas de um modelo de linguagem é crucial para rastrear quaisquer ações não intencionais.

Aproveitando ao Máximo os MCPs

O poder do MCP vem de sua capacidade de transformar os assistentes de IA em agentes totalmente programáveis. Mas esse mesmo poder exige controles de segurança igualmente sofisticados.

As soluções não são exóticas; são extensões de práticas de segurança comprovadas aplicadas a esse novo padrão arquitetônico. O software de prevenção de perda de dados, os redatores de PII e os sistemas de gerenciamento de permissões integrados que você provavelmente já está usando podem ser adaptados para proteger os servidores MCP.

As organizações que abordam essas vulnerabilidades agora desbloquearão o potencial total do MCP de forma segura.

Gil Feig é o Co-Fundador e CTO da Merge, a principal plataforma de API unificada. Anteriormente, Gil foi o Head de Engenharia da Untapped e trabalhou como engenheiro de software na Wealthfront e no LinkedIn. Formado pela Universidade de Columbia, ele vive e trabalha na cidade de Nova York.