Um clique em um link da microsoft.com. Isso bastou para transformar o M365 Copilot Enterprise em uma arma de exfiltração de dados que rouba códigos 2FA, notas de reunião de board e planos de aquisição. Sem malware. Sem credenciais. Um link e uma IA que era útil demais para o próprio bem. A Varonis descobriu o SearchLeak (CVE-2026-42824) — e a cadeia de ataque é mais sofisticada do que parece.
O vetor: q como instrução executável
O parâmetro q na URL de busca do M365 Copilot é passado diretamente para o motor de IA como instrução executável, não como string de busca. O que você coloca em q é interpretado como comando. Isso é prompt injection (injeção de prompt) na sua forma mais direta: o atacante não precisa de acesso à conta, não precisa de malware, não precisa de credenciais. Precisa que a vítima clique em um link microsoft.com — domínio que não é bloqueado por anti-phishing.
A cadeia de ataque tem sete passos e combina três técnicas distintas:
- Atacante envia URL com instruções no parâmetro
q(domínio microsoft.com, não bloqueado). - Vítima clica. Copilot interpreta
qcomo instrução, busca na caixa de entrada, SharePoint, OneDrive. - Copilot gera resposta com tag
<img>contendo dados roubados na URL. - Durante o streaming, o browser renderiza o
<img>antes do sanitizer (race condition) envolver em code blocks. - Browser envia requisição para
bing.com/images/searchbyimage(CSP-allowlisted). - O backend do Bing faz server-side fetch da URL do atacante.
- Atacante lê os dados roubados dos logs do servidor.
Cada etapa é necessária. Cada uma bypass uma proteção diferente. E o resultado é exfiltração silenciosa de qualquer dado que o Copilot consiga acessar via Microsoft Graph.
O Bing como trampolim: CSP é irrelevante no server-side
O CSP do M365 allowlista *.bing.com. Isso faz sentido para o browser — o Copilot precisa do Bing para busca. Mas o endpoint "Search by Image" do Bing faz fetch server-side de URLs arbitrárias. O atacante codifica os dados roubados no path da URL. O browser do lado do cliente nunca acessa o servidor do atacante. O CSP é irrelevante para requisições server-side.
Segundo a Varonis: "O CSP do browser? Irrelevante para requisições server-side." Essa é a lição arquitetural que vai além do M365. Qualquer domínio na allowlist CSP que tenha capacidade de server-side fetch é um canal potencial de exfiltração. O CSP protege o browser. Não protege o que o backend faz com as URLs que recebe.
A race condition (condição de corrida) no streaming é o gatilho. Durante o streaming da resposta do Copilot, o browser renderiza a tag <img> antes que o sanitizer envolva o conteúdo em code blocks. A janela de tempo é pequena, mas suficiente. O browser dispara a requisição para o Bing, o Bing faz o fetch server-side, e os dados chegam ao atacante.
O que estava exposto: tudo que o Graph indexa
O escopo de exposição é determinado pelo que o Copilot pode acessar via Microsoft Graph. Segundo a Varonis, isso inclui: códigos MFA/2FA chegando na caixa de entrada, links de reset de senha, conteúdo de emails, eventos de calendário, documentos do SharePoint, arquivos do OneDrive, documentos salariais, planos de aquisição. Qualquer conteúdo indexado que a vítima pudesse acessar.
Para um executivo de board, isso significa notas de reunião confidenciais e planos estratégicos. Para o CFO, documentos salariais e projeções financeiras. Para qualquer usuário, códigos 2FA e links de reset de senha — o que abre a porta para takeover de conta. O Copilot não distingue entre dados sensíveis e dados comuns. Ele apenas responde ao prompt.
A escalada em 12 meses: três cadeias, mesmo alvo
O SearchLeak não é um incidente isolado. É o terceiro ataque de exfiltração via M365 Copilot em 12 meses, e cada um mira um tier mais alto:
- EchoLeak (CVE-2025-32711, CVSS 9.3, zero-click, 2025): email craftado + proxy Teams para bypass de CSP. M365 Copilot.
- Reprompt (Varonis, janeiro 2026): one-click, P2P injection, Copilot Personal.
- SearchLeak (CVE-2026-42824, junho 2026): one-click, P2P injection + race condition HTML + SSRF via Bing. Copilot Enterprise.
Cada cadeia bypass as proteções que o fix anterior deveria ter estabelecido. O EchoLeak explorou o CSP. O Reprompt subiu de tier. O SearchLeak combinou três técnicas e escalou para o Copilot Enterprise — o tier com acesso mais amplo a dados corporativos.
O padrão é claro: cada assistente de IA com acesso amplo a dados senta sobre uma falha geológica. Ninguém sabe como prevenir fundamentalmente a injeção de prompt. O patch da Microsoft corrigiu esta cadeia específica. Mas o próximo vetor é uma questão de tempo.
O gap CVSS: 6.5 para roubo de códigos 2FA do CEO
A Microsoft classificou o SearchLeak como "Critical" internamente. O CVSS numérico: 6.5. Quando seu assistente de IA rouba códigos 2FA do CEO com um clique, 6.5 é o número certo?
O gap entre a classificação interna da Microsoft e o score CVSS reflete uma limitação estrutural do CVSS para vulnerabilidades de IA. O CVSS mede impacto técnico — confidencialidade, integridade, disponibilidade. Mas o impacto real de um assistente de IA que rouba códigos 2FA, planos de aquisição e documentos salariais vai muito além do que o CVSS captura. O impacto é contextual: depende de quem é a vítima, quais dados ela acessa, e o que um atacante pode fazer com códigos 2FA em tempo real.
Segundo a Varonis, a recomendação é tratar output de IA em streaming (streaming) como untrusted. Sanitização deve acontecer no render time, não como post-processing. Isso é arquitetura, não patch.
A pergunta de board
Qual é o plano quando as ferramentas de IA se tornam a superfície de ataque? Não é uma questão de se, mas de quando. Três cadeias de exfiltração em 12 meses mostram que o M365 Copilot é um alvo ativo e que os atacantes estão evoluindo mais rápido que as defesas.
Na Tech86, aplicamos essa lição na prática: nossa Blindagem Perímetro WAF monitora e filtra requisições anômalas que indicam exfiltração de dados, incluindo padrões de SSRF e race condition em camadas de aplicação. Quando o CSP é irrelevante porque o exfiltração acontece server-side, a detecção comportamental na camada de perímetro é a defesa que resta. O patch corrige o vetor. A arquitetura de segurança corrige a superfície.
