Investigadores de ESET descubrieron un ataque de cadena de suministro multiplataforma llevado a cabo por el grupo APT ScarCruft, alineado con Corea del Norte, dirigido a la región de Yanbian en China, hogar de una importante comunidad de etnia coreana y punto de tránsito para refugiados y desertores norcoreanos. En este ataque, probablemente activo desde finales de 2024, ScarCruft comprometió componentes para Windows y Android de una plataforma de videojuegos centrada en títulos sobre Yanbian, troyanizándolos con un backdoor.

El backdoor, denominado BirdCall por ESET, era originalmente conocido por afectar únicamente a Windows; la versión para Android fue descubierta por primera vez como parte de este ataque de cadena de suministro. En este blog post, presentamos una visión general del ataque, junto con el primer análisis público del backdoor en Android.

Puntos clave de este blogpost:

  • El grupo APT ScarCruft, alineado con Corea del Norte, comprometió una plataforma de videojuegos utilizada por la comunidad coreana en la región de Yanbian, China.
  • El cliente Windows de la plataforma fue comprometido mediante una actualización maliciosa que derivó en el backdoor RokRAT, el cual posteriormente desplegó el backdoor BirdCall.
  • Juegos Android disponibles en la plataforma fueron troyanizados para incluir la versión Android del backdoor BirdCall, una nueva herramienta en el arsenal de ScarCruft.
  • El objetivo de la campaña es el espionaje, con capacidades para recolectar datos personales y documentos, tomar capturas de pantalla y realizar grabaciones de audio.

Perfil de Scarcruft

ScarCruft, también conocido como APT37 o Reaper, ha estado activo al menos desde 2012 y se sospecha que es un grupo de ciberespionaje vinculado a Corea del Norte. Su foco principal ha sido Corea del Sur, aunque también ha dirigido ataques a otros países de Asia. El grupo tiende a enfocarse en organizaciones gubernamentales y militares, así como en empresas de diversos sectores alineados con los intereses norcoreanos. También ha dirigido operaciones contra desertores norcoreanos, como se observa en esta investigación.

Backdoor BirdCall

Versión para Windows

BirdCall es un backdoor para Windows desarrollado en C++ que ESET identificó en 2021 y atribuyó a ScarCruft en el marco de ESET Threat Intelligence

Este backdoor cuenta con amplias capacidades de espionaje, incluyendo captura de pantalla, registro de teclas y contenido del portapapeles, robo de credenciales y archivos, y ejecución de comandos en el sistema. Para la comunicación con C&C, utiliza servicios legítimos de almacenamiento en la nube como Dropbox o pCloud, así como sitios web comprometidos. BirdCall suele desplegarse mediante una cadena de carga multietapa, iniciada con scripts en Ruby o Python y con componentes cifrados mediante claves específicas del equipo. La versión inicial fue descrita públicamente en 2021 como una evolución avanzada de RokRAT (S2WAhnLab).

Versión para Android

La versión Android de BirdCall, detectada en este ataque, implementa un subconjunto de las funcionalidades presentes en Windows: recolección de contactos, SMS, registros de llamadas, documentos, archivos multimedia y claves privadas. También puede realizar capturas de pantalla y grabar audio ambiental.

Según nuestra investigación, BirdCall para Android fue desarrollado activamente durante varios meses. Se identificaron siete versiones, desde la versión 1.0 (octubre de 2024) hasta la 2.0 (junio de 2025).

Descubrimiento

La investigación comenzó con un APK sospechoso encontrado en VirusTotal. El análisis inicial confirmó que se trataba de un archivo malicioso con un backdoor.

El APK resultó ser un juego de cartas troyanizado llamado 延边红十 (traducción automática: Yanbian Red Ten), que rastreamos hasta su sitio web oficial, https://www.sqgame[.]net. sqgame es una plataforma de juegos orientada a personas de Yanbian y ofrece juegos tradicionales de la región para Windows, Android e iOS. Los usuarios pueden competir en juegos de cartas y de mesa (ver Figura 1) con amigos o participar en torneos organizados.

Figure 1. Yanbian Red Ten game
Figura 1. Juego Yanbian Red Ten

Sorprendentemente, el APK disponible para descarga en el sitio oficial es el mismo que encontramos inicialmente en VirusTotal. Además, un segundo juego Android (新画图, traducción automática: New Drawing) disponible en sqgame también estaba troyanizado con el mismo backdoor. Análisis adicional reveló que el backdoor es un port para Android del backdoor BirdCall del grupo ScarCruft.

El enlace al cliente de escritorio Windows en el sitio de sqgame dirige a un instalador de hace varios años que parece limpio. Sin embargo, tras la instalación descarga actualizaciones; durante nuestro análisis no identificamos código malicioso en esa etapa inicial.

Al profundizar en la telemetría de ESET, identificamos una biblioteca mono.dll troyanizada, originada en un paquete de actualización del cliente de escritorio. La telemetría muestra que este paquete era malicioso al menos desde noviembre de 2024, durante un periodo desconocido. Al momento de redactar este artículo, ya no era malicioso.

También analizamos el juego para iOS disponible en el sitio y no encontramos código malicioso. Creemos que ScarCruft omitió esta plataforma, debido a la mayor dificultad de troyanizar y distribuir aplicaciones en iOS, posiblemente por el proceso de revisión de Apple.

Victimología

Dado que el sitio comprometido está dirigido a personas de Yanbian y sus juegos tradicionales, inferimos que los principales objetivos son personas de etnia coreana que viven en esta región. La Prefectura Autónoma Coreana de Yanbian es una región de China que limita con Corea del Norte y alberga la mayor comunidad coreana fuera de Corea.

En este contexto, consideramos probable que el ataque estuviera orientado a recolectar información sobre individuos ubicados en Yanbian (o provenientes de allí) considerados de interés para el régimen norcoreano, probablemente refugiados o desertores.

Descripción del ataque

Android

Dos de los juegos Android disponibles en el sitio web de sqgame fueron encontrados troyanizados para contener el backdoor BirdCall. La página de descarga disponible en https://www.sqgame[.]net/games/gamedownload.aspx se muestra en la Figura 2, con los botones de descarga de los dos juegos troyanizados resaltados en rojo. El tercer juego Android disponible estaba limpio en el momento de nuestro análisis.

Figure 2. Download page leading to trojanized games
Figura 2. Página de descarga que conduce a los juegos troyanizados

Encontramos evidencia de que las víctimas descargaron los juegos troyanizados a través de un navegador web en sus dispositivos y probablemente los instalaron de forma intencional. No hemos identificado otras ubicaciones desde donde se distribuyeran los APK. Tampoco encontramos los APK maliciosos en la tienda oficial Google Play.

No pudimos determinar cuándo el sitio web fue comprometido por primera vez ni cuándo comenzó el ataque de cadena de suministro. Sin embargo, sobre la base de nuestro análisis del malware desplegado, estimamos que ocurrió a finales de 2024.

La Tabla 1 muestra las URLs de hosting de los dos archivos APK troyanizados, junto con los hashes de los archivos servidos en el momento del descubrimiento. Al momento de la redacción de este artículo, los archivos maliciosos seguían disponibles en el sitio web de sqgame. Notificamos a sqgame sobre el compromiso en diciembre de 2025, pero no hemos recibido respuesta.

Tabla 1. Muestras maliciosas

Time of discovery URL SHA‑1 Description
2025-10 http://sqgame.com[.]cn/ybht.apk 03E3ECE9F48CF4104AAFC535790CA2FB3C6B26CF Trojanized game with the BirdCall backdoor.
2025-10 http://sqgame.com[.]cn/sqybhs.apk FC0C691DB7E2D2BD3B0B4C1E24D18DF72168B7D9 Trojanized game with the BirdCall backdoor.

Windows

Si bien el cliente de escritorio Windows disponible en el sitio de sqgame no contenía código malicioso cuando lo analizamos, posteriormente identificamos una librería mono.dll troyanizada, originada a partir de un paquete de actualización del cliente de escritorio alojado en la URL http://xiazai.sqgame.com[.]cn/dating/20240429.zip. La telemetría de ESET muestra que este paquete de actualización había sido malicioso al menos desde noviembre de 2024, durante un periodo desconocido; sin embargo, al momento de la redacción, este paquete ya no era malicioso.

ScarCruft tomó una biblioteca mono legítima y la parcheó con código y datos adicionales, que contenían un downloader. Este downloader primero verifica los procesos en ejecución en busca de herramientas de análisis y entornos de máquinas virtuales, y no continúa si detecta alguno. De lo contrario, busca el proceso del cliente de sqgame y construye la ruta hacia la biblioteca mono dentro de su carpeta de instalación.

A continuación, descarga y ejecuta shellcode, que al momento del descubrimiento contenía el backdoor RokRAT. Finalmente, el downloader finaliza el proceso del cliente y descarga la versión original limpia de la biblioteca mono, reemplazando la versión troyanizada en la carpeta de instalación del cliente. Tanto el payload como la biblioteca mono limpia son descargados desde sitios web legítimos de Corea del Sur que fueron comprometidos para este propósito, una TTP típica de ScarCruft.

De acuerdo con nuestra telemetría, el backdoor RokRAT fue posteriormente utilizado para descargar e instalar el backdoor BirdCall en los equipos comprometidos.

Análisis de Android BirdCall

En esta sección, ofrecemos un análisis técnico del backdoor Android BirdCall, una adaptación para Android del backdoor homónimo para Windows escrito en C++. Internamente, el backdoor se llama zhuagou, que puede traducirse (del chino) como "atrapar perros".

Juegos Android troyanizados

Android BirdCall se distribuye a través de juegos Android troyanizados. En el ataque descrito en este artículo, creemos que ScarCruft no obtuvo acceso al código fuente del juego, sino únicamente al sitio web o servidor de sqgame, y tomó los APK originales para recompilarlos o reempaquetarlos agregando código malicioso.

En los APK troyanizados, la actividad de entrada definida en AndroidManifest.xml es modificada y apunta al código malicioso agregado, el cual, tras iniciar el backdoor, ejecuta la actividad de entrada original del juego.

En las muestras analizadas, la actividad de entrada modificada era com.example.zhuagou.SplashScreen o com.mob.util.MobSs (en la muestra más reciente). Las modificaciones al AndroidManifest.xml también incluyen nuevas definiciones de actividades y servicios para el backdoor, así como permisos adicionales requeridos para su funcionamiento. En la Figura 3 se muestra una comparación de los paquetes entre el juego legítimo y su versión troyanizada.

Figure 3. Package tree of the legitimate game (left) and its trojanized version (right)
Figura 3. Árbol de paquetes del juego legítimo (izquierda) y su versión troyanizada (derecha)

Dado que el backdoor BirdCall para Android forma parte de una aplicación troyanizada instalada en el sistema, no se inicia automáticamente después de la instalación ni tras reiniciar el dispositivo; en su lugar, depende de la ejecución por parte del usuario.

Configuración

Android BirdCall contiene una configuración predeterminada, que se inicializa en la primera ejecución. La configuración utiliza formato JSON y se persiste en un archivo. En ejecuciones posteriores se carga el archivo de configuración existente, y la configuración puede modificarse mediante comandos del backdoor. Un ejemplo de configuración formateada se muestra en la Figura 4.

{
    "bi": "E823D451D636D0A0",
    "skey": "A8FE823D451D636D0A0366C0629EF5C3##@(()(#@",
    "si": "20251105141404",
    "rft": 20000,
    "fst": true,
    "kill": false,
    "log": true,
    "ctm": 10000,
    "scr": false,
    "rec": false,
    "cmd": 0,
    "data": 1,
    "bd_version": 37,
    "extentions": ".jpg;.doc;.docx;.xls;.xlsx;.ppt;.pptx;.txt;.hwp;.pdf;.m4a;.p12;",
    "cloud": [
        {
            "ct": 9,
            "idx": 28,
            "cid": "1000.2IGB56IS1FHQ1V332R[redacted]",
            "cst": "fa7ec5c8b050[redacted]",
            "rt": "1000.a7fc479e[redacted]",
            "at": "empty",
            "fid": "8mwe5bbc0a2759839401f813968808a2f36a6",
            "dm": "",
            "use": 0
        },
        [redacted]
    ]
}

Figura 4. Ejemplo de configuración de BirdCall para Android

La entrada de configuración bd_version codifica la versión del backdoor, almacenada como MAJOR << 5 | MINOR, por lo que el valor 37 corresponde a la versión 1.5.

Android BirdCall contiene una configuración por defecto, que se inicializa en la primera ejecución. La configuración utiliza el formato JSON y se guarda en un archivo. Las ejecuciones posteriores cargan el archivo de configuración existente, y la configuración puede modificarse mediante comandos backdoor. Un ejemplo de una configuración formateada se muestra en la Figura 4.

 

La entrada de configuración bd_version codifica la versión del backdoor, almacenada como MAJOR << 5 | MINOR, por lo que el valor 37 corresponde a la versión 1.5.

El archivo de configuración persistente se almacena en el directorio de datos de la aplicación y tiene una ruta específica por dispositivo. Además, durante la inicialización de la configuración, la configuración predeterminada de unidades de almacenamiento en la nube hardcodeada en la muestra puede ser sobrescrita por una fuente externa. Si está disponible, el backdoor descarga una imagen JPG que contiene una configuración de nube cifrada incrustada en su overlay. La imagen suele estar alojada en un sitio web surcoreano comprometido.

Comunicación C&C

Android BirdCall utiliza servicios de almacenamiento en la nube para la comunicación C&C, de forma similar a la versión para Windows. En las muestras analizadas, se admiten tres proveedores cloud: pCloud, Yandex Disk y Zoho WorkDrive, aunque únicamente se utiliza Zoho WorkDrive. El backdoor se comunica vía HTTPS, enviando solicitudes a los endpoints de API del proveedor correspondiente utilizando la librería okhttp3.

Durante nuestra investigación, observamos 12 unidades de Zoho WorkDrive utilizadas por el backdoor Android BirdCall con fines de C&C. Los detalles de las cuentas asociadas se muestran en la Tabla 2.

Tabla 2. Cuentas Zoho WorkDrive de Android BirdCall

client_id display_name email
1000.AJUEYDUIQQ5GCLFA68[redacted] tomasalfred37 tomasalfred37@zohomail[.]com
1000.INXKBHQ3698CK42YA2[redacted] kalimaxim279 kalimaxim279@zohomail[.]com
1000.FYRJ46E75TUYBWYV5J[redacted] Smith Bentley smithbentley0617@zohomail[.]com
1000.8QU6D2LJZ3RCGLZWF2[redacted] Mic haelLarrow19 michaellarrow19@zohomail[.]com
1000.NT1QEE7V73IHNZP5YT[redacted] dsf sdf amandakurth94@zohomail[.]com
1000.SKXUYYKYL06FQ2NW82[redacted] dsf sdf rexmedina89@zohomail[.]com
1000.7BMBOS8GV1ZR6AWEI2[redacted] dsf dsf alishaross751@zohomail[.]com
1000.V0J0QN7SJ2N7V6IZVE[redacted] sdf sdf jamesdeeds385@zohomail[.]com
1000.2IGB56IS1FHQ1V332R[redacted] asdf sdaf joyceluke505@zohomail[.]com
1000.W4V2XMB83C6VFC7DGZ[redacted] dfsd sdf marjoriemiller280@zohomail[.]com
1000.LIUBF67S89H0IZEBHE[redacted] Bill Jackson teresadaniels200@zohomail[.]com
1000.8BLOFSFU4WOFY9HB4A[redacted] Zoe Jack michaelgiesen62@zohomail[.]com

Capacidades

Android BirdCall cuenta con un mecanismo de actualización: una versión más reciente puede cargarse desde un archivo de actualización, que se espera esté en formato APK dentro del directorio de datos de la aplicación, y cuya descarga se activa mediante el comando MP_SEND_FILE.

Después del procedimiento de actualización opcional, se inicia la actividad original del juego para no generar sospechas. A continuación, el backdoor verifica y espera la disponibilidad de conexión a Internet antes de continuar con su operación principal.

Recolección de datos

En la primera ejecución, el backdoor recopila un listado completo de directorios del almacenamiento externo compartido principal del dispositivo, así como datos del usuario que incluyen la lista de contactos, el registro de llamadas y los mensajes SMS.

El backdoor se comunica periódicamente con el C&C y carga información básica, que incluye:

  • valores de identificador de configuración y hora actual,
  • temperatura de la batería, RAM e información de almacenamiento, configuración de la nube, versión del backdoor y extensiones de archivos de interés,
  • información de geolocalización IP de https://ipinfo[.]io/json, y
  • en la primera ejecución, se incluye información adicional sobre el dispositivo, la red y la aplicación

    marca, modelo, SO, kernel y estado del root,

    número IMEI, dirección IP, dirección MAC y tipo de red, y

    paquete de aplicaciones y permisos.

El backdoor puede tomar capturas de pantalla de forma periódica (flag scr). En algunas versiones, observamos el uso de una técnica que reproduce un archivo MP3 silencioso en bucle mientras se toman capturas, con el objetivo de evitar que la aplicación troyanizada sea suspendida durante su ejecución en segundo plano.

En algunas versiones, el backdoor puede grabar audio a través del micrófono y espiar el entorno del dispositivo comprometido. Curiosamente, incluso cuando la grabación está habilitada (flag rec), está limitada a un período de tres horas por la noche, de 19:00 a 22:00 hora local.

El backdoor busca periódicamente en el almacenamiento externo compartido archivos con extensiones de interés (extentions) y los prepara para su exfiltración. En las muestras analizadas, la exfiltración estaba orientada a archivos multimedia, documentos y claves privadas: .jpg.doc.docx.xls.xlsx.ppt.pptx.txt.hwp.pdf.m4a y .p12.

Comandos

Android BirdCall verifica periódicamente la unidad de almacenamiento en la nube en busca de comandos emitidos para la víctima. Los comandos descifrados comienzan con el valor mágico DWORD 0x2A7B4C33, y este valor coincide con el de la versión Windows de BirdCall. Los comandos tienen cero o más parámetros, dependiendo de su tipo. La Tabla 3 muestra una descripción general de los comandos soportados junto con sus descripciones para ambas plataformas.

La versión Android del backdoor implementa solo un subconjunto de los comandos disponibles en la versión Windows.

Tabla 3. Comandos del backdoor BirdCall

Type Name Android description Windows description
0x48 MP_SET_FILESEARCH_EXTENTION Sets file extensions of interest in the configuration.
0x49 MP_SET_THREADS Toggles screenshot taking and voice recording. Includes additional capabilities such as clipboard stealing and keylogging.
0x4A MP_SET_CLOUD Sets cloud API credentials in the configuration.
0x4B MP_SET_REGISTER_FILE_CONTROL N/A Modifies filter used during file search.
0x4C MP_SET_MODE Toggles collection of the backdoor execution logs. Toggles various collection-related flags.
0x4D MP_ACTION_KILLME Disables the backdoor. The original game continues working. Uninstalls the backdoor and exits.
0x4E MP_ACTION_KILLPROCESS N/A Uses the taskkill utility to kill a process.
0x4F MP_ACTION_FILE_OR_DIRECTORY Supports upload of a specified file or directory. Supports multiple file and directory operations: delete, rename, open, and upload.
0x50 MP_ACTION_DOWNLOAD_COMMAND N/A Downloads and executes commands from a URL or cloud drive.
0x51 MP_ACTION_RESET_WORKDIRECTORIES N/A Can delete working directories used by the backdoor.
0x52 MP_ACTION_EXECUTE_SIMPLE_COMMAND N/A Can restart the backdoor and execute a command via cmd.exe.
0x53 MP_ACTIONS_MORE N/A Can perform three operations:
· Delete persisted configuration.
· Enable macros in Word (Microsoft and Hancom Office).
· Restart the backdoor.
0x54 MP_ACTION_SHELL N/A Starts shell (based on WCMD).
0x55 MP_ACTION_WEBSCAN N/A Performs HTTP scan of specified hosts/ports.
0x56 MP_GET_DATA Can obtain:
· contacts, call logs, and SMS messages,
· full directory listing of the primary shared external storage, and
· basic information.
Can obtain:
· backdoor configuration and various system information,
· credentials from browsers and other software,
· files from IM apps – KakaoTalk, WeChat, and Signal,
· camera photos, and
· directory listing.
0x57 MP_GET_TREES Retrieves directory listing.
0x59 MP_SEND_FILE Supports backdoor updating. Supports dropping of a file to a specified location, dropping and execution of additional executables, and updating of the backdoor.
0x5A MP_SEND_SHELL N/A Executes shell commands.
0x5C MP_SET_PROXY N/A Connects to a specified <ip>:<port> and forwards traffic from/to the C&C server, acting as a proxy.

Un volcado que contiene la versión Windows de BirdCall, muy similar a la observada en este ataque y que incluye todos los comandos mencionados anteriormente, puede encontrarse en VirusTotal con el SHA‑1 B06110E0FEB7592872E380B7E3B8F77D80DD1108. La muestra fue subida desde China el 15 de julio de 2024.

Conclusión

Hemos descubierto un ataque de cadena de suministro multiplataforma dirigido a la región de Yanbian a través de una plataforma de videojuegos comprometida. Al analizar los juegos Android troyanizados en la plataforma, identificamos una nueva herramienta en el arsenal de ScarCruft: una versión Android del backdoor BirdCall del grupo. El backdoor para Android ha mostrado desarrollo activo y proporciona capacidades de vigilancia, como la recolección de datos personales y documentos, la toma de capturas de pantalla y la grabación de audio.

Para cualquier consulta sobre nuestras investigaciones publicadas en WeLiveSecurity, póngase en contacto con nosotros 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 (IoC) y muestras en nuestro repositorio de GitHub.

Archivos

SHA-1 Filename Detection Description
01A33066FBC6253304C92760916329ABD50C3191 sqybhs.apk Android/Spy.Agent.EXM Trojanized game with Android BirdCall version 2.0.
03E3ECE9F48CF4104AAFC535790CA2FB3C6B26CF ybht.apk Android/Spy.Agent.EGE Trojanized game with Android BirdCall version 1.3.
2B81F78EC4C3F8D6CF8F677D141C5D13C35333AF sqybhs.apk Android/Spy.Agent.EGE Trojanized game with Android BirdCall version 1.5.
59A9B9D47AE36411B277544F25AD2CC955D8DD2C ybht.apk Android/Spy.Agent.EGE Trojanized game with Android BirdCall version 1.0.
7356D7868C81499FB4E720F7C9530E5763B4C1D0 sqybhs.apk Android/Spy.Agent.EGE Trojanized game with Android BirdCall version 1.0.
FC0C691DB7E2D2BD3B0B4C1E24D18DF72168B7D9 sqybhs.apk Android/Spy.Agent.EGE Trojanized game with Android BirdCall version 1.5.
95BDB94F6767A3CCE6D92363BBF5BC84B786BDB0 mono.dll Win32/TrojanDownloader.Agent.ILQ Trojanized mono library.
409C5ACAED587F62F7E23DA47F72C4D9EC3144D9 N/A Win32/TrojanDownloader.Agent.ILQ Downloader leading to the RokRAT backdoor.
B06110E0FEB7592872E380B7E3B8F77D80DD1108 N/A Win64/Agent.EGN Publicly available dump of Windows BirdCall backdoor.

Red

IP Domain Hosting provider First seen Details
39.106.249[.]68 sqgame.com[.]cn Hangzhou Alibaba Advertising Co.,Ltd. 2024‑06‑01 Compromised sqgame site hosting trojanized games and malicious updates.
211.239.117[.]117 1980food.co[.]kr Hostway IDC 2025‑03‑07 Compromised South Korean site used to host Android BirdCall configuration.
114.108.128[.]157 inodea[.]com LG DACOM Corporation 2025‑07‑03 Compromised South Korean site used to host Android BirdCall configuration.
221.143.43[.]214 www.lawwell.co[.]kr SK Broadband Co Ltd 2024‑11‑04 Compromised South Korean site used to host shellcode and clean mono library.
222.231.2[.]20 colorncopy.co[.]kr
swr.co[.]kr
LG DACOM Corporation 2025‑03‑18 Compromised South Korean site used to host shellcode.
222.231.2[.]23 sejonghaeun[.]com IP Manager 2025‑03‑18 Compromised South Korean site used to host clean mono library.
222.231.2[.]41 cndsoft.co[.]kr IP Manager 2025‑03‑18 Compromised South Korean site used to host shellcode.

Técnicas ATT&CK de MITRE

Esta tabla se ha elaborado utilizando la versión 18 del marco MITRE ATT&CK Enterprise.

Tactic ID Name Description
Resource Development T1584.004 Compromise Infrastructure: Server ScarCruft compromised South Korean websites to host payloads and configurations.
ScarCruft compromised the sqgame website to perform a supply-chain attack.
T1585.003 Establish Accounts: Cloud Accounts ScarCruft created Zoho WorkDrive accounts and used their cloud storage drives for C&C purposes.
T1587.001 Develop Capabilities: Malware ScarCruft developed the Android version of the BirdCall backdoor.
T1608.001 Stage Capabilities: Upload Malware ScarCruft uploaded trojanized games to the compromised sqgame website.
Initial Access T1195.002 Supply Chain Compromise: Compromise Software Supply Chain ScarCruft compromised an sqgame update server to distribute malicious updates.
Execution T1059.003 Command and Scripting Interpreter: Windows Command Shell BirdCall can execute shell commands.
Defense Evasion T1027.013 Obfuscated Files or Information: Encrypted/Encoded File BirdCall has encrypted strings and loading chain components.
The trojanized mono library contains encrypted shellcode.
T1070.004 Indicator Removal: File Deletion The trojanized mono library is replaced with a clean one.
T1112 Modify Registry BirdCall can modify settings of word processors to enable macros.
T1140 Deobfuscate/Decode Files or Information BirdCall decrypts strings and loading chain components.
T1480.001 Execution Guardrails: Environmental Keying BirdCall’s loading chain has components encrypted with a computer-specific key.
T1497 Virtualization/Sandbox Evasion The downloader in the trojanized mono library checks for analysis tools and virtual machine environments.
Credential Access T1555 Credentials from Password Stores BirdCall can obtain saved passwords from browsers and other software.
Discovery T1046 Network Service Discovery BirdCall can scan a range of IPs and ports with an HTTP GET request.
T1082 System Information Discovery BirdCall can obtain various system information.
T1083 File and Directory Discovery BirdCall can obtain information about drives and directories.
Collection T1005 Data from Local System BirdCall can collect user files from IM clients KakaoTalk, WeChat, and Signal.
T1056.001 Input Capture: Keylogging BirdCall can log keystrokes.
T1113 Screen Capture BirdCall can capture screenshots.
T1115 Clipboard Data BirdCall can collect clipboard contents.
T1119 Automated Collection BirdCall can periodically collect files with certain extensions from local and removable drives.
T1125 Video Capture BirdCall can capture a webcam photo.
T1560 Archive Collected Data BirdCall compresses and encrypts collected data before exfiltration.
Command and Control T1071.001 Application Layer Protocol: Web Protocols BirdCall uses HTTP to communicate with cloud storage services.
T1090 Proxy BirdCall can act as a proxy.
T1102.002 Web Service: Bidirectional Communication BirdCall communicates with cloud storage services to download commands and exfiltrate data.
Exfiltration T1020 Automated Exfiltration BirdCall periodically exfiltrates collected data.
T1041 Exfiltration Over C2 Channel BirdCall exfiltrates data to its C&C server.
T1567.002 Exfiltration Over Web Service: Exfiltration to Cloud Storage BirdCall exfiltrates data to cloud storage services.

Esta tabla se ha creado utilizando la versión 18 del marco MITRE ATT&CK Mobile.

Tactic ID Name Description
Initial Access T1474.003 Supply Chain Compromise: Compromise Software Supply Chain ScarCruft performed a supply-chain attack, compromising the sqgame website, to distribute trojanized games containing the Android BirdCall backdoor.
Defense Evasion T1406 Obfuscated Files or Information Version 2.0 of the Android BirdCall backdoor is obfuscated.
T1407 Download New Code at Runtime The Android BirdCall backdoor can download and load newer versions of itself.
T1541 Foreground Persistence Android BirdCall uses the startForeground API to take screenshots while in the background.
Discovery T1420 File and Directory Discovery Android BirdCall creates a directory listing and searches for files with specified extensions.
T1422 Local Network Configuration Discovery Android BirdCall obtains the device’s IMEI, IP address, and MAC address.
T1426 System Information Discovery Android BirdCall obtains system information of the compromised device including brand, model, OS version, kernel version, rooted status, battery temperature, RAM, and storage information.
Collection T1532 Archive Collected Data Android BirdCall compresses and encrypts collected data.
T1429 Audio Capture Android BirdCall can record voice using the microphone.
T1430 Location Tracking Android BirdCall obtains approximate device location using the ipinfo[.]io service.
T1513 Screen Capture Android BirdCall can take screenshots.
T1533 Data from Local System Android BirdCall collects local files with the following extensions: .jpg, .doc, .docx, .xls, .xlsx, .ppt, .pptx, .txt, .hwp, .pdf, .m4a, and .p12.
T1636.002 Protected User Data: Call Log Android BirdCall collects the call log.
T1636.003 Protected User Data: Contact List Android BirdCall collects the contact list.
T1636.004 Protected User Data: SMS Messages Android BirdCall collects SMS messages.
Command and Control T1437.001 Application Layer Protocol: Web Protocols Android BirdCall communicates with the C&C cloud storage drive using HTTPS.
T1481.002 Web Service: Bidirectional Communication Android BirdCall uses a Zoho WorkDrive service cloud storage drive for C&C purposes.
Exfiltration T1646 Exfiltration Over C2 Channel Android BirdCall uses the C&C channel for data exfiltration.