Kzarka Voltar
← Voltar para notícias

Falha no SDK Python MCP Rouba Credenciais OAuth

|
6 min de leitura
30/09/2026 às 14:31

Alerta máximo. Uma falha recém-descoberta no SDK oficial de Python para o Model Context Protocol (MCP) pode entregar suas credenciais OAuth a servidores maliciosos. O problema foi relatado pela firma de segurança Cycode e confirmado pelos mantenedores do projeto. Se você usa aplicações de IA que se conectam a serviços externos, precisa agir agora.

O que é o MCP e por que isso importa

O Model Context Protocol (MCP) é um padrão aberto que conecta assistentes de IA a ferramentas e dados externos. Ele permite que modelos de linguagem acessem APIs, bancos de dados e outros recursos. O SDK Python oficial é amplamente usado por desenvolvedores para criar servidores e clientes MCP.

A falha está nas versões 1.9.1 a 1.29.1 (linha 1.x) e 2.0.0 a 2.1.1 (linha 2.x). Nessas versões, o cliente MCP não validava corretamente o endpoint de autorização. Um servidor malicioso podia indicar um token endpoint falso. O cliente então enviava o client secret, o código de autorização e a chave de prova PKCE para o atacante.

Com esses dados, o criminoso pode solicitar um token de acesso legítimo. O token carrega todas as permissões que a aplicação tinha. E o pior: o client secret é de longa duração. Ele continua válido até ser revogado.

Como o ataque funciona na prática

Imagine que você usa um cliente MCP para conectar seu assistente de IA a um serviço de e-mail. Ao iniciar a conexão, o cliente pergunta ao servidor MCP onde está o serviço de login (authorization server). Nas versões vulneráveis, o SDK não verificava se a resposta era confiável.

Um servidor malicioso pode responder com o endereço do próprio servidor do atacante. Ou pode indicar o serviço real, mas redirecionar as credenciais para outro lugar. O usuário vê a página de login legítima e aprova a autorização. Nada parece errado. Mas as credenciais já foram roubadas.

O ataque é ainda mais perigoso nos provedores machine-to-machine, que não exigem interação humana. Nesses casos, o roubo acontece de forma totalmente silenciosa.

Provedores afetados

  • OAuthClientProvider
  • ClientCredentialsOAuthProvider
  • PrivateKeyJWTOAuthProvider
  • RFC7523OAuthClientProvider (obsoleto na 1.x)

Se sua aplicação usa algum desses provedores e se conecta a servidores MCP não confiáveis, você está em risco.

Impacto imediato e relação com sequestro de contas

O roubo de credenciais OAuth é um vetor clássico para sequestro de contas. Com um token válido, o atacante pode acessar sua conta como se fosse você. Em redes sociais, isso significa postar conteúdo falso, enviar mensagens maliciosas e até bloquear o acesso do dono legítimo.

O sequestro de contas em redes sociais é uma praga crescente. Criminosos usam credenciais vazadas para invadir perfis, aplicar golpes e espalhar malware. A falha no SDK MCP é mais um caminho para obter essas credenciais de forma automatizada.

Se você usa um assistente de IA conectado a suas contas, o risco é duplo. Primeiro, o token roubado pode dar acesso direto à sua conta. Segundo, o invasor pode usar a confiança da sua rede para enganar seus contatos.

O que fazer agora: correção e mitigação

A correção está disponível nas versões 1.30.0 (linha 1.x) e 2.2.0 (linha 2.x). A atualização implementa verificações de issuer. O cliente agora valida se o endpoint de autorização corresponde ao esperado antes de enviar credenciais.

Mas atenção: atualizar não é suficiente para todos os casos. Para os provedores ClientCredentialsOAuthProvider e PrivateKeyJWTOAuthProvider, você precisa passar o parâmetro issuer= explicitamente. Sem isso, o cliente continua seguindo qualquer endpoint indicado pelo servidor MCP.

Na versão 1.30.0, um aviso de depreciação é emitido, mas fica oculto por padrão. Muitos desenvolvedores podem não perceber. O provedor obsoleto RFC7523OAuthClientProvider não tem a opção issuer=. Nesse caso, migre para um dos outros provedores.

Passos práticos

  1. Atualize o SDK para 1.30.0 ou 2.2.0 imediatamente.
  2. Configure o issuer= nos provedores aplicáveis.
  3. Limpe registros OAuth antigos armazenados no cliente.
  4. Rotacione client secrets e revogue tokens se houve conexão com servidor não confiável.
  5. Monitore logs de autenticação em busca de atividades suspeitas.

Se você não pode atualizar agora, a única mitigação é conectar-se apenas a servidores MCP confiáveis.

Ransomware e campanhas de golpe: o cenário maior

Essa falha não existe no vácuo. Ela se encaixa em um ecossistema de ameaças emergentes. Credenciais roubadas alimentam ataques de ransomware, onde criminosos criptografam dados e exigem resgate. Também abastecem campanhas de phishing e golpes de engenharia social.

O relatório da Cycode não indica exploração ativa até o momento. Mas a janela entre a divulgação e a exploração costuma ser curta. Aja antes que seja tarde.

Além disso, o sequestro de contas em redes sociais frequentemente começa com credenciais vazadas. Uma vez dentro, o atacante pode usar a conta para espalhar links maliciosos, pedir dinheiro a contatos ou até mesmo vender o acesso em fóruns clandestinos.

Dados do impacto

VersãoFaixa afetadaVersão corrigidaNotas
1.x1.9.1 – 1.29.11.30.0Requer issuer= para alguns provedores
2.x2.0.0 – 2.1.12.2.0Requer issuer= para alguns provedores

Como a Kzarka pode ajudar

Na Kzarka, monitoramos vazamentos de dados e alertamos você sobre exposições. Se suas credenciais aparecerem em listas de vazamento, você recebe um alerta imediato. Isso permite que você revogue acessos e proteja suas contas antes que criminosos as usem.

Nossa plataforma também monitora a dark web em busca de menções ao seu e-mail, CPF ou outros dados pessoais. Com a Kzarka, você fica um passo à frente dos ataques.

Não espere ser vítima. Verifique agora se seus dados vazaram. Acesse https://kzarka.com e faça uma varredura gratuita. Proteja sua identidade digital antes que seja tarde.

Perguntas frequentes

O que é o Model Context Protocol (MCP)?

É um padrão aberto que permite que aplicações de IA se conectem a ferramentas e fontes de dados externas. Ele define como clientes e servidores trocam informações e autorizam acesso.

Como saber se minha aplicação está vulnerável?

Verifique a versão do SDK Python MCP que você utiliza. Se estiver entre 1.9.1 e 1.29.1 (linha 1.x) ou 2.0.0 e 2.1.1 (linha 2.x), e sua aplicação se conecta a servidores MCP não confiáveis, você está em risco. Atualize imediatamente.

O que é PKCE e por que sua exposição é grave?

PKCE (Proof Key for Code Exchange) é uma extensão de segurança do OAuth que impede que um código de autorização interceptado seja usado por terceiros. Se a chave de prova é roubada junto com o código, o atacante pode trocá-la por um token de acesso, anulando essa proteção.

Como posso proteger minhas contas de redes sociais contra sequestro?

Use autenticação de dois fatores, senhas fortes e exclusivas, e monitore regularmente os dispositivos conectados às suas contas. Além disso, verifique se seus dados vazaram em serviços como a Kzarka, que alerta sobre exposições em tempo real.

Gostou do conteúdo?

Compartilhe para ajudar a proteger mais pessoas.