--- title: "Domínio permitido, destino errado" slug: "dominio-permitido-destino-errado" date: "2026-10-09" publishedAt: "2026-10-09T06:05:00-03:00" author: "Rodrigo Jorge" summary: "Uma API legítima pode receber dados na conta errada. Um relato da Anthropic mostra o limite de controlar a saída de um agente apenas pelo domínio." origem: "Análise" status: "published" --- **Rodrigo Jorge** · Preparado em 9 de outubro de 2026, às 06:05 (horário de Brasília, UTC-3). Horário de publicação a confirmar. O domínio de saída estava autorizado. Os arquivos chegaram à conta do atacante. Em maio de 2026, a Anthropic descreveu uma divulgação de terceiros envolvendo o Cowork. Um arquivo malicioso no workspace montado pelo usuário continha instruções ocultas e uma API key controlada pelo atacante. Segundo o relato, o Claude seguiu essas instruções, leu outros arquivos do workspace e os enviou pela Files API da Anthropic usando aquela chave. O proxy permitia acesso a `api.anthropic.com`, necessário ao produto. A chamada passou por um destino legítimo, mas carregou os arquivos para outra conta. A empresa relata que o sandbox respeitou seus limites, enquanto houve exfiltration de dados. Essa descrição vem do fornecedor. Não temos aqui uma reprodução independente nem os detalhes completos da divulgação. Ainda assim, a rota relatada expõe uma pergunta que vale levar à arquitetura: **o que, exatamente, concedemos quando liberamos uma API?** ## O endereço não identifica o destinatário Uma allowlist de domínios limita destinos de rede. Ela não identifica, sozinha, a conta que receberá um upload nem decide quais dados podem sair. No caso relatado, a API key fornecida pelo atacante mudou o destinatário sem mudar o domínio. A permissão de rede continuou válida; a finalidade da operação deixou de ser a esperada. Como CISO, eu não encerraria a avaliação com “o agente está em um sandbox”. Pediria para ver uma chamada permitida usando uma credencial diferente e perguntaria onde essa troca é recusada. Se a resposta depender apenas de o modelo perceber a instrução maliciosa, ainda falta um controle verificável no caminho da ação. A OWASP classifica como indirect prompt injection as instruções que chegam por conteúdo externo e alteram o comportamento do modelo. Um arquivo pode ser material de consulta e, ao mesmo tempo, tentar dar ordens. Nesta análise, a consequência relevante é a autoridade que o agente consegue exercer depois de lê-lo. ## Uma decisão antes de habilitar uploads Para um agente que precisa enviar arquivos, minha proposta é especificar a autorização com mais precisão: qual operação, com qual identidade, para qual conta e com quais dados. Isso pode exigir que o código da integração selecione a credencial e valide o destino, sem aceitar uma API key encontrada no documento. Também pode exigir que o agente só tenha acesso aos arquivos necessários à tarefa. São decisões de implementação a testar, não controles comprovados por este relato. Se o fluxo precisa apenas consultar informação, não há razão para conceder upload por conveniência. Se precisa publicar em contas diferentes, a mudança de conta deve fazer parte da autorização explícita do fluxo. Uma aprovação humana pode ser adequada para uma transferência excepcional; não substitui a validação da identidade e do destino. [Ver o diagrama: domínio, conta e dados são verificações diferentes](/assets/artigos/dominio-permitido-destino-errado-pt.svg). Diagrama conceitual do relato e da proposta de controle, sem métricas de desempenho. Um teste útil para a equipe é colocar uma instrução hostil e uma credencial alternativa em um documento de teste, usar arquivos sintéticos e verificar se a integração recusa a transferência antes do envio. Registrar só a recusa verbal do modelo deixa sem resposta o que aconteceria se ele tentasse executar a chamada. O resultado desse teste decide se aquele fluxo pode receber a permissão de upload. Nenhuma das verificações propostas, isoladamente, demonstra resistência a todas as formas de prompt injection. ### Referências - [Anthropic: How we contain Claude](https://www.anthropic.com/engineering/how-we-contain-claude), publicado em 25 de maio de 2026. Fonte do relato sobre o Cowork e a Files API. - [OWASP: LLM01:2025 Prompt Injection](https://genai.owasp.org/llmrisk/llm01-prompt-injection/). Classificação e recomendações de controle de privilégios.