CVE-2026-82217 abrange as versões do Eclipse Theia 1.73.0 até abaixo de 1.75.0. No modo de IA "Agent Mode", as ferramentas de edição de arquivos — writeFileContent, suggestFileContent e os auxiliares associados de replace e state — resolviam um caminho fornecido pelo modelo sem verificar se ele pertencia ao workspace. Um ../.bashrc relativo, um caminho absoluto ou uma expansão de ~ escrevia ou excluía arquivos fora do workspace com os privilégios do sistema operacional do usuário de backend. No Agent Mode, essas edições se aplicam sem uma caixa de confirmação. Escrever em ~/.ssh/authorized_keys ou em um arquivo de inicialização do shell eleva isso para execução de código no backend. O CVSS 3.1 é 8.8, atribuído pela NVD e não autocalculado.
A correção que ninguém podia ver
O comunicado de segurança referencia um único commit. Esse commit pertence a um pull request intitulado "ai-ide: add Memory prompt capability". Ele de fato toca os arquivos vulneráveis — file-changeset-functions.ts e workspace-functions.ts —, mas pelo título e pela descrição é um recurso. Um administrador lendo as notas da versão 1.75.0 não recebeu qualquer indicação de que a atualização encerrava uma cadeia de traversal de caminho até RCE.
As duas lacunas
Relato ao Eclipse: 24 de julho. Commit de correção: 11 de agosto. Versão que o contém: 27 de agosto. Comunicado: 31 de agosto. As versões vulneráveis 1.73 e 1.74 permaneceram implantadas por cerca de dois meses após o relato, e a correção ficou publicamente disponível em um repositório aberto por 20 dias antes da divulgação — legível por qualquer pessoa que compare commits, invisível para quem lê apenas comunicados de segurança.
O que a simplificação omite
"Theia corrigiu uma vulnerabilidade" sugere que uma verificação ausente foi adicionada. O próprio relatório do Eclipse descreve uma correção incompleta: proteções chamadas ensureWithinWorkspace e resolveToUri já existiam na camada de resolução, e as ferramentas de maior impacto contornavam essas proteções. A proteção estava presente e não foi aplicada onde mais importava — um modo de falha diferente, e mais difícil de detectar em revisão.
Por que isso se generaliza
Isso não é uma injeção de prompt teórica. É uma cadeia completa: conteúdo externo, saída do modelo, caminho de arquivo, gravação fora do workspace, código no host — sem confirmação do usuário, porque a aplicação automática faz parte do projeto. Qualquer agente de IDE que combine um caminho fornecido pelo modelo com aplicação automática tem a mesma forma.
