Infomach

A evolução das ameaças, o malware “sem arquivo” (fileless).

Aproveitando esta terça de carnaval, revirando algumas coisas, encontrei alguns disquetes, os três disquetes originais da instalação do MS-DOS 6.22 e o entre outras coisas um disquete contendo uma versão de avaliação do McAfee VirusScan 2.5.0 com o DAT V9606.
Subi uma máquina virtual só para relembrar algumas coisas de algum tempo atrás e como podem ver na tela abaixo, executei o VirusScan e até era possível contatar o suporte da McAfee via BBS (sim, BBS, em 1996 a World Wide Web ainda era relativamente nova).
scan
Relembrando outros fatos, o antivírus inteiro ocupava apenas 820 KB e o mais interessante, executando o comando “scan /virlist” tínhamos uma lista com 6.903 assinaturas de vírus conhecidos, bem diferente do que temos hoje.
Em 2015 o McAfee Labs detectou mais de 300 novas ameaças por minuto, um número muito elevado comparando com a lista de junho de 1996 (20 anos atrás) onde tínhamos pouco mais de 6 mil vírus conhecidos no mundo.
Colocando o saudosismo de lado e retomando o assunto que dá título a este artigo, as ameaças do tipo Fileless que surgiram no final de 2014 e tiveram um pico de infecções no início e meados de 2015 estão retornando com força em 2016.
Nas décadas de 80 e 90 os vírus basicamente podiam ser classificados como vírus de boot (que infectavam o MBR), os residentes em memória e os que injetavam seu código em executáveis. De 2000 para cá os vírus de boot praticamente desapareceram devido os vetores de contaminação mais comuns terem entrado em desuso (disquetes).
As ameaças modernas são do tipo “sem arquivo” ou “fileless”, existem basicamente 3 famílias deste tipo de malware, as demais são variantes destas três que são conhecidas como Kovter, XswKit e Powelike, estes malwares ainda são pouco conhecidos no Brasil, o Kovter por exemplo foi visto pela primeira vez julho de 2015 e no total de infecções apenas 1% foram detectadas no Brasil, sendo que mais da metade de infecções (56%) ocorreram nos Estados Unidos.
Mas como funcionam estas ameaças sem arquivos? Primeiramente o vetor de infeção necessita de um arquivo executável ou um site malicioso (java script) para injetar o código de contaminação inicial, após a execução o malware é copiado para o registro do Windows de forma criptografada e utiliza o recurso de miniaturas do Explorer (miniaturas de imagens) para armazenar arquivos de apoio, desta forma a execução do malware ocorre de forma praticamente indetectável. Após a carga de código ocorrer no registro do Windows, o executável (ou script) que gerou a infecção se autodestrói não deixando evidências.

Este fluxograma descreve o processo de infeção básico, note que o vetor de contaminação segue o mesmo princípio de sempre, SPAM e sites Maliciosos, aqui podemos notar a importância da proteção em camadas com uso de várias soluções que vão desde a tradicional proteção de Endpoint, passando pelo Anti-spam e podemos ainda incluir proteções de perímetro como Next Generation Firewall e Gateways de Proteção WEB.

 
Para se proteger no registro do Windows, estes malwares utilizam caracteres inválidos no nome da chave impedindo a visibilidade pelo usuário e também a remoção de acesso alterando as ACL’s de modo que soluções de proteção e o usuário não tenham acesso ao conteúdo malicioso, uma camada adicional de proteção inclui o obfuscamento e criptografia.
O Kovter por exemplo atua da seguinte maneira:
1 – A vítima recebe um spam com um anexo em formato ZIP ou um link que o usuário deve clicar para baixar o arquivo malicioso. O spam segue o mesmo modelo de outros malwares, aqui no Brasil as amostras utilizam o assunto de e-mail do tipo: “Promoção Ganhe em dobro, você foi contemplado”, “Informação de cobrança – Título em aberto”, “Atualização do módulo de proteção bancária”, etc.
2 – O arquivo anexado no e-mail, vem em formato “.ZIP”, contendo um executável, usualmente o nome deste arquivo é semelhante:
DFE03141343133143.ZIP
ETOKEN009993444234223344.ZIP
BOLETO_ADEEFDDCC.ZIP
GUARDIAOINTERNET.ZIP
3 – Ao descompactar o arquivo e executar o código malicioso (um binário executável ou um arquivo de script com a extensão “.js”), o malware cria uma chave no registro do Windows nas seguintes localidades:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
O nome da chave começa com o caractere “\” que torna a chave inválida, desta forma ao acessar o registro e visualizar as chaves acima o usuário recebe uma mensagem de erro informando que não é possível exibir os valores ou em alguns casos a chave tem nome legível, mas as permissões de acesso foram removidas.
4 – Dentro da chave criada existe um valor do tipo “REG_SZ” e o conteúdo é um java script que chama outra chave dentro dentro do registro com o “payload”  (carga útil) do malware:
HKEY_LOCAL_MACHINE\Software\666F3da (esse nome irá variar pois é aleatório).
5 – A carga útil é um script em Powershell que geralmente está codificado em Base64, este script utiliza consultas WMI (instrumentação do Windows) para coletar informações detalhadas do sistema em execução.
6 – Este script em Powershell também insere o código malicioso em um processo legitimo do Windows utilizando uma técnica conhecida como “Process Hollowing” que permite o código ser inserido como padding  (enchimento) no endereço de memória do processo alvo, o código se hospeda nos processos como:
Ntdll.exe
Regsvr32.exe
Svchost.exe
Dllhost.exe
7 – As informações coletadas via WMI são enviadas através de uma conexão http estabelecida com um servidor de controle na Internet.
8 – O código malicioso recebe uma lista de sites de anúncios do servidor de controle, as informações coletadas do WMI são enviadas e são utilizadas para determinar a carga que será destinada a máquina contaminada de modo que não afete de forma significativa o funcionamento, tornando mais difícil a detecção.
9 – Neste momento a máquina infectada faz parte de uma Botnet destinada a gerar receita ao atacante através de cliques falsos em anúncios na Internet, mas a arquitetura do malware permite que dados bancários sejam enviados ao servidor de controle, da mesma forma permite ao atacante direcionar cliques e acessos a um site que ele deseja derrubar com um ataque do tipo DDos.
 
A tendência é que a cada dia os malwares se tornem mais sofisticados, o Kovter é apenas um exemplo, novas variantes e técnicas surgem a cada dia.
Sua rede está protegida? Você utiliza proteção em camadas combinando diversas soluções? Entre em contato conosco e saiba como podemos lhe ajudar.

Sair da versão mobile