Extratores de documentos Office enganam LLMs e agentes de codificação sem nenhuma injeção de prompt
Pesquisadores demonstraram que extratores de texto usados por LLMs para processar documentos do Office frequentemente leem um conteúdo diferente do que um humano vê na tela, abrindo uma superfície de ataque que não depende de injeção de instrução alguma. Usando apenas truques de formatação do próprio formato OOXML — como reposicionar caixas de texto para alterar a ordem de leitura —, os autores conseguiram enganar oito produtos amplamente usados, incluindo ChatGPT, Claude, Gemini, Copilot e agentes de codificação como Claude Code e GitHub Copilot CLI.
O trabalho parte de uma observação simples, mas com implicações grandes: um LLM não lê um documento Office da forma como ele aparece na tela, mas sim o texto que um extrator produz a partir dos arquivos OOXML subjacentes (o formato .docx/.pptx/.xlsx, essencialmente um conjunto de XMLs comprimidos). Diferentes extratores leem partes diferentes desse XML e interpretam formatação, ordem de elementos e metadados de maneiras distintas — e nenhuma dessas interpretações precisa coincidir com o que um humano veria abrindo o arquivo no PowerPoint ou Word.
A partir dessa divergência, os pesquisadores catalogaram, combinando análise estática do código dos extratores com análise dinâmica, 19 canais OOXML em que o extrator lê conteúdo que o humano não vê e 12 canais em que o extrator descarta conteúdo que o humano vê — além de constatar que a maioria dos extratores ignora completamente formatação visual e ordem de leitura. Com base nisso, construíram cinco ataques que alteram a interpretação do modelo sem nunca inserir uma instrução maliciosa explícita: o exemplo citado é deslocar discretamente a posição de caixas de texto em um slide para inverter a ordem em que o modelo as lê, mantendo a aparência visual do slide intacta para quem o abre normalmente.
O impacto prático é amplo porque os ataques foram validados contra oito sistemas de uso massivo — quatro assistentes de chat (ChatGPT, Claude, Gemini, Microsoft 365 Copilot) e quatro agentes de codificação (Codex, Claude Code, Antigravity, GitHub Copilot CLI) — e todos foram enganados por pelo menos um dos ataques. Isso significa que qualquer fluxo de trabalho que envolva subir um documento Office para a IA analisar (resumos de contrato, revisão de propostas, análise de planilhas financeiras) é potencialmente vulnerável a manipulação silenciosa, sem que nenhuma ferramenta de defesa baseada em filtro de prompt injection detecte algo, já que não há instrução maliciosa textual alguma — o ataque está todo codificado na estrutura do arquivo. A defesa proposta, Prism, ataca a causa raiz ao reconstruir a visão 'humana' do documento a partir da especificação OOXML antes de repassar o texto ao modelo, mas até sua adoção ampla, o risco permanece em qualquer pipeline de ingestão de documentos Office que utilize os extratores padrão do mercado.