A equipe de pesquisa da ESET descobriu o primeiro caso conhecido de malware para Android que utiliza IA generativa para manipular a interface do usuário com base no contexto. Embora o aprendizado de máquina já tenha sido empregado para fins semelhantes, recentemente pesquisadores da Dr.Web identificaram o Android.Phantom, que utiliza modelos TensorFlow para analisar capturas de tela de anúncios e clicar automaticamente em elementos detectados, viabilizando fraude publicitária em larga escala. Esta é a primeira vez que observamos a IA generativa sendo aplicada dessa forma. Como os cibercriminosos dependem da solicitação a um modelo de IA, neste caso o Gemini, do Google, para orientar a manipulação maliciosa da interface do usuário, batizamos essa família de PromptSpy. Este é o segundo malware com uso de IA que descobrimos, após o PromptLock, identificado em agosto de 2025, o primeiro caso conhecido de ransomware orientado por IA.
Embora a IA generativa seja utilizada apenas em uma parte relativamente pequena do código do PromptSpy, responsável por garantir a persistência, seu impacto na adaptabilidade do malware é significativo. Especificamente, o Gemini é empregado para analisar a tela atual e fornecer ao PromptSpy instruções passo a passo para assegurar que o aplicativo malicioso permaneça fixado na lista de aplicativos recentes, evitando que seja facilmente removido ou encerrado pelo sistema. O modelo de IA e o prompt são predefinidos no código e não podem ser alterados. Como malwares para Android frequentemente dependem da navegação pela interface do usuário, o uso de IA generativa permite que os agentes de ameaça se adaptem a praticamente qualquer dispositivo, layout ou versão do sistema operacional, ampliando consideravelmente o número potencial de vítimas.
O principal objetivo do PromptSpy é implantar um módulo VNC integrado, concedendo aos operadores acesso remoto ao dispositivo da vítima. Esse malware para Android também abusa do Serviço de Acessibilidade para impedir a desinstalação por meio de sobreposições invisíveis, capturar dados da tela de bloqueio e gravar vídeos. A comunicação com o servidor de comando e controle, C&C, ocorre por meio do protocolo VNC, com uso de criptografia AES.
Com base em indícios relacionados ao idioma e nos vetores de distribuição observados durante a análise, essa campanha aparenta ter motivação financeira e ter como principal alvo usuários da Argentina. Vale destacar que as amostras analisadas do PromptSpy indicam que ele foi desenvolvido em um ambiente de língua chinesa.
O PromptSpy é distribuído por meio de um site dedicado e nunca esteve disponível no Google Play. Como parceiro da App Defense Alliance, ainda assim compartilhamos nossas descobertas com o Google. Usuários de Android estão automaticamente protegidos contra versões conhecidas desse malware pelo Google Play Protect, que é ativado por padrão em dispositivos Android com o Google Play Services.
Pontos principais desta publicação:
O PromptSpy é o primeiro malware conhecido para Android a utilizar IA generativa em seu fluxo de execução, ainda que apenas para garantir persistência.
O Gemini, do Google, é empregado para interpretar elementos exibidos na tela do dispositivo comprometido e fornecer ao PromptSpy instruções dinâmicas sobre como executar um gesto específico para permanecer na lista de aplicativos recentes.
A principal finalidade do PromptSpy, que não depende de IA generativa, é implantar um módulo VNC no dispositivo da vítima, permitindo que os atacantes visualizem a tela e executem ações remotamente.
O PromptSpy ainda não foi observado em nossa telemetria, o que sugere tratar-se possivelmente de uma prova de conceito. No entanto, a descoberta de um provável domínio de distribuição indica a existência de uma variante direcionada a usuários na Argentina.
O PromptSpy é capaz de capturar dados da tela de bloqueio, impedir a desinstalação, coletar informações do dispositivo, realizar capturas de tela, gravar a atividade da tela em vídeo, entre outras ações maliciosas.
Funcionalidade com IA do PromptSpy
Embora o PromptSpy use o Gemini em apenas um de seus recursos, ele ainda demonstra como a incorporação dessas ferramentas de IA pode tornar o malware mais dinâmico, oferecendo aos agentes de ameaças maneiras de automatizar ações que normalmente seriam mais difíceis com scripts tradicionais.
Como já foi mencionado brevemente, o malware para Android geralmente depende de recursos de tela codificados, como toques, coordenadas ou seletores de interface do usuário – métodos que podem ser interrompidos com alterações de interface do usuário entre dispositivos, versões do sistema operacional ou skins do fabricante. O objetivo do PromptSpy é obter persistência permanecendo incorporado na lista de aplicativos recentes, executando o gesto “bloquear aplicativo em aplicativos recentes” (o processo completo é descrito na seção Análise), que varia entre dispositivos e fabricantes. Isso dificulta a automatização com scripts fixos tradicionalmente usados por malware para Android.
Portanto, o PromptSpy adota uma abordagem completamente diferente: ele envia ao Gemini um prompt em linguagem natural junto com um dump XML da tela atual, dando à IA uma visão detalhada de cada elemento da interface do usuário: seu texto, tipo e posição exata na tela.
O Gemini processa essas informações e responde com instruções JSON que informam ao malware qual ação executar (por exemplo, um toque) e onde executá-la. O malware salva os prompts anteriores e as respostas do Gemini, permitindo que o Gemini entenda o contexto e coordene interações de várias etapas.
A Figura 1 mostra um trecho de código da inicialização da comunicação do PromptSpy com o Gemini, incluindo o primeiro prompt usado. Ao entregar a tomada de decisão ao Gemini, o malware pode reconhecer o elemento correto da interface do usuário e executar o gesto apropriado, mantendo o malware ativo mesmo que o usuário tente fechá-lo.

O PromptSpy continua solicitando o Gemini até que a IA confirme que o aplicativo foi bloqueado com êxito, mostrando um ciclo de feedback em que o malware aguarda a validação antes de prosseguir.
Visão geral do PromptSpy
Em fevereiro de 2026, descobrimos duas versões de uma família de malware para Android até então desconhecida. A primeira versão, que chamamos de VNCSpy, apareceu no VirusTotal em 13 de janeiro de 2026 e foi representada por três amostras carregadas de Hong Kong. Em 10 de fevereiro de 2026, quatro amostras de malware mais avançado baseado no VNCSpy foram carregadas no VirusTotal a partir da Argentina.
Nossa análise das amostras da Argentina revelou um malware de vários estágios com uma carga maliciosa que usa indevidamente o Gemini do Google. Com base nessas descobertas, nomeamos o primeiro estágio desse malware como PromptSpy dropper e sua carga útil como PromptSpy.
Deve-se observar que ainda não vimos nenhuma amostra do dropper PromptSpy ou de sua carga útil em nossa telemetria, o que pode indicar que ambos são apenas provas de conceito. No entanto, com base na existência de um possível domínio de distribuição descrito nos parágrafos a seguir, não podemos descartar a possibilidade de o dropper PromptSpy e o PromptSpy existirem em estado selvagem.
De acordo com os dados do VirusTotal, todas as quatro amostras do dropper PromptSpy foram distribuídas por meio do site mgardownload[.]com, que já estava off-line durante nossa análise.
Depois de instalar e iniciar o dropper PromptSpy, ele abriu uma página da Web hospedada em m-mgarg[.]com. Embora esse domínio também estivesse off-line, a versão em cache do Google revelou que ele provavelmente se fazia passar por um site do Chase Bank (legalmente, JPMorgan Chase Bank N.A.) (veja a Figura 2).

O malware usa uma marca semelhante, com o nome do aplicativo MorganArg e o ícone inspirado no banco Chase (veja a Figura 3). MorganArg, provavelmente uma abreviação de “Morgan Argentina”, também aparece como o nome do site em cache, sugerindo um foco de segmentação regional.

Usamos o domínio m-mgarg[.]com para fazer um pivô no VirusTotal, o que nos levou a outra amostra de malware para Android (Android/Phishing.Agent.M). O VirusTotal mostrou o site falsificado em espanhol, com um botão Iniciar sesión (Login), indicando que a página provavelmente pretendia imitar o site de um banco (veja a Figura 4).

Esse cavalo de Troia parece funcionar como um aplicativo complementar desenvolvido pelo mesmo agente de ameaças por trás do VNCSpy e do PromptSpy. Em segundo plano, o cavalo de Troia entra em contato com seu servidor para solicitar um arquivo de configuração, que inclui um link para baixar outro APK, apresentado à vítima, em espanhol, como uma atualização. Durante nossa pesquisa, o servidor de configuração não estava mais acessível, portanto, o URL exato de download permanece desconhecido. No entanto, como ele usa o mesmo site exclusivo de falsificação de banco, o mesmo nome de aplicativo, ícone e, o mais importante, é assinado pelo mesmo certificado de desenvolvedor exclusivo que o dropper do PromptSpy, suspeitamos fortemente que esse aplicativo possa servir como o estágio inicial projetado para levar as vítimas a instalar o PromptSpy.
Tanto o VNCSpy quanto o PromptSpy incluem um componente VNC, dando aos seus operadores acesso remoto total aos dispositivos comprometidos quando as vítimas ativam os Serviços de Acessibilidade (veja a Figura 5). Isso permite que os operadores de malware vejam tudo o que acontece no dispositivo e executem toques, deslizes, gestos e entrada de texto como se estivessem fisicamente segurando o telefone.

Além dos recursos maliciosos já contidos no VNCSpy, o PromptSpy acrescenta a manipulação da interface do usuário assistida por IA, ajudando-o a manter a persistência ao manter o aplicativo malicioso fixado na lista de aplicativos recentes (um exemplo de como o bloqueio é indicado na lista pode ser visto na Figura 6).

Acreditamos que essa funcionalidade é usada antes de a sessão VNC ser estabelecida, para que o usuário ou o sistema não elimine a atividade do PromptSpy da lista de aplicativos recentes. Na Figura 7, você pode ver a comunicação de rede do PromptSpy com a Gemini AI.

Origens
Ao analisar o PromptSpy, notamos que ele contém strings de depuração escritas em chinês simplificado. Ele inclui até mesmo a manipulação de vários tipos de eventos de acessibilidade em chinês (veja a Figura 8), um método de depuração que foi desativado no código, mas não removido. O objetivo principal desse método é fornecer uma explicação localizada (em chinês) para vários eventos de acessibilidade que ocorrem em um dispositivo Android. Isso torna os logs de eventos mais compreensíveis para usuários ou desenvolvedores que falam chinês, em vez de apenas exibir códigos inteiros brutos.

Com confiança média, esses detalhes sugerem que o PromptSpy foi desenvolvido em um ambiente de língua chinesa.
Análise
Nossa análise técnica se concentra no dropper PromptSpy e em sua carga útil, o PromptSpy. O PromptSpy está incorporado(app-release.apk) dentro do diretório de ativos do dropper. Esse APK contém a funcionalidade maliciosa principal. Quando o dropper é iniciado, ele exibe um prompt solicitando que o usuário instale o que parece ser uma versão atualizada do aplicativo. Essa “atualização” é, na verdade, a carga útil do PromptSpy, que o usuário deve instalar manualmente (veja a Figura 9).

Uma vez instalado e iniciado, o PromptSpy solicita permissões do Serviço de Acessibilidade, dando ao malware a capacidade de ler o conteúdo da tela e executar cliques automatizados.
Em seguida, o PromptSpy mostra uma tela de engodo simples no estilo de carregamento em primeiro plano (veja a Figura 10). Enquanto isso, em segundo plano, ele começa a se comunicar com a Gemini AI para obter as instruções necessárias para bloquear seu processo na lista de aplicativos recentes – uma técnica de persistência simples que permite que o PromptSpy permaneça ativo e bloqueado mesmo após a reinicialização do dispositivo.

Quando o usuário vê a atividade Loading, please wait (Carregando, aguarde ), o PromptSpy usa os Serviços de acessibilidade para abrir a tela Recent Apps (Aplicativos recentes) e coletar informações detalhadas da interface do usuário: texto visível, descrições de conteúdo, nomes de classes, nomes de pacotes e limites de tela. Ele serializa esse instantâneo dinâmico da IU como XML e o inclui em seu prompt para o Gemini. Em seguida, o Gemini retorna instruções passo a passo de toque sobre como realizar o gesto de “bloqueio de aplicativo”.
Esse processo forma um loop contínuo:
- O PromptSpy envia o contexto atualizado da interface do usuário para o Gemini
- O Gemini responde com novas ações
- O PromptSpy as executa e retorna o estado da tela resultante
O loop continua até que o Gemini confirme que o aplicativo foi bloqueado com sucesso nos aplicativos recentes. Aqui está um exemplo de estrutura:
- Prompt: Você é um assistente de automação do Android. O usuário lhe fornecerá os dados XML da interface do usuário da tela atual. Você precisa analisar o XML e gerar instruções de operação no formato JSON para atingir o objetivo do usuário.\nOs nós no XML contêm atributos “bounds” no formato “[left,top][right,bottom]”. Você precisa calcular as coordenadas do centro para gerar instruções de clique.\n\n*** Regras básicas de julgamento ***\n1. **NÃO adivinhe que a tarefa foi concluída. Somente retorne “COMPLETED” (concluído) quando houver evidência visual clara de sucesso no XML da interface do usuário atual (por exemplo, texto como “Saved” (salvo), “Success” (sucesso) aparece, o status da chave se torna checked=\”true\” (verificado) ou a tela navegou para o estado de destino).\n2. Se você executou a última etapa, mas o XML atual ainda não reflete o resultado, retorne ‘IN_PROGRESS’ com a ação ‘NONE’ (ou aguarde) para verificar o novo estado da IU no próximo ciclo.\n3. Se não tiver certeza, permaneça ‘IN_PROGRESS’ e tente verificar.\n4. Se o XML da interface do usuário atual estiver vazio, use ‘RECENTS’ para acessar a lista de aplicativos recentes.\n\nVocê pode usar SWIPE para rolar\/slide para encontrar alvos:\nQuando action_type = \”SWIPE\”, você deve fornecer x1,y1,x2,y2,duration_ms.\ne.g, Rolar para cima: deslizar de baixo para cima (y2 Objetivo do usuário: bloquear o aplicativo MorganArgs atual na lista de aplicativos recentes. Informações do dispositivo:
\n\nM XML da IU atual: - Resposta do Gemini (instruções de ação): status\”: \”IN_PROGRESS\”,\n \”reasoning\”: \”Acessei a lista de aplicativos recentes. Posso ver o “MorganArgs” listado nos aplicativos recentes. A próxima etapa é clicar longamente no cartão do aplicativo ‘MorganArgs’ para abrir o menu de opções, que deve incluir uma opção para bloqueá-lo.\”,\n \”action_type\”: \”LONG_CLICK\”,\n \”x\”: 586,\n \”y\”: 1126,\n \”x1\”: -1,\n \”y1\”: -1,\n \”x2\”: -1,\n \”y2\”: -1,\n \”duration_ms\”: -1\n)
- Acompanhamento do malware com resultados de tela atualizados: A ação anterior foi executada. Este é o novo XML da interface do usuário, determine se a tarefa está concluída ou forneça a próxima instrução:
Todas as ações sugeridas pelo Gemini – toques, deslizes, navegação – são executadas por meio dos Serviços de Acessibilidade, permitindo que o malware interaja com o dispositivo sem a entrada do usuário.
O principal recurso malicioso do PromptSpy está em seu serviço VNC integrado. Isso permite que os atacantes visualizem remotamente a tela da vítima em tempo real e controlem totalmente o dispositivo.
O malware se comunica com seu servidor de comando e controle (C&C) codificado em 54.67.2[.]84 usando o protocolo VNC; as mensagens são criptografadas em AES usando uma chave codificada. Por meio desse canal de comunicação, o malware pode:
- receber uma chave de API Gemini,
- carregar a lista de aplicativos instalados,
- interceptar o PIN ou a senha da tela de bloqueio,
- capturar a tela de desbloqueio padrão como um vídeo de gravação,
- informar se a tela está ligada ou desligada,
- informar o aplicativo atual em primeiro plano,
- gravar a tela e os gestos do usuário para aplicativos especificados pelo servidor e
- fazer capturas de tela sob demanda.
O PromptSpy também utiliza indevidamente os Serviços de Acessibilidade como um mecanismo antirremoção. Quando o usuário tenta desinstalar a carga útil ou desativar os Serviços de Acessibilidade, o malware sobrepõe retângulos transparentes em áreas específicas da tela, especialmente sobre botões que contêm substratos como parar, finalizar, limpar e desinstalar. Essas sobreposições são invisíveis para o usuário, mas interceptam as interações, dificultando a remoção. Na Figura 11, executamos o PromptSpy com o sinalizador de depuração ativado (mantido lá pelos desenvolvedores), que definiria a cor do retângulo transparente, para visualizar onde eles são especificamente exibidos. No entanto, no dispositivo real, eles são totalmente invisíveis.

Como o PromptSpy bloqueia a desinstalação ao sobrepor elementos invisíveis na tela, a única maneira de a vítima removê-lo é reinicializar o dispositivo no Modo de Segurança, onde os aplicativos de terceiros são desativados e podem ser desinstalados normalmente.
Para entrar no modo de segurança, os usuários normalmente devem pressionar e manter pressionado o botão liga/desliga, manter pressionado o botão Liga/Desliga e confirmar o prompt Reiniciar no modo de segurança (embora o método exato possa variar de acordo com o dispositivo e o fabricante). Depois que o telefone for reiniciado no modo de segurança, o usuário poderá acessar Configurações → Aplicativos → MorganArg e desinstalá-lo sem interferência.
A nova geração de malware com IA
O PromptSpy mostra que o malware para Android está começando a evoluir de forma sinistra. Ao confiar na IA generativa para interpretar elementos na tela e decidir como interagir com eles, o malware pode se adaptar a praticamente qualquer dispositivo, tamanho de tela ou layout de interface do usuário que encontrar. Em vez de toques codificados, ele simplesmente entrega à IA um instantâneo da tela e recebe em troca instruções de interação precisas e passo a passo, o que o ajuda a obter uma técnica de persistência resistente a alterações na interface do usuário.
De forma mais ampla, essa campanha mostra como a IA generativa pode tornar o malware muito mais dinâmico e capaz de tomar decisões em tempo real. O PromptSpy é um dos primeiros exemplos de malware para Android com IA generativa e ilustra a rapidez com que os atacantes estão começando a usar indevidamente as ferramentas de IA para melhorar o impacto.
Indicadores de Comprometimento
Uma lista abrangente de indicadores de comprometimento (IoCs) e amostras pode ser encontrada em nosso repositório GitHub.
Arquivos
| SHA-1 | Filename | Detection | Description |
| 6BBC9AB132BA066F6367 | net.ustexas. | Android/Spy.VNCSpy.A | Android VNCSpy malware. |
| 375D7423E63C8F5F2CC8 | nlll4.un7o6. | Android/Spy.VNCSpy.A | Android VNCSpy malware. |
| 3978AC5CD14E357320E1 | ppyzz.dpk0p. | Android/Spy.VNCSpy.A | Android VNCSpy malware. |
| E60D12017D2DA579DF87 | mgappc-1.apk | Android/Spy.PromptSpy.A | Android PromptSpy dropper. |
| 9B1723284E3117949879 | mgappm-1.apk | Android/Spy.PromptSpy.A | Android PromptSpy dropper. |
| 076801BD9C6EB78FC033 | mgappn-0.apk | Android/Spy.PromptSpy.A | Android PromptSpy dropper. |
| 8364730E9BB2CF3A4B01 | mgappn-1.apk | Android/Spy.PromptSpy.A | Android PromptSpy dropper. |
| F8F4C5BC498BCCE907DC | app-release. | Android/Spy.PromptSpy.A | Android PromptSpy. |
| C14E9B062ED28115EDE0 | mgapp.apk | Android/Phishing.Agent.M | Android phishing malware. |
Rede
| IP | Domain | Hosting provider | First seen | Details |
| 52.222.205[.]45 | m-mgarg[.]com | Amazon.com, Inc. | 2026‑01‑12 | Phishing website. |
| 54.67.2[.]84 | N/A | Amazon.com, Inc. | N/A | C&C server. |
| 104.21.91[.]170 | mgardownload | Cloudflare, Inc. | 2026‑01‑13 | Distribution website. |
Técnicas do MITRE ATT&CK
Esta tabela foi criada usando a versão 18 da estrutura MITRE ATT&CK.
#linguagem do espaço reservado=’1′ id=’1639’#@#
Como servidor público há mais de 16 anos, é importante ressaltar a importância de se manter informado sobre as ameaças cibernéticas que podem afetar nossos dispositivos móveis. Recentemente, um novo malware para Android que utiliza inteligência artificial generativa foi identificado mirando países da América Latina.
É essencial que a sociedade esteja ciente dessas ameaças e tome medidas preventivas para proteger seus dados e informações pessoais. Busque sempre manter seu sistema operacional e aplicativos atualizados, evite clicar em links suspeitos e instale programas de segurança confiáveis.
Ao se conscientizar sobre as ameaças cibernéticas e adotar boas práticas de segurança digital, podemos minimizar os riscos e garantir a proteção de nossos dispositivos e informações. Aprenda a tirar o melhor proveito do serviço prestado à sociedade, utilizando a tecnologia de forma segura e responsável. A segurança digital é uma responsabilidade de todos, e juntos podemos enfrentar esses desafios de forma eficaz.

