Segurança

Erro de escrita de quatro bytes e falha de temporização permitem executar código no enclave do SmartScreen do Windows

Pesquisadores de segurança conseguiram executar código próprio dentro de uma área protegida do Windows, que deveria permanecer isolada mesmo quando o restante do computador é dominado. A falha, corrigida pela Microsoft na atualização de 8 de setembro de 2026, afetava um enclave que guarda senhas usadas por um recurso antiphishing do Windows.


Swati Khandelwal Quarta - 14 de Outubro de 2026 às 11:20
The Hacker News

Pesquisadores de segurança conseguiram executar código próprio dentro de uma área protegida do Windows, que deveria permanecer isolada mesmo quando o restante do computador é dominado por um invasor.

A área protegida é um enclave VBS (Virtualization-Based Security, ou segurança baseada em virtualização), uma fatia isolada de memória que o sistema operacional usa para proteger segredos. O enclave invadido pelos pesquisadores cuida das senhas de um recurso antiphishing do Windows.

O trabalho foi feito em laboratório, como uma prova de conceito. Não há registro de que a falha tenha sido usada em ataques reais. A Microsoft corrigiu o problema na atualização de 8 de setembro de 2026.

A falha está catalogada como CVE-2026-83498 (sigla para Common Vulnerabilities and Exposures, ou vulnerabilidades e exposições comuns). A Microsoft a classifica como uma elevação de privilégio de gravidade crítica, com pontuação CVSS de 7,8 (Common Vulnerability Scoring System, ou sistema de pontuação de vulnerabilidades). A empresa afirma que a falha não foi explorada e que não era pública antes da correção. Segundo a Microsoft, ela também identificou o mesmo problema internamente. A pesquisa, realizada pela empresa de segurança Doyensec, foi publicada em 13 de outubro, mais de um mês após a correção.

Um enclave VBS é uma biblioteca assinada que um programa comum do Windows carrega, mas que não pode ser lida nem alterada depois de em execução. O hipervisor do Windows mantém a memória do enclave em um ambiente mais confiável, chamado VTL1 (Virtual Trust Level 1, ou nível de confiança virtual 1), também conhecido como Modo de Usuário Isolado (Isolated User Mode). O código comum, que roda no ambiente VTL0, não consegue acessar essa área, segundo a Microsoft.

O design foi pensado para proteger o que está dentro do enclave mesmo que um invasor já tenha tomado o kernel comum do sistema ou esteja rodando como SYSTEM. Por isso, executar código escolhido pelo atacante nesse ambiente é o que torna a pesquisa notável.

O enclave atacado pela Doyensec é o SFAPE.dll (biblioteca de vínculo dinâmico), componente responsável pela Proteção Aprimorada contra Phishing (Enhanced Phishing Protection) no Microsoft Defender SmartScreen. O recurso monitora o texto digitado ou colado e alerta o usuário caso ele insira a senha de login do Windows em um local inseguro, como o Bloco de Notas ou uma página de phishing.

Para fazer isso sem expor a senha, o Windows intercepta a senha no login e a armazena em forma de hash dentro do enclave, para que entradas posteriores possam ser comparadas com ela. Em um sistema Windows 11, o programa que carrega esse enclave é o lsass.exe (Serviço de Subsistema de Autoridade de Segurança Local), processo que gerencia as credenciais de login e roda como SYSTEM.

O ataque não funciona à distância. Ele exige um programa já em execução na máquina que carregue e chame o enclave. No caso do SFAPE, esse programa é o LSASS. A própria classificação da Microsoft confirma isso: o vetor de ataque é local, e o invasor precisa de acesso de baixo nível, sem depender de nenhuma ação do usuário. Em resumo, trata-se de uma forma de um código que já tem uma posição no sistema alcançar o ambiente mais confiável ao lado, e não de uma invasão vinda de fora.

A Doyensec construiu o ataque a partir de um pequeno erro e o ampliou passo a passo. Ao chamar pela segunda vez a função Initialize do enclave, o programa faz com que ele escreva um valor de erro fixo de quatro bytes em um endereço controlado pelo programa chamador. Nessa segunda chamada, porém, a verificação de endereço feita na primeira não é executada.

A Doyensec deixa claro que isso, por si só, é fraco. Os pesquisadores escrevem que chamar a escrita de arbitrária "seria um grande exagero". No entanto, direcionada ao ponto certo, essa única escrita corrompe o valor que o enclave usa para distinguir a própria memória da memória do sistema hospedeiro, fazendo com que sua verificação de segurança deixe de funcionar. A partir daí, uma falha de temporização em outra função dispara uma limpeza controlada. Essa limpeza redireciona a forma como o enclave busca um objeto armazenado, e a leitura e a escrita resultantes permitiram aos pesquisadores substituir a tabela que define quais códigos o enclave pode executar.

O resultado é a execução de código escolhido pelo atacante dentro do enclave. O trabalho quebrou o isolamento do enclave, mas não demonstrou que a senha de um usuário tenha sido lida ou roubada. O aviso de segurança da Microsoft descreve o impacto como vazamento de dados do enclave ou execução de código dentro dele.

A Microsoft corrigiu a falha na atualização cumulativa de 8 de setembro de 2026, KB5124008 (identificador da atualização), para as versões 24H2 e 25H2 do Windows 11. A Doyensec comparou os arquivos antigos e novos e constatou que o enclave corrigido agora verifica o endereço antes da primeira escrita e reforça a função da qual a falha de temporização dependia.

A atualização também inclui uma nova política que impede o carregamento do enclave antigo e vulnerável, de modo que um sistema corrigido não consegue executá-lo. Não há solução alternativa separada a aplicar: instalar a atualização é a ação necessária.

Um problema, porém, continua após a correção. O Windows não mantém uma lista de bloqueio geral para enclaves vulneráveis, como a que existe para drivers vulneráveis, e a política de setembro bloqueia apenas o antigo arquivo SFAPE. Um enclave mais antigo do Microsoft Edge, com falha semelhante de leitura e escrita, CVE-2023-36880, de 2023, ainda pode ser carregado, segundo a Doyensec.

Não está claro se isso foi uma escolha deliberada ou um descuido. A questão importa porque carregar um enclave assinado, mas com falhas, é uma técnica conhecida, chamada às vezes de "traga seu próprio enclave vulnerável". Pesquisas anteriores da Akamai e da Outflank mostraram que essa técnica é usada para esconder código e dados de ferramentas de segurança. Bloquear um enclave vulnerável e deixar outro carregável mantém essa técnica disponível.

Windows Microsoft Vulnerabilidades