Cibersegurança

Claude instala pacotes npm sozinho e um deles pode roubar seus arquivos

Susan Hill

O recurso Computer Use do Claude faz algo que um chatbot comum não faz. Ele abre um terminal no seu computador e instala software no seu lugar, incluindo pacotes baixados direto do npm, o maior registro de código aberto do mundo. O apelo é claro, porque reduz «monte este projeto para mim» a uma única frase. O risco está na mesma frase, porque no instante em que um pacote chega, o npm pode rodar o código de inicialização que esse pacote trouxe consigo, e agora quem puxa o gatilho é um agente autônomo.

Para qualquer um que deixe um agente de IA escrever ou rodar código, e são cada vez mais desenvolvedores, entusiastas e curiosos sem formação técnica, a pergunta prática é direta. Se o Claude instala um pacote que você nunca olhou, e esse pacote foi feito para copiar seus arquivos no instante em que cai, quem deveria barrá-lo? Um vídeo recente de um pesquisador de segurança percorre exatamente essa situação e mostra um pacote armadilhado lendo arquivos locais durante uma instalação rotineira que a IA executa sem hesitar.

O mecanismo não é novo, e é justamente isso que o torna grave. Os pacotes npm podem declarar scripts de instalação, pequenas instruções que rodam automaticamente assim que um pacote é adicionado a um projeto, antes de uma única linha dele ser usada de propósito. É um comportamento documentado, não uma falha. Permite que ferramentas legítimas se compilem ou preparem o ambiente. Também significa que qualquer pacote pode executar código na sua máquina na hora de instalar, com as mesmas permissões que você tem, e as equipes de segurança alertam para isso há anos.

O mundo recebeu um lembrete claro do que está em jogo quando invasores tomaram a conta de mantenedor do Axios, uma biblioteca de rede baixada dezenas de milhões de vezes por semana, e enfiaram nela uma dependência maliciosa que instalava um trojan de acesso remoto nas máquinas dos desenvolvedores. Eles nunca tocaram no código real do Axios. O script de instalação fez o trabalho. O Axios por acaso é uma peça dentro do próprio Claude Code, ao lado de incontáveis outras aplicações, o que mostra a pouca distância entre a ferramenta em que você confia e o código que ela arrasta atrás de si sem você ver.

O que a demonstração acrescenta a esse retrato conhecido é o agente. Uma pessoa que dispara uma instalação ao menos pode parar, ler o nome do pacote, notar que está escrito errado ou que foi publicado agora há pouco, e voltar atrás. Um agente de IA que age sobre uma ordem vaga não tem esse reflexo. Ele instala o que decide que precisa. E como o Computer Use também lê a tela, move o cursor e digita, uma única dependência envenenada não fica presa dentro do editor de código. Ela tem passe livre por toda a área de trabalho.

Vale ser preciso sobre o que isso é e o que não é. Não é uma porta dos fundos escondida e exclusiva do Claude, nem prova de que o modelo foi enganado para furar as próprias regras. É o resultado previsível de dar a qualquer programa autônomo o poder de instalar software, somado a um registro que executa código de instalação por padrão há mais de uma década. Troque o Claude por qualquer outro agente de programação com as mesmas permissões e o quadro é idêntico. O perigo mora na autonomia e no registro, não no chatbot de uma empresa.

A Anthropic, aliás, vem empurrando na direção contrária. A empresa lançou há pouco para suas ferramentas de programação um sandbox que isola o agente do resto do sistema, limita quais arquivos ele pode ler e quais servidores pode alcançar, e publicou como código aberto o kit de isolamento que o sustenta, para outros usarem. O raciocínio é o que a demo expõe. Um agente que não alcança suas chaves SSH não pode vazá-las, e um agente que não consegue contatar um servidor desconhecido não pode mandar seus arquivos para lugar nenhum. A empresa afirma que essas barreiras reduzem em cerca de 84 por cento os pedidos de permissão que mostra aos usuários, o que importa porque uma ferramenta que pergunta tudo acaba ensinando as pessoas a clicar em sim.

Para quem de fato usa essas ferramentas, as defesas são chatas e eficazes. Rode o agente dentro de um sandbox, um contêiner ou uma máquina virtual descartável, para que o máximo que um pacote ruim alcance seja um ambiente dispensável. Desligue os scripts de instalação automáticos quando o fluxo de trabalho permitir, algo que alguns gerenciadores de pacotes recentes já fazem por padrão. Mantenha credenciais, chaves e arquivos pessoais fora da máquina onde o agente anda solto. E trate «instale isso para mim» com o cuidado que daria a «abra este anexo do e-mail», porque por baixo está mais perto disso do que parece.

O pacote específico da demonstração é a prova de um pesquisador, não um surto real, e não há sinal de que tenha chegado a usuários de verdade. O padrão por trás dele é o que não vai ficar parado. A programação com agentes está virando o padrão mais rápido que os hábitos feitos para mantê-la segura, e os registros em que esses agentes se apoiam nunca foram construídos para um mundo onde quem digita o comando de instalar não é uma pessoa. Até essa brecha se fechar, a regra mais antiga da segurança de software agora aponta para um usuário de tipo novo: o que o seu agente instala, ele executa, então decida o que ele pode tocar antes de deixá-lo começar.

Discussão

Há 0 comentários.