Pesquisadores de cibersegurança identificaram um novo malware para Android chamado RatHat, avaliado como sendo operado por atores maliciosos com base na China, que conta com um sistema de inteligência artificial (IA) para navegar e controlar dispositivos comprometidos.
"Distribuído principalmente por meio de campanhas direcionadas de smishing (phishing por SMS) e malvertising (publicidade maliciosa) que levam a portais de download fraudulentos de terceiros, o RatHat utiliza um pipeline de infecção automatizado em múltiplas etapas", afirmaram os pesquisadores da Zimperium, Gianluca Braga, Vishnu Pratapagiri e Fernando Ortega em um comunicado.
"Uma vez implantado, ele combina o abuso de permissões de Acessibilidade com o autoemparelhamento autônomo do ADB local (Android Debug Bridge) para escapar da sandbox padrão de aplicativos Android, implantando daemons nativos independentes que são executados com privilégios de nível de shell."
O RatHat é propagado por sites de phishing enganosos promovidos via malvertising, campanhas de smishing e fóruns de terceiros, que induzem usuários desatentos a instalar APKs (pacotes de instalação do Android) contaminados com malware. Esses pacotes funcionam como dropper para lançar o payload principal, incorporando camadas de verificações anti-análise e anti-depuração para escapar da detecção.
As quatro técnicas anti-análise incorporadas ao malware estão listadas abaixo:
-
Adulteração de contêiner, que declara certos arquivos como diretórios no pacote ou define o sinalizador de bit de criptografia de uso geral do ZIP em alguns arquivos, de modo que sejam ignorados pela biblioteca libziparchive do Android, mas não por outras ferramentas como unzip e apktool.
-
Bomba de manifesto, que causa falhas ou estouros de tempo em pipelines automatizados de análise ao posicionar cabeçalhos de bloco 0x9999 não documentados no "AndroidManifest.xml", que são ignorados pelo ambiente de execução nativo do Android.
-
Envenenamento de bytecode DEX (formato executável Dalvik), que inclui pseudo-instruções configuradas com um atributo element_width inválido, de modo a causar falha no processo de descompilação.
-
Criptografia dupla de strings, que utiliza um esquema de criptografia chamado StringCrypto: Base64 para dificultar a análise.
Adulteração de contêiner, que declara certos arquivos como diretórios no pacote ou define o sinalizador de bit de criptografia de uso geral do ZIP em alguns arquivos, de modo que sejam ignorados pela biblioteca libziparchive do Android, mas não por outras ferramentas como unzip e apktool.
Bomba de manifesto, que causa falhas ou estouros de tempo em pipelines automatizados de análise ao posicionar cabeçalhos de bloco 0x9999 não documentados no "AndroidManifest.xml", que são ignorados pelo ambiente de execução nativo do Android.
Envenenamento de bytecode DEX (formato executável Dalvik), que inclui pseudo-instruções configuradas com um atributo element_width inválido, de modo a causar falha no processo de descompilação.
Criptografia dupla de strings, que utiliza um esquema de criptografia chamado StringCrypto: Base64 para dificultar a análise.
A arquitetura do malware para Android é composta por três componentes principais: o aplicativo Android malicioso, um agente em Go e um cliente de proxy reverso FRP (Fast Reverse Proxy). O aplicativo Android atua como condutor para obter permissões críticas do sistema e iniciar a próxima fase do ataque, permitindo obter permissões de serviços de Acessibilidade e, em seguida, abusar delas para desbloquear as Opções do Desenvolvedor, ativar a Depuração Sem Fio e extrair o código de emparelhamento de 6 dígitos do ADB.
O malware está preparado para exibir sobreposições em aplicativos específicos a fim de coletar credenciais, gravar a tela usando a API MediaProjection do Android, interceptar mensagens SMS e sobrescrever tentativas de instalação exibindo uma sobreposição de falha falsa se passando pela Google Play Store.
No entanto, mesmo que a vítima consiga desinstalá-lo, o atacante ainda mantém o acesso de shell no dispositivo. O atacante pode usar o serviço local para verificar se o malware está instalado e reinstalá-lo caso não esteja.
"O malware serializa a árvore de Acessibilidade ativa do dispositivo em XML e se comunica com um dos assistentes de IA generativa mais populares do mundo", disse a Zimperium. "Essa IA é usada para ações não maliciosas, incluindo: resolver as coordenadas de centro de um alvo nomeado na tela em formato JSON para direcionar cliques sintéticos, resolver o texto real de um alvo na tela a partir do XML e sinalizar comandos automáticos de navegação como SCROLL_DOWN."
O agente em Go executado pelo APK se disfarça de biblioteca nativa ("liblocal-service.so"), mas se vale do acesso de shell obtido por meio do daemon ADB local para executar comandos, permitindo assim que o malware estabeleça persistência e aplique isenções de gerenciamento de energia. O cliente FRP, por sua vez, é usado para estabelecer um túnel reverso seguro para um servidor de comando e controle (C2).
"O agente em Go recupera a configuração do túnel FRP a partir do servidor C2, permitindo que o cliente FRP estabeleça um túnel reverso ativo e persistente para o operador", disseram os pesquisadores. "Essa conexão é usada pelos atacantes para acessar o daemon ADB: é um caminho de uso geral para dentro do dispositivo que transporta o que o operador quiser, independentemente do próprio conjunto de recursos do malware."
Os comandos emitidos pelo servidor C2 são variados e ricos em recursos, permitindo que os atores maliciosos coletem mensagens SMS, credenciais, arquivos, PIN, padrão ou senha de bloqueio, capturas de tela, teclas digitadas (incluindo URLs inseridas na barra de endereço do navegador) e uma lista de aplicativos instalados. Também integrado ao RatHat está um keylogger em nível de hardware, executado pelo agente em Go, capaz de registrar toques na tela.
"A arquitetura em múltiplas camadas do RatHat, a dependência de daemons fora do ciclo de vida padrão e o uso de loops de decisão em tempo real com GenAI (IA generativa) ilustram por que os controles de segurança móveis tradicionais baseados em assinaturas são insuficientes", afirmou a Zimperium.