Pentesting de aplicaciones móviles: iOS y Android
Tu app móvil almacena credenciales, accede a APIs sensibles y maneja datos de clientes. ¿Sabes qué pasa cuando alguien la desmonta? Auditamos la app, la API que consume y el canal de comunicación entre ambas.
Las apps móviles tienen vulnerabilidades invisibles al usuario
A diferencia de una web, el usuario de una app instala el código en su dispositivo. Esto permite a un atacante decompilarla, analizar su tráfico, extraer claves API hardcodeadas, identificar la lógica de negocio y atacar la API backend con el conocimiento de cómo funciona internamente. El OWASP Mobile Top 10 recoge los fallos más explotados, pero la casuística real va mucho más allá.
Qué evaluamos
- Almacenamiento inseguro de datos sensibles (keychain, shared preferences, bases de datos locales)
- Credenciales y claves API embebidas en el código
- Comunicaciones inseguras: pinning de certificados, TLS, interceptación de tráfico
- Autenticación débil: tokens, biometría, sesiones que no expiran
- Vulnerabilidades de la API backend que consume la app
- Análisis estático del código (reverse engineering): decompilación APK/IPA
- Controles de integridad: detección de root/jailbreak, anti-tampering
Proceso de auditoría
- Configuración del entorno: Montamos el entorno de análisis: emuladores/dispositivos, proxy de interceptación, herramientas de decompilación.
- Análisis estático: Decomponemos el binario (APK o IPA), analizamos el código fuente generado, buscamos credenciales, claves y lógica sensible.
- Análisis dinámico: Ejecutamos la app en condiciones controladas, interceptamos el tráfico y probamos el comportamiento en tiempo real.
- Auditoría de la API backend: Revisamos todos los endpoints que consume la app con los mismos criterios que un pentesting de API estándar.
- Informe y entrega: Documentamos cada hallazgo con evidencias, impacto y solución recomendada.
Entregables
- Informe de análisis estático: hallazgos en el código, credenciales expuestas, permisos excesivos
- Informe de análisis dinámico: tráfico interceptado, vulnerabilidades en tiempo de ejecución
- Informe de la API backend: vulnerabilidades de autenticación, autorización y lógica de negocio
- Informe ejecutivo consolidado con riesgo global de la aplicación
- Reunión de cierre con el equipo de desarrollo mobile y backend
¿Cuándo es necesario?
- Antes del lanzamiento de una app en App Store o Google Play
- Apps de banca, salud, seguros o cualquier sector con datos sensibles
- Apps con integraciones de pago (Stripe, PayPal, pasarelas propias)
- Cuando un distribuidor, franquiciador o cliente enterprise lo exige
- Tras una actualización mayor de la app o de la API backend
Preguntas frecuentes
¿Necesitáis el código fuente de la app?
No es imprescindible. Podemos trabajar solo con el binario (APK o IPA) para el análisis estático. El código fuente, si está disponible, permite una revisión más profunda y eficiente.
¿Auditáis apps tanto de iOS como de Android?
Sí. Trabajamos con ambas plataformas. iOS requiere dispositivos con jailbreak o el uso del simulador para ciertos análisis dinámicos. Android es más accesible para el análisis con emuladores.
¿Qué impacto tiene en el proceso de publicación en los stores?
Ninguno directo. La auditoría se hace sobre una versión de prueba o la versión de producción que ya está publicada. Las correcciones se implementan antes de la siguiente release.
¿Podéis hacer solo la auditoría de la API sin analizar la app?
Sí. Si ya tienes la app auditada o lo que te preocupa es el backend, podemos limitarnos a la API. Ver nuestro servicio de pentesting de APIs.