Indicadores de Compromiso Móvil: Detección sin Root ni Jailbreak
Guía práctica para detectar malware en dispositivos móviles sin necesidad de root o jailbreak. Indicadores observables de batería, datos y rendimiento, anomalías de red, abuso de permisos, comandos ADB para investigación Android e indicadores en iOS.
Detectar sin privilegios
La mayoría de guías de análisis forense móvil asumen acceso root (Android) o jailbreak (iOS). En la realidad, un analista SOC que recibe un dispositivo sospechoso raramente tiene esos privilegios. El dispositivo es de un empleado, puede tener datos sensibles y rootearlo alteraría la evidencia.
Este artículo se centra en lo que puedes observar, diagnosticar y decidir con las herramientas disponibles para un dispositivo no rooteado: indicadores observables por el usuario, comandos ADB para Android, verificaciones en iOS y criterios para decidir entre factory reset e investigación forense completa.
Indicadores observables sin herramientas
Estos son los síntomas que cualquier usuario puede detectar y que un analista SOC debe preguntar durante el triage de un incidente móvil.
Consumo anómalo de batería
El malware que opera en background consume batería. Banking trojans que mantienen overlays, spyware que graba micrófono o cámara, toll fraud que ejecuta WebViews invisibles y cualquier malware que comunica con un C2 periódicamente drenan batería.
Qué buscar:
- Descarga rápida sin uso: el dispositivo pierde más del 30% de batería en una hora estando en reposo y sin uso activo.
- Apps desconocidas en el ranking de batería: Configuración > Batería > Uso de batería por app. Si una app que el usuario no reconoce aparece consumiendo un porcentaje significativo, es sospechosa.
- Dispositivo caliente en reposo: el procesador trabaja cuando no debería.
Falsos positivos: actualizaciones del sistema descargándose en background, sincronización de cuentas cloud, apps legítimas mal optimizadas (especialmente redes sociales con reproducción automática de vídeo).
Consumo anómalo de datos
Malware que exfiltra datos, envía grabaciones de audio/vídeo al C2 o descarga payloads adicionales genera tráfico de red detectable.
Qué buscar:
- Picos de datos móviles: Configuración > Uso de datos > Datos móviles. Buscar apps con consumo desproporcionado a su funcionalidad (una app de linterna consumiendo 500 MB es anómalo).
- Consumo en background: la mayoría de sistemas operativos móviles muestran el uso de datos en primer plano vs background. Un ratio de background alto para una app que el usuario no abre frecuentemente es sospechoso.
- Datos móviles activos cuando debería usar WiFi: toll fraud como Joker desactiva WiFi para forzar datos móviles. Si el usuario nota que el WiFi se desactiva solo, es un indicador fuerte.
Degradación de rendimiento
El malware compite por CPU, memoria y almacenamiento con las apps legítimas del usuario.
Qué buscar:
- Lentitud generalizada: las apps tardan en abrir, la interfaz se congela, las transiciones son lentas.
- Apps que se cierran solas: falta de memoria porque el malware consume RAM.
- Reinicio espontáneo: indicador de inestabilidad causada por malware que interactúa mal con el sistema.
Estos indicadores son los menos fiables individualmente. Un dispositivo con 3 o 4 años, poco almacenamiento libre y muchas apps instaladas puede mostrar estos síntomas sin malware. La clave es la aparición repentina de estos problemas en un dispositivo que funcionaba bien.
Indicadores de red
Los indicadores de red son más fiables que los observables por el usuario porque el malware necesita comunicar con infraestructura externa.
DNS anómalo
Consultas DNS a dominios sospechosos son uno de los indicadores más fiables de compromiso. El malware necesita resolver dominios para conectarse a su C2.
Qué buscar:
- Dominios con alta entropía: los DGA (Domain Generation Algorithms) producen dominios como
xkjh3nnm9.xyzoa8k2nxp.top. Herramientas como Pi-hole o NextDNS en la red doméstica/corporativa registran estas consultas. - Consultas a dominios recién registrados: dominios con menos de 30 días de antigüedad son frecuentemente usados por malware.
- DNS-over-HTTPS no configurado por el usuario: algunas familias de malware configuran DoH para evitar el monitoreo DNS de la red local.
Conexiones inusuales
- Tráfico a IPs en rangos geográficos inesperados: si la organización no tiene operaciones en ciertos países, tráfico hacia esos rangos es sospechoso.
- Conexiones persistentes a puertos no estándar: C2 en puertos como 4444, 8080, 8443, 9090.
- Tráfico a servicios de anonimización: conexiones a nodos de entrada Tor, proxies conocidos o VPNs gratuitas.
Cómo capturar tráfico de red sin root
Android (sin root):
- Apps como PCAPdroid capturan tráfico creando una VPN local (no envía datos fuera). Registra todas las conexiones con IP destino, puerto, protocolo y app responsable.
- NetGuard (firewall sin root) puede bloquear y registrar conexiones por app.
En la red:
- Configurar el dispositivo para usar un proxy corporativo.
- Pi-hole o NextDNS como servidor DNS para registrar consultas.
- Wireshark en la red WiFi captura tráfico no cifrado y metadatos de tráfico cifrado (destinos, frecuencia, volumen).
Detección de abuso de permisos
Los permisos son el mecanismo de control de acceso de Android. El malware necesita permisos para ejecutar sus funcionalidades maliciosas.
Permisos de riesgo alto
| Permiso | Uso legítimo | Abuso por malware |
|---|---|---|
| SEND_SMS / READ_SMS | Apps de mensajería | SMS trojans, interceptación de OTP |
| ACCESSIBILITY_SERVICE | Lectores de pantalla | Overlay attacks, auto-clicks, exfiltración |
| DEVICE_ADMIN | MDM corporativo | Ransomware (lockNow, resetPassword) |
| NOTIFICATION_LISTENER | Gestores de notificaciones | Interceptación de OTP sin permiso SMS |
| CAMERA / RECORD_AUDIO | Apps de cámara/voz | Spyware (grabación encubierta) |
| READ_CALL_LOG / READ_CONTACTS | Dialer, contactos | Exfiltración de datos personales |
| REQUEST_INSTALL_PACKAGES | Tiendas de apps | Droppers (instalación de malware adicional) |
| SYSTEM_ALERT_WINDOW | Chat bubbles, PiP | Overlays de phishing y ransomware |
Cómo auditar permisos
Android: Configuración > Aplicaciones > Permisos (o Gestor de permisos). Revisar especialmente:
- Qué apps tienen acceso a SMS.
- Qué apps tienen Accessibility Service activo.
- Qué apps son Device Admin.
- Qué apps tienen acceso a notificaciones.
Señales de alarma: una app de linterna con permiso de SMS, una app de fondos de pantalla con Accessibility Service, una app de juegos con Device Admin activo.
Anomalías de comportamiento de apps
Más allá de los permisos declarados, el comportamiento en tiempo de ejecución revela compromiso.
Apps que aparecen y desaparecen
Algunas familias de malware ocultan su icono del launcher después de la primera ejecución. La app sigue instalada y activa en background, pero el usuario no la ve en su pantalla de inicio. Verificar en Configuración > Aplicaciones > Mostrar todas las apps, buscando apps sin icono o con nombres genéricos (System Service, Android Update, Phone Manager).
Actividad en background excesiva
Android muestra las apps que han tenido actividad en background recientemente. Configuración > Batería > Uso de batería en background. Una app que no se ha abierto en días pero muestra actividad reciente en background es sospechosa.
Suscripciones no autorizadas
Para toll fraud: revisar la factura telefónica buscando cargos por servicios premium. También: Configuración > Google > Suscripciones (para suscripciones hechas a través de Play Store).
Investigación con ADB (Android)
ADB (Android Debug Bridge) es la herramienta más potente disponible sin root para investigar un dispositivo Android. Requiere un PC con adb instalado y que el dispositivo tenga "Depuración USB" activada (Configuración > Opciones de desarrollador).
Listar apps instaladas
# Todas las apps instaladas
adb shell pm list packages
# Solo apps de terceros (no del sistema)
adb shell pm list packages -3
# Apps instaladas recientemente (ordenar por fecha)
adb shell pm list packages -3 | while read pkg; do
pkg_name=$(echo $pkg | cut -d: -f2)
echo "$(adb shell dumpsys package $pkg_name | grep firstInstallTime)" "$pkg_name"
done | sort
# Buscar una app específica
adb shell pm list packages | grep -i "sospechoso"
Verificar permisos de una app
# Permisos concedidos a una app específica
adb shell dumpsys package com.paquete.sospechoso | grep "granted=true"
# Apps con permiso de SMS
adb shell pm list packages -p | xargs -I{} adb shell dumpsys package {} | grep -B20 "SEND_SMS.*granted=true"
# Apps con Device Admin activo
adb shell dumpsys device_policy
Analizar conexiones de red
# Conexiones TCP activas
adb shell cat /proc/net/tcp
adb shell cat /proc/net/tcp6
# Conexiones con netstat (si disponible)
adb shell netstat -tuln
# DNS cache
adb shell dumpsys connectivity | grep -i dns
Revisar logs del sistema
# Logs recientes (últimos 30 minutos)
adb logcat -d -t "30:00" | grep -i "malware\|suspicious\|blocked\|deny"
# Actividad de instalación de paquetes
adb logcat -d | grep "PackageManager\|INSTALL"
# Actividad de red
adb logcat -d | grep "NetworkMonitor\|ConnectivityService"
# Eventos de seguridad
adb logcat -d -b security
Exportar APK sospechoso para análisis
# Encontrar la ruta del APK
adb shell pm path com.paquete.sospechoso
# Extraer el APK al PC
adb pull /data/app/com.paquete.sospechoso-1/base.apk ./sospechoso.apk
# Subir a VirusTotal o analizar con jadx/apktool
Verificar integridad del sistema
# Verificar si el dispositivo está rooteado (indicador de compromiso en dispositivos corporativos)
adb shell which su
adb shell ls /system/app/Superuser.apk
adb shell getprop ro.build.tags # "test-keys" puede indicar ROM modificada
# Verificar Verified Boot
adb shell getprop ro.boot.verifiedbootstate # "green" = intacto
Indicadores en iOS
iOS es significativamente más cerrado que Android. Sin jailbreak, las opciones de inspección directa son limitadas, pero existen indicadores verificables.
Verificaciones sin jailbreak
Perfiles de configuración: Configuración > General > VPN y gestión de dispositivos. Si aparecen perfiles que el usuario no instaló voluntariamente o que no corresponden al MDM corporativo, pueden ser perfiles maliciosos que otorgan control sobre el dispositivo.
Certificados: Configuración > General > Información > Ajustes de confianza de certificados. Certificados de confianza que el usuario no reconoce pueden ser usados para interceptar tráfico HTTPS (man-in-the-middle).
Uso de datos por app: Configuración > Datos móviles. Revisar apps con consumo alto en background.
Siri Shortcuts sospechosos: verificar que no existan automatizaciones de Atajos que el usuario no creó.
iCloud privacidad: en Configuración > Apple ID > iCloud, verificar qué apps sincronizan datos y que no hay dispositivos desconocidos asociados a la cuenta.
Indicadores de spyware avanzado (Pegasus, Predator)
Para spyware de nivel estatal, las verificaciones básicas son insuficientes. Herramientas especializadas:
- iVerify: app disponible en App Store que ejecuta verificaciones de seguridad del dispositivo. Detecta algunos indicadores de compromiso por spyware avanzado.
- MVT (Mobile Verification Toolkit): herramienta de Amnesty International para análisis forense. Requiere un backup de iTunes del dispositivo y se ejecuta en un PC. Busca indicadores conocidos de Pegasus y Predator.
- Comportamiento del dispositivo: calentamiento sin uso, batería que se drena rápidamente, ruido en llamadas telefónicas (indicador de grabación activa).
Herramientas gratuitas de detección
| Herramienta | Plataforma | Capacidad | Limitaciones |
|---|---|---|---|
| PCAPdroid | Android | Captura de tráfico sin root vía VPN local | Requiere análisis manual del tráfico |
| NetGuard | Android | Firewall sin root, registro de conexiones | No analiza contenido del tráfico |
| Malwarebytes Mobile | Android/iOS | Escaneo de malware conocido, PUPs | Detección limitada de amenazas avanzadas |
| Lookout Personal | Android/iOS | Escaneo básico, Safe WiFi, breach alerts | Versión gratuita limitada |
| MVT | iOS (desde PC) | Forense de spyware avanzado (Pegasus) | Requiere conocimiento técnico, backup |
| iVerify | iOS | Verificaciones de seguridad del dispositivo | Detección limitada a indicadores conocidos |
| VirusTotal Mobile | Android | Escaneo de apps contra 70+ motores | No detecta amenazas de red ni comportamiento |
| AppCheck (Google) | Android | Análisis de permisos y privacidad | Solo permisos, no comportamiento en runtime |
Factory reset vs investigación forense
La decisión entre resetear el dispositivo inmediatamente o preservarlo para análisis forense depende del contexto.
Cuándo hacer factory reset
- El dispositivo necesita estar operativo lo antes posible y no hay dispositivo de reemplazo.
- El compromiso es un screen locker o toll fraud (bajo impacto, no hay exfiltración de datos corporativos).
- La organización no tiene capacidad de análisis forense móvil.
- No hay requisitos legales de preservación de evidencia.
Cuándo hacer investigación forense
- Sospecha de spyware o APT dirigido (el vector de entrada debe identificarse para prevenir reinfección).
- Datos corporativos sensibles pudieron ser exfiltrados (necesitas saber qué datos se comprometieron).
- Requisitos legales o regulatorios de preservación de evidencia.
- El incidente forma parte de un ataque más amplio a la organización (correlación con otros endpoints).
- Necesitas identificar la familia de malware para generar IOCs y proteger a otros empleados.
Protocolo de preservación
Si decides investigar:
- No apagar el dispositivo si está encendido (la RAM contiene evidencia volátil).
- Activar modo avión para cortar comunicación con C2 sin apagar.
- No instalar nada en el dispositivo (altera la evidencia).
- Documentar: capturas de pantalla del estado actual, apps instaladas, permisos.
- Backup: crear un backup completo antes de cualquier manipulación (adb backup en Android, iTunes backup en iOS).
- Imagen forense: si la organización tiene herramientas (Cellebrite, MSAB XRY, Oxygen Forensic), crear una imagen forense completa.
Recursos
- MVT (Mobile Verification Toolkit) (Amnesty International, herramienta de análisis forense)
- NIST SP 800-101r1: Guidelines on Mobile Device Forensics (guía NIST de forense móvil)
- Android Developer: ADB Documentation (referencia oficial ADB)
- PCAPdroid (captura de tráfico sin root)
- iVerify (verificación de seguridad iOS)
- MITRE ATT&CK Mobile (técnicas de ataque móvil)
- OWASP Mobile Security Testing Guide (guía de testing de seguridad móvil)
Preguntas frecuentes
Libros recomendados
Artículos relacionados
Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.