Introducción: El "Canto de Sirena" del Contenido Premium
Todo comenzó con una sospecha sobre una aplicación llamada XuperTV (también conocida en el ecosistema como Brasil TV o MagisTV). El sitio oficial la promociona como una plataforma "fiable, segura y de confianza". Sin embargo, el pedir explícitamente ignorar las alertas de tu antivirus para instalarse, algo huele muy mal.
Lo que descubrimos no fue solo un reproductor de IPTV mal optimizado, sino una infraestructura de exfiltración de datos y control remoto digna de un RAT (Remote Access Trojan). En este artículo, detallo el proceso colaborativo entre la intuición humana y la capacidad de análisis de la IA para desarmar este sistema.
Fase 1: El Reconocimiento (Análisis Estático del Manifiesto)
El primer paso de cualquier auditoría es el AndroidManifest.xml. Usando JADX-GUI, extrajimos la "lista de deseos" de la aplicación. Para ser un simple reproductor de video, los permisos solicitados eran una declaración de guerra a la privacidad:
-
Vigilancia Activa:
CAMERAyRECORD_AUDIO. No existe ninguna función de videollamada que justifique el acceso al hardware de audio y video. -
Perfilamiento de Usuario:
GET_TASKS. Este permiso permite a la app saber qué otras aplicaciones tienes abiertas (bancos, redes sociales, apps de mensajería) en tiempo real. -
Persistencia:
REQUEST_INSTALL_PACKAGESyMANAGE_EXTERNAL_STORAGE. Capacidad de instalar software adicional de forma externa y acceso total a los archivos del sistema. -
Secuestro del Sistema:
LelinkAccessibilityService. Este es el vector más crítico; al abusar de los Servicios de Accesibilidad, la app obtiene el poder de leer el contenido de tu pantalla e inyectar gestos en nombre del usuario.
Fase 2: La "Caja Negra" Nativa (.so)
La aplicación delega la lógica pesada a librerías compiladas en C++ situadas en lib/arm64-v8a/. Usando Ghidra, entramos en el territorio de los binarios nativos para entender qué hacían estos componentes:
-
libumeng-spy.so: Un módulo de telemetría agresiva de UMeng. Su trabajo es recolectar identificadores únicos de hardware (IMEI, MAC, Bluetooth ID) para crear una huella digital imborrable de tu dispositivo. -
libtnet-3.1.14.so: El motor de red de Alibaba/Taobao. Su función es mantener túneles persistentes (conexiones que no se cierran) con servidores externos para recibir comandos en tiempo real. -
libed25519.so: Teóricamente para criptografía de alto nivel, pero en la práctica, solo una fachada de ofuscación.
El Fraude de la Criptografía (XOR 120)
Analizando la clase puente com.hpplay.component.protocol.ProtocolUtils en JADX, descubrimos cómo la app intenta ocultar el tráfico. Antes de enviar datos a las librerías nativas, aplica una operación XOR bit a bit con el valor decimal 120 (0x78 en hexadecimal).
Insight Técnico: Usar XOR con una constante es el equivalente criptográfico a cerrar una puerta con un palillo de dientes. Es una técnica de ofuscación de bajo nivel diseñada para engañar a analistas novatos, pero que una IA identifica y revierte en milisegundos.
Fase 3: Captura Silenciosa de Hardware
A través de JADX, localizamos una implementación crítica: la interfaz Camera.PreviewCallback. La aplicación no solo tiene permiso de cámara, sino que tiene el código listo para interceptar el flujo de bytes mediante el método onPreviewFrame(byte[] bArr, Camera camera).
Esto permite que la app capture fotos o video cuadro por cuadro sin que el usuario vea nunca el visor de la cámara activo. Es espionaje biométrico puro, empaquetado mediante la función sendCameraRGBData hacia servidores en la nube.
Fase 4: El Secuestro de la Interfaz (SinkTouch RAT)
Este fue el hallazgo más alarmante. Dentro del SDK de HappyCast (Hpplay) integrado en la app, desenterramos la clase SinkTouchEventMonitor. Este componente funciona como un sistema de control remoto total:
- Recepción: Abre canales TCP/UDP para recibir coordenadas X/Y de un operador remoto.
-
Inyección: Utiliza la función
dispatchGesturedel servicio de accesibilidad de Android para simular toques físicos. -
Operación Invisible: El código está diseñado para inyectar estos eventos incluso si la app está en segundo plano (
!isForeground), permitiendo que un tercero interactúe con tus otras aplicaciones mientras tú crees que la app de TV está inactiva.
Fase 5: Tácticas de Evasión (El Delay de 1 Segundo)
Para burlar los sistemas de análisis dinámico (Sandboxes) que buscan picos de actividad sospechosa, detectamos en la clase LelinkMirrorBridge un hilo anónimo (AnonymousClass9) que lanza el monitor de control remoto con un retraso deliberado de 1000ms. Este intervalo asegura que la activación del RAT no coincida exactamente con el evento de "clic" del usuario al abrir un video, dificultando la correlación automática de comportamiento malicioso.
Fase 6: Infraestructura de Comando y Control (C2)
Rastreamos la clase maestra de configuración y (com.hpplay.sdk.source.y). Encontramos una lista masiva de endpoints en China diseñados para resistir bloqueos:
-
Streaming de datos:
sl.lebo.cn. -
Proxy Reverso:
rp.lebo.cn(usado para saltar firewalls domésticos). -
IPs Hardcodeadas: Direcciones como
120.78.185.110y47.106.75.170están escritas directamente en el binario para asegurar la conexión aunque el usuario bloquee los dominios por DNS (como con un Pi-hole).
Colaboración Humano + IA: El Futuro del Reversing
Este análisis demuestra por qué la IA es el copiloto definitivo en ciberseguridad:
- Velocidad: La IA pudo procesar miles de líneas de código ofuscado para encontrar la aguja en el pajar: el XOR 120.
- Contexto: Mientras yo navegaba por el sistema de archivos en mi entorno Linux, la IA explicaba la interacción de las clases con las APIs de bajo nivel de Android.
- Estrategia: La IA ayudó a mapear la red de servidores, categorizando la función de cada IP encontrada en los binarios.
Veredicto Final y Recomendaciones
XuperTV no es una aplicación; es una herramienta de vigilancia industrial disfrazada de entretenimiento. Posee la infraestructura técnica para espiarte, controlarte e informar sobre cada una de tus acciones.
Consejos de Seguridad:
- Regla de Oro: Nunca concedas el permiso de Accesibilidad a aplicaciones en las que no confíes plenamente. Es entregar las llaves de tu vida digital.
-
Firewall: Si decides usar este tipo de apps, utiliza un firewall local como NetGuard para bloquear cualquier conexión hacia dominios
.cno IPs chinas. - Conciencia: Si el servicio es "Premium Gratis", el producto real eres tú y tus datos.
Se acepta cualquier sugerencia o feedback en esta pequeña investigación realizada.
Top comments (0)