Nos últimos anos, os Trojans móveis têm substituído ativamente os Trojans para computadores pessoais, portanto, o surgimento de novos malwares para os bons e velhos “carros” e seu uso ativo por cibercriminosos, embora desagradável, ainda é um evento. Recentemente, o centro de resposta a incidentes de segurança da informação XNUMX horas por dia, XNUMX dias por semana do CERT Group-IB detectou um e-mail de phishing incomum que escondia um novo malware de PC que combina as funções de Keylogger e PasswordStealer. A atenção dos analistas foi atraída para como o spyware chegou à máquina do usuário – usando um popular mensageiro de voz. Ilya Pomerantsev, especialista em análise de malware do CERT Group-IB, explicou como o malware funciona, por que é perigoso e até encontrou seu criador no distante Iraque.
Então, vamos em ordem. Sob o pretexto de um anexo, tal carta continha uma imagem, ao clicar na qual o usuário era direcionado ao site cdn.discordapp.com, e um arquivo malicioso foi baixado de lá.
Usar o Discord, um mensageiro gratuito de voz e texto, não é nada convencional. Normalmente, outros mensageiros instantâneos ou redes sociais são usados para esses fins.
Durante uma análise mais detalhada, uma família de malware foi identificada. Acabou sendo um novato no mercado de malware - Registrador de teclas 404.
O primeiro anúncio de venda de um keylogger foi postado em hackfóruns pelo usuário sob o apelido “404 Coder” em 8 de agosto.
O domínio da loja foi registrado recentemente - em 7 de setembro de 2019.
Como dizem os desenvolvedores no site 404projetos[.]xyz, 404 é uma ferramenta projetada para ajudar as empresas a aprender sobre as atividades de seus clientes (com sua permissão) ou para aqueles que desejam proteger seus binários contra engenharia reversa. Olhando para o futuro, digamos que com a última tarefa 404 definitivamente não aguenta.
Decidimos reverter um dos arquivos e verificar o que é “BEST SMART KEYLOGGER”.
Ecossistema de malware
Carregador 1 (AtillaCrypter)
O arquivo de origem é protegido usando EaxObfuscator e executa o carregamento em duas etapas AtProtect na seção de recursos. Durante a análise de outras amostras encontradas no VirusTotal, ficou claro que esta etapa não foi fornecida pelo próprio desenvolvedor, mas sim adicionada por seu cliente. Mais tarde foi determinado que este bootloader era AtillaCrypter.
Carregador de inicialização 2 (AtProtect)
Na verdade, este carregador é parte integrante do malware e, segundo a intenção do desenvolvedor, deve assumir a funcionalidade de análise de contra-ataque.
No entanto, na prática, os mecanismos de proteção são extremamente primitivos e os nossos sistemas detectam este malware com sucesso.
O módulo principal é carregado usando Franquia ShellCode versões diferentes. No entanto, não excluímos que outras opções poderiam ter sido utilizadas, por exemplo, RunPE.
Arquivo de configuração
Consolidação no sistema
A consolidação no sistema é garantida pelo bootloader AtProtect, se o sinalizador correspondente estiver definido.
- O arquivo é copiado ao longo do caminho %AppData%GFqaakZpzwm.exe.
- O arquivo é criado %AppData%GFqaakWinDriv.url, lançando Zpzwm.exe.
- No tópico HKCUSoftwareMicrosoftWindowsCurrentVersionRun uma chave de inicialização é criada WinDrive.url.
Interação com C&C
Carregador AtProtect
Se o sinalizador apropriado estiver presente, o malware pode iniciar um processo oculto iexplorer e siga o link especificado para notificar o servidor sobre a infecção bem-sucedida.
Ladrão de dados
Independentemente do método utilizado, a comunicação em rede começa com a obtenção do IP externo da vítima utilizando o recurso [http]://checkip[.]dyndns[.]org/.
Agente do usuário: Mozilla/4.0 (compatível; MSIE 6.0; Windows NT 5.2; .NET CLR1.0.3705;)
A estrutura geral da mensagem é a mesma. Cabeçalho presente
|——- Keylogger 404 — {Tipo} ——-|Onde {tipo} corresponde ao tipo de informação que está sendo transmitida.
A seguir estão informações sobre o sistema:
_______ + INFORMAÇÕES DA VÍTIMA + _______
IP: {IP externo}
Nome do proprietário: {Nome do computador}
Nome do SO: {Nome do SO}
Versão do sistema operacional: {versão do sistema operacional}
Plataforma de SO: {Plataforma}
Tamanho da RAM: {tamanho da RAM}
______________________________
E finalmente, os dados transmitidos.
SMTP
O assunto da carta é o seguinte: 404K | {Tipo de mensagem} | Nome do cliente: {nome de usuário}.
Curiosamente, para entregar cartas ao cliente Registrador de teclas 404 O servidor SMTP dos desenvolvedores é usado.
Isso possibilitou a identificação de alguns clientes, bem como o email de um dos desenvolvedores.
FTP
Ao usar este método, as informações coletadas são salvas em um arquivo e lidas imediatamente a partir daí.
A lógica por trás desta ação não é totalmente clara, mas cria um artefato adicional para escrever regras comportamentais.
%HOMEDRIVE%%HOMEPATH%DocumentsA{Número arbitrário}.txt
Pastebin
No momento da análise, esse método é utilizado apenas para transferência de senhas roubadas. Além disso, não é utilizado como alternativa aos dois primeiros, mas em paralelo. A condição é o valor da constante igual a “Vavaa”. Presumivelmente, este é o nome do cliente.
A interação ocorre através do protocolo https via API pastebin... Valor api_paste_private é igual PASTE_UNLISTED, que proíbe a busca por tais páginas em pastebin.
Algoritmos de criptografia
Recuperando um arquivo de recursos
A carga útil é armazenada em recursos do bootloader AtProtect na forma de imagens Bitmap. A extração é realizada em várias etapas:
- Uma matriz de bytes é extraída da imagem. Cada pixel é tratado como uma sequência de 3 bytes na ordem BGR. Após a extração, os primeiros 4 bytes do array armazenam o comprimento da mensagem, os subsequentes armazenam a própria mensagem.
- A chave é calculada. Para fazer isso, MD5 é calculado a partir do valor “ZpzwmjMJyfTNiRalKVrcSkxCN” especificado como senha. O hash resultante é escrito duas vezes.
- A descriptografia é realizada usando o algoritmo AES no modo BCE.
Funcionalidade maliciosa
Downloader
Implementado no bootloader AtProtect.
- Ao entrar em contato [repalce do link ativo] O status do servidor é solicitado para confirmar se ele está pronto para servir o arquivo. O servidor deve retornar "EM".
- o link [downloadlink-substituir] A carga útil é baixada.
- Com FranquiaShellcode a carga útil é injetada no processo [inj-substituir].
Durante a análise de domínio 404projetos[.]xyz instâncias adicionais foram identificadas no VirusTotal Registrador de teclas 404, bem como vários tipos de carregadores.
Convencionalmente, eles são divididos em dois tipos:
- O download é feito a partir do recurso 404projetos[.]xyz.
Os dados são codificados em Base64 e criptografados em AES. - Esta opção consiste em vários estágios e provavelmente é usada em conjunto com um bootloader AtProtect.
- Na primeira etapa, os dados são carregados do pastebin e decodificado usando a função HexToByte.
- No segundo estágio, a fonte de carregamento é o 404projetos[.]xyz. No entanto, as funções de descompressão e decodificação são semelhantes às encontradas no DataStealer. Provavelmente foi originalmente planejado implementar a funcionalidade do bootloader no módulo principal.
- Nesta fase, a carga útil já está no manifesto do recurso de forma compactada. Funções de extração semelhantes também foram encontradas no módulo principal.
Downloaders foram encontrados entre os arquivos analisados njRato, SpyGate e outros RATs.
Keylogger
Período de envio de log: 30 minutos.
Todos os personagens são suportados. Caracteres especiais são escapados. Há processamento para as teclas BackSpace e Delete. Maiúsculas e minúsculas.
ClipboardLogger
Período de envio de log: 30 minutos.
Período de pesquisa do buffer: 0,1 segundos.
Escape de link implementado.
Registrador de tela
Período de envio de log: 60 minutos.
As capturas de tela são salvas em %HOMEDRIVE%%HOMEPATH%Documents404k404pic.png.
Depois de enviar a pasta 404k esta deletado.
Ladrão de senhas
Browsers | Clientes de correio | Clientes FTP |
---|---|---|
Chrome | Outlook | FileZilla |
Firefox | Thunderbird | |
SeaMonkey | Foxmail | |
Icedragon | ||
Lua pálida | ||
Cyberfox | ||
Chrome | ||
BraveBrowser | ||
QQNavegador | ||
IridiumBrowser | ||
XvastBrowser | ||
Chedot | ||
360Navegador | ||
ComodoDragão | ||
360cromo | ||
Super Pássaro | ||
CentBrowser | ||
Navegador Fantasma | ||
FerroBrowser | ||
crômio | ||
Vivaldi | ||
SlimjetBrowser | ||
órbita | ||
CocCoc | ||
Tocha | ||
Navegador UC | ||
navegador épico | ||
BliskBrowser | ||
Opera |
Contra-ação à análise dinâmica
- Verificando se um processo está em análise
Realizado usando pesquisa de processo taskmgr, ProcessHacker, procexp64, procexp, promon. Se pelo menos um for encontrado, o malware será encerrado.
- Verificando se você está em um ambiente virtual
Realizado usando pesquisa de processo vmtoolsd, VGAuthService, vmacthlp, Serviço VBox, VBoxTray. Se pelo menos um for encontrado, o malware será encerrado.
- Adormecer por 5 segundos
- Demonstração de diferentes tipos de caixas de diálogo
Pode ser usado para ignorar algumas sandboxes.
- Ignorar UAC
Realizado editando a chave de registro EnableLUA nas configurações de Política de Grupo.
- Aplica o atributo "Oculto" ao arquivo atual.
- Capacidade de excluir o arquivo atual.
Recursos inativos
Durante a análise do bootloader e do módulo principal, foram encontradas funções responsáveis por funcionalidades adicionais, mas que não são utilizadas em lugar nenhum. Provavelmente, isso se deve ao fato de o malware ainda estar em desenvolvimento e a funcionalidade ser expandida em breve.
Carregador AtProtect
Foi encontrada uma função responsável por carregar e injetar no processo msiexec.exe módulo arbitrário.
Ladrão de dados
- Consolidação no sistema
- Funções de descompressão e descriptografia
É provável que a criptografia de dados durante a comunicação em rede seja implementada em breve. - Encerrando processos antivírus
zlclient | Dvp95_0 | Pavsched | avgserv9 |
egui | Motor elétrico | Pavão | avgserv9schedapp |
bdagente | Esafe | PCCIOMON | avgemc |
npfmsg | Espwatch | PCCMAIN | Ashwebsv |
olydbg | F-Agnt95 | PCcwin98 | ashdisp |
anubis | Findvir | Pcfwallicon | ashmaisv |
wireshark | Fprot | Pessoal | ashserv |
avastui | F-Prot | POP3TRAP | aswUpdSv |
_Avp32 | F-Prot95 | PVIEW95 | simwsc |
vsmon | Fp-Win | Rav7 | norton |
mbam | Franca | Rav7win | Norton Auto-Protect |
encriptador de chaves | F-Parada | Resgate | norton_av |
_Avpcc | Iamapp | Web segura | nortonav |
_Avpm | Iamserv | Scan32 | ccsetmgr |
Ackwin32 | Ibmasn | Scan95 | ccevtmgr |
Posto avançado | Ibmavsp | Scanpm | administrador |
Anti-Troiano | Icload95 | Escanear | centro de atendimento |
ANTIVIR | Icloadnt | Serv95 | médio |
Apvxdwin | Imon | smc | vanguarda |
ATRACK | Icsupp95 | SERVIÇO SMC | avnotify |
Autodown | suporte | Snort | avscan |
Avconsol | Iface | Esfinge | guardgui |
Avenida 32 | Iomon98 | Varredura95 | nod32krn |
Avgctrl | Jedi | SYMPROXYSVC | nod32kui |
Avkserv | Bloqueio2000 | Tbscan | clamscan |
Avnt | Lookout | Tca | clamTray |
Avp | luall | Tds2-98 | clamWin |
Avp32 | mcafee | Tds2-Nt | freshclam |
Avpcc | Moolive | TermiNET | oladim |
Avpdos32 | MPftray | Veterinário95 | sigtool |
Avpm | N32scanw | Vetray | w9xpopen |
Avptc32 | NAVAPSVC | Vscan40 | Fechar |
Avpupd | NAVAPW32 | Vsecomr | cmgrdian |
Avsched32 | NAVLU32 | Vshwin32 | alogserv |
AVSYNMGR | Navegar | vsstat | escudo |
Avwin95 | NAVRUNR | Webscanx | vshwin32 |
Avwupd32 | Navw32 | WEBTRAP | avconsol |
Preto | Navegador | Wfindv32 | vsstat |
Gelo preto | NeoWatch | ZoneAlarm | avsynmgr |
Cfiadmin | NISSERV | BLOQUEIO2000 | avcmd |
Auditoria Financeira | Nisum | RESCUE 32 | avconfig |
Cfinet | Nprincipal | LUCOMSERVER | licmgr |
Cfinet32 | Normista | média | sched |
Garra95 | NORTON | média | pré-atualizado |
Garra95cf | Atualização | avgamsvr | MsMpEng |
Limpador | Nvc95 | avgupsvc | MSASCui |
Limpador3 | Posto avançado | média | Avira.Systray |
Defwatch | Administrador | avgcc32 | |
Dvp95 | Pavl | avgserv |
- Auto destruição
- Carregando dados do manifesto de recurso especificado
- Copiando um arquivo ao longo de um caminho %Temp%tmpG[Data e hora atuais em milissegundos].tmp
Curiosamente, uma função idêntica está presente no malware AgentTesla. - Funcionalidade do verme
O malware recebe uma lista de mídias removíveis. Uma cópia do malware é criada na raiz do sistema de arquivos de mídia com o nome Sys.exe. Autorun é implementado usando um arquivo autorun.inf.
Perfil do invasor
Durante a análise da central de comando, foi possível estabelecer o e-mail e apelido do desenvolvedor – Razer, também conhecido como Brwa, Brwa65, HiDDen PerSOn, 404 Coder. A seguir, encontramos um vídeo interessante no YouTube que demonstra como trabalhar com o construtor.
Isso tornou possível encontrar o canal original do desenvolvedor.
Ficou claro que ele tinha experiência em escrever criptógrafos. Também há links para páginas nas redes sociais, bem como o nome real do autor. Ele acabou por ser um residente do Iraque.
Esta é a aparência de um desenvolvedor 404 Keylogger. Foto de seu perfil pessoal no Facebook.
O CERT Group-IB anunciou uma nova ameaça - 404 Keylogger - um centro de monitoramento e resposta XNUMX horas para ameaças cibernéticas (SOC) no Bahrein.
Fonte: habr.com