blank

blank

Android Banking Trojan Roubando Dados Do Usuário Por Meio De Gravação De Tela E Keylogging

INDÚSTRIA: Bancário
PAÍSES-ALVO: Cingapura, Austrália, Geórgia, Índia
FAMÍLIAS DE MALWARE: Drinik Banking, Beber Android, Drinik
ATT&CK IDS: T1476 – Entregar aplicativo malicioso por outros meios,T1444 – Masquerade como aplicativo legítimo,T1418 – Descoberta de aplicativos,T1426 – Descoberta de informações do sistema,T1513 – Captura de tela,T1402 – Receptores de transmissão,T1412 – Capturar mensagens SMS,T1411 – Prompt de entrada,T1567 – Exfiltração por serviço da Web

 

 

Em setembro de 2021, a Equipe de Resposta a Emergências de Computadores da Índia (CERT-In) emitiu um aviso sobre uma nova variedade de malware direcionada aos contribuintes indianos e mencionou que clientes de cerca de 27 bancos corriam o risco desse ataque.

Os Threat Actors (TA) por trás dessa campanha eram suspeitos de usar o malware Drinik. Uma variante inicial do malware Drinik foi detectada pela primeira vez em 2016 como um ladrão de SMS. Por volta de agosto de 2021, observou-se que o malware estava ativo novamente, desta vez evoluindo para um trojan bancário Android.

O Cyble Research & Intelligence Labs (CRIL) monitora constantemente as diferentes variantes do malware Drinik Android. Em setembro de 2021, a CRIL lançou um blog sobre um aplicativo de imposto de renda mascarado que visava os contribuintes indianos a roubar informações de identificação pessoal (PII) e credenciais bancárias por meio de ataques de phishing.

Recentemente, o CRIL identificou uma versão atualizada do Drinik representando o Departamento de Imposto de Renda da Índia e visando 18 bancos indianos (os nomes dos bancos são explicitamente mencionados no arquivo APK malicioso).

O TA usa o mesmo tema de campanha para atrair a vítima, mas o malware foi atualizado com recursos avançados. Listamos os principais recursos implementados na nova variante, tornando o malware uma ameaça avançada:

  • Gravação de tela para coletar credenciais
  • Keylogging
  • Abusando do CallScreeningService para gerenciar as chamadas recebidas
  • Recebendo comandos via FirebaseCloudMessaging

A variante de malware está se comunicando com o servidor Command & Control (C&C) hxxp://gia[.]3utilities.com, que está hospedado no IP 198[.]12.107[.]13 . Nossa investigação confirmou que a campanha anterior também usou o mesmo IP para sua comunicação C&C, indicando que o Threat Actor (TA) por trás de ambas as campanhas é o mesmo.

A figura abaixo mostra os detalhes do endereço IP do C&C e sua conexão com a campanha anterior.

blank
Figura 1 – Endereço IP do servidor C&C associado à antiga variante Drinik

Evolução De Drinik:

A CRIL observou 3 variantes diferentes deste malware desde o ano passado. A primeira variante foi observada em setembro de 2021, quando o malware usou páginas de phishing para roubar credenciais. Em 2022, duas novas variantes foram identificadas em estado selvagem, introduzindo os recursos de gravação de tela e registro de teclas.

A figura abaixo mostra a linha do tempo do malware Drinik e seus recursos.

blank
Figura 2 – Evolução do Trojan Banking Drinik

 

Durante nossa investigação, descobrimos que a primeira versão usa uma página de phishing simples para roubar credenciais bancárias, enquanto a segunda versão usa gravação de tela junto com a técnica de phishing.

Por fim, a terceira e mais recente versão carrega o site genuíno do departamento de imposto de renda e usa a gravação de tela junto com uma funcionalidade de keylogging para roubar as credenciais de login. A figura abaixo mostra a página de login de três versões diferentes.

blank
Figura 3 – Páginas de login das versões do malware Drinik

Nesta análise, analisamos a amostra mais recente “iAssist.apk (86acaac2a95d0b7ebf60e56bca3ce400ef2f9080dbc463d6b408314c265cb523)” do malware Drinik observada em 18 de outubro de 2022, que possui código adicional para abusar do CallScreeningService.

Ao abusar desse serviço, o malware pode impedir chamadas recebidas sem o conhecimento do usuário. Além disso, as strings presentes no arquivo são criptografadas para evitar a detecção por produtos antivírus, e o malware as descriptografa durante o tempo de execução usando uma lógica de descriptografia personalizada. A figura abaixo mostra o trecho de código usado pelo malware para descriptografar as strings criptografadas.

blank
Figura 4 – Código para descriptografar strings

Análise Técnica

Informações De Metadados Do APK  

 

As informações de metadados do aplicativo são mostradas abaixo.

blank
Figura 5 – Informações de metadados do aplicativo

 

Descrição do Manifesto

As permissões prejudiciais solicitadas pelo malware são:

Permissão  Descrição
RECEIVE_SMS Permite que um aplicativo receba mensagens SMS
READ_SMS Acessar mensagens de telefone
ENVIAR SMS Permite que o aplicativo envie mensagens SMS
READ_CALL_LOG Permite que um aplicativo leia o registro de chamadas do usuário
READ_EXTERNAL_STORAGE Permite que um aplicativo leia do armazenamento externo.
WRITE_EXTERNAL_STORAGE Permite que um aplicativo grave no armazenamento externo.

 

Revisão do código-fonte

Como muitos outros trojans bancários, a nova variante do Drinik conta com o Serviço de Acessibilidade. Após o lançamento, o malware solicita que a vítima conceda permissões, seguida de uma solicitação para habilitar o Serviço de Acessibilidade.

Em seguida, ele começa a abusar do serviço para obter as permissões necessárias para iniciar a gravação de tela, desabilitar o Google Play Protect, executar gestos automáticos e capturar registros de chaves.

blank
Figura 6 – Malware solicitando aos usuários que concedam permissões do Serviço de Acessibilidade

A variante mais recente do Drinik carrega o site de imposto de renda indiano genuíno hxxps://eportal[.]incometax.gov.in usando o WebView em vez de exibir páginas de phishing falsas.

blank
Figura 7 – Malware carregando portal de imposto de renda indiano genuíno usando Webview

Antes de mostrar a página de login para a vítima, o malware exibe uma tela de autenticação para verificação biométrica. Quando a vítima insere um PIN, o malware rouba o PIN biométrico gravando a tela usando o MediaProjection e também captura as teclas digitadas.

O malware agora envia os detalhes roubados para o servidor C&C, conforme mostrado abaixo.

blank
Figura 8 – Malware enviando PIN biométrico para C&C Server

Após a autenticação, o malware exibe o site genuíno carregado em um Webview. Drinik inicia a gravação da tela assim que a vítima insere o ID do usuário (como PAN/AADHAR/Outro ID de usuário válido) e envia a gravação para o servidor C&C.

Na versão mais recente do Drinik, o TA visa apenas vítimas com contas legítimas do site de imposto de renda.

blank
Figura 9 – Malware carregando site de imposto de renda genuíno

Depois que a vítima faz login no site genuíno, o malware executa o método onPageFinished(), que verifica ainda mais o URL carregado

para validar o status de login.

O malware então verifica se o URL carregado é um dos seguintes e confirma o login bem-sucedido do usuário.

  • hxxps://eportal.incometax[.]gov.in/iec/foservices/#/dashboard
  • hxxps://eportal.incometax[.]gov.in/iec/foservices/#/login

 

blank
Figura 10 – Malware executando onPageFinished()

 

Se o método onPageFinished() receber uma URL hxxps://eportal.incometax[.]gov.in/iec/foservices/#/login , isso indica que o login falhou.

O malware também pode salvar o estado de login e recuperá-lo usando o comando getLogingStat , que pode identificar se a vítima é nova ou já fez login.

Se a vítima for nova, o malware mostra a mensagem “Para usar esta funcionalidade, você precisa fazer login primeiro!” e solicita que eles façam login. Caso contrário, o malware iniciará a atividade de phishing, considerando que o usuário fez login com sucesso. A figura abaixo mostra o trecho de código para receber o status de login.

blank
Figura 11 – Recebendo status de login

 

Após o login bem-sucedido, o site genuíno redireciona para a URL do painel “ hxxps://eportal.incometax[.]gov.in/iec/foservices/#/dashboard ”. O malware agora verifica se esta URL está no método onPageFinished() e exibe uma caixa de diálogo falsa mencionando a mensagem abaixo:

Nosso banco de dados indica que você é elegível para um reembolso de imposto instantâneo de Rs.57.100.\ – de seus erros de cálculo anteriores até a data. Clique em Aplicar para solicitar reembolso instantâneo e receba seu reembolso em sua conta bancária registrada em minutos.

 

blank
Figura 12 – Malware exibindo a caixa de diálogo após o login bem-sucedido

Quando a vítima clica no botão “Aplicar”, o malware abre a URL de phishing hxxp://gia.3utilities[.]com/Refund/redir.php?i=RefundApproved&source=App&uid= conforme mostrado na figura abaixo.

 

blank
Figura 13 – URL de phishing de carregamento de malware

 

O URL de phishing redireciona para: hxxp://192.227.196[.]185/1305275237/uv4h.php?action=Refund_Approved&id=YWI1MzYxY0A3OTEyNDA0MzY2NTMuY29t&owner=QWRtaW4%3D&source=App&uid= site que se faz passar pelo genuíno Departamento de Imposto de Renda da Índia para atrair vítimas para envio de dados sensíveis.

 

blank
Figura 14 – Página de reembolso de phishing

 

Depois de clicar no botão “Prosseguir para as etapas de verificação”, o malware solicita que a vítima envie detalhes pessoais, como nome completo, número Aadhar, número PAN e outros detalhes junto com informações financeiras, que incluem número da conta, número do cartão de crédito, CVV e PIN.

Esses dados roubados são enviados para o servidor C&C e podem ser usados ​​pelo TA para realizar transações fraudulentas.

 

blank
Figura 15 – Site de phishing solicitando dados pessoais
blank
Figura 16 – Site de phishing solicitando informações financeiras

 

Após enviar os detalhes, o malware exibe a página de confirmação com todos os detalhes inseridos pela vítima. Além disso, ele solicita que a vítima verifique os detalhes do ITR (Declaração de Imposto de Renda) usando credenciais bancárias líquidas.

 

blank
Figura 17 – Página de detalhes de confirmação
blank
Figura 18 – Site de phishing solicitando credenciais de net banking para verificação

 

Além de roubar credenciais por meio de gravação de tela e páginas de phishing, também observamos o malware visando bancos indianos ao abusar do Serviço de Acessibilidade.

Sempre que algum evento aciona o Serviço de Acessibilidade, o malware verifica a origem do evento com as palavras-chave do banco armazenadas em uma chave de preferência compartilhada “newCLICKJACK”. Se a palavra-chave corresponder, o malware coletará os dados de keylogging, que podem conter credenciais bancárias.

 

blank
Figura 19 – Segmentação de bancos indianos com recurso de keylogging

 

O malware registrou um CallScreeningService no arquivo de manifesto. Discadores padrão ou aplicativos de terceiros usam o CallScreeningService para permitir ou proibir chamadas recebidas antes de exibi-las aos usuários.

O malware Drinik abusa desse serviço para impedir chamadas recebidas, provavelmente para impedir a interrupção de qualquer atividade maliciosa em andamento, e envia o status da chamada recebida para o servidor C&C.

 

blank
Figura 20 – Malware abusando do CallScreeningService para impedir chamadas recebidas

 

O malware recebe o comando via FirebaseCloudMessaging (FCM) e os salva na variável “processCMD”.

O malware executa ainda a respectiva tarefa maliciosa com base nos comandos recebidos do FCM para realizar outras atividades maliciosas em um dispositivo infectado. Alguns dos comandos recebidos via FCM são:

Comando Descrição
VERIFICAR CELULAR Verifique o status de registro do dispositivo
OPENAPPCOMPONENT Inicia a atividade do componente do aplicativo recebida do servidor
GETAUTOCMD Envia o valor AutoCMD do arquivo de preferência compartilhado para o servidor C&C
DISABLE_ICON Esconde o ícone
KILLSOUND Áudio silencioso para chamadas e notificações
VERIFICAR SOBREPOSIÇÃO Envia o status da sobreposição
DESAFARIZAR Interrompe o serviço em primeiro plano

Conclusão 

Alguns trojans bancários Android conhecidos, como Hydra, BRATA, Anubis e vários outros, dependem fortemente do Serviço de Acessibilidade e desenvolveram recursos avançados ao abusar desse serviço com sucesso.

A CRIL observou que o malware Drinik também está evoluindo para uma ameaça avançada, implementando recursos poderosos que observamos em outros trojans bancários.

Nossa análise indica que o TA por trás do Drinik está constantemente trabalhando na atualização de seu malware com recursos novos e avançados. O TA inicialmente começou a desenvolver malware implementando páginas de phishing sofisticadas para coleta de credenciais. No entanto, nossas observações mostram que eles aprimoraram sua estrutura com recursos avançados, como gravação de tela e keylogging para roubar credenciais de sites de imposto de renda genuínos, credenciais bancárias e detalhes biométricos.

O malware ainda está em desenvolvimento e podemos observar uma nova variante do malware Drinik com novos alvos e técnicas para atingir suas vítimas.

Nossas Recomendações 

  • Baixe e instale software apenas de lojas de aplicativos oficiais, como Play Store ou iOS App Store.
  • Nunca compartilhe seus dados do cartão, número CVV, PIN do cartão e credenciais do Net Banking com uma fonte não confiável.
  • Habilite recursos de segurança biométrica como impressão digital ou reconhecimento facial para desbloquear o dispositivo móvel para evitar acesso não autorizado obtido por meio de atividades maliciosas, como keylogging e gravação de tela.
  • O uso de um pacote de software antivírus e de segurança da Internet de renome é recomendado em dispositivos conectados, incluindo PC, laptops e dispositivos móveis.
  • Use senhas fortes e imponha a autenticação multifator sempre que possível.
  • Tenha cuidado ao abrir links recebidos por SMS ou e-mails entregues no seu telefone.
  • Certifique-se de que o Google Play Protect esteja ativado em dispositivos Android.
  • Tenha cuidado ao habilitar quaisquer permissões.
  • Mantenha seus dispositivos, sistemas operacionais e aplicativos atualizados.

Técnicas MITRE ATT&CK®

Tática ID da técnica Nome da técnica
Acesso inicial T1476 Entregue o aplicativo malicioso por outros meios.
Acesso inicial T1444 Masquerade como um aplicativo legítimo
Evasão de Defesa T1418 Descoberta de aplicativos
Descoberta T1426 Descoberta de informações do sistema
Impacto T1616 Controle de chamadas
Coleção T1513 Captura de tela
Persistência T1402 Receptores de transmissão
Coleção T1412 Capturar mensagens SMS
Acesso de credencial T1411 Solicitação de entrada
Exfiltração T1567 Exfiltração por serviço da Web

Indicadores De Compromisso (IOCs) 

Indicadores Tipo de indicador Descrição
86acaac2a95d0b7ebf60e56bca3ce400ef2f9080dbc463d6b408314c265cb523 SHA256 Hash do arquivo APK analisado
ba2fb55bb89c98aec3a2130b22584d8c299451ba SHA1 Hash do arquivo APK analisado
0c6257e385f33e46c1839f59bc4b53d7 MD5 Hash do arquivo APK analisado
hxxp://gia.3utilities[.]com URL URL de C&C
hxxp://192[.]227.196.185 URL Hospedagem de IP malicioso site ITR falso
198[.]12.107[.]13 IP Servidor C&C de hospedagem IP

 

Fonte: Cyble


Descubra mais sobre DCiber

Assine para receber os posts mais recentes por e-mail.