GhostTree, a brecha que usa o próprio Windows para esconder malware de antivírus

Pesquisadores da empresa de segurança Varonis identificaram uma nova técnica de evasão que explora um recurso nativo do sistema de arquivos do Windows. Ela cria estruturas de pastas que se repetem infinitamente. Batizada de GhostTree, a técnica impede que ferramentas de segurança consigam examinar arquivos maliciosos armazenados nessas pastas.

Para entender o problema, é preciso entender o que são os chamados junctions, um recurso do sistema de arquivos NTFS, usado pelo Windows. Um junction é basicamente um atalho entre pastas, ele faz com que uma pasta aponte para outra, e o sistema operacional trata as duas como se fossem a mesma coisa.

Eles existem por razões legítimas, como manter compatibilidade com programas antigos ou reorganizar arquivos sem precisar movê-los fisicamente. O detalhe crítico é que qualquer usuário do sistema pode criar um junction com um único comando, sem precisar de permissões de administrador.

Diagrama mostra como um junction pode apontar de volta para a pasta pai, criando um ciclo que gera múltiplos caminhos para o mesmo arquivo e dificulta a análise por ferramentas de segurança. Imagem: Varonis.

A armadilha

O problema começa quando um junction aponta para sua própria pasta pai, em vez de apontar para outra pasta qualquer. Imagine uma pasta chamada “Pai” que contém um arquivo e uma subpasta chamada “Filho”. Se o “Filho” for configurado como um junction que aponta de volta para “Pai”, o sistema cria um loop, “Filho” passa a conter tudo que “Pai” contém, inclusive ele mesmo.

Isso gera um número virtualmente infinito de caminhos válidos para o mesmo arquivo. O arquivo poderia ser acessado como “C:Pai1.exe”, “C:PaiFilho1.exe”, “C:PaiFilhoFilho1.exe” e assim por diante, indefinidamente.

GhostBranch e GhostTree

Os pesquisadores identificaram duas variantes da técnica. A versão mais simples, chamada GhostBranch, usa um único junction em loop e gera cerca de 126 caminhos únicos para o mesmo arquivo, número limitado pelo tamanho máximo de um caminho no Windows, que é de 260 caracteres.

ghosttree (3).png
Cada nível da estrutura oferece dois caminhos possíveis de navegação, fazendo o número de referências ao mesmo arquivo crescer rapidamente até atingir quantidades astronômicas. Imagem: Varonis.

A versão mais elaborada, o GhostTree, cria dois junctions em loop dentro da mesma pasta pai. Com dois caminhos possíveis em cada nível da estrutura, o número de combinações cresce de forma exponencial, como uma árvore binária.

O total de caminhos possíveis chega a dois elevado a potência de 126, ou seja, 8,5 × 10³⁷. Para ter uma ideia do tamanho desse número, há estimativas de que existam cerca de 8,5 × 10¹⁸ grãos de areia em toda a Terra.

Por que antivírus e EDRs falham

Ferramentas de segurança como antivírus e soluções de EDR, que monitoram endpoints como computadores e servidores, precisam varrer pastas recursivamente –  ou seja, entrar em cada subpasta e examinar os arquivos dentro delas. Quando encontram a estrutura criada pelo GhostTree, elas entram no loop e nunca conseguem terminar a varredura.

maos-digitando-em-notebook-com-escudo-de-virus-alerta-de-seguranca-cibernetica-ataque-spyware
Arquivos maliciosos podem permanecer sem inspeção quando ferramentas de segurança ficam presas em loops criados por junctions do Windows.

O atacante simplesmente coloca um arquivo malicioso dentro da pasta pai e cria a estrutura de junctions ao redor dele. A varredura trava, e o arquivo nunca é examinado.

Os pesquisadores testaram a técnica contra o Windows Defender e confirmaram que ela consegue evadir a varredura de pastas. A Microsoft foi notificada e corrigiu o problema, ainda que inicialmente tenha classificado o comportamento como fora do escopo das correções de segurança da empresa.

Como se defender

A Varonis alerta que soluções de segurança baseadas apenas em varredura de arquivos são insuficientes para detectar esse tipo de ataque. A recomendação é monitorar padrões de acesso ao sistema de arquivos em busca de atividades anômalas, como a criação incomum de junctions ou estruturas de diretórios que não deveriam existir no ambiente.

Acompanhe o TecMundo nas redes sociais. Inscreva-se em nossa newsletter e canal do YouTube.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima