mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 04:33:28 +00:00
6.8 KiB
6.8 KiB
Lista de verificación de APK de Android
{% hint style="success" %}
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repositorios de github.
Aprender fundamentos de Android
- Conceptos básicos
- Dalvik y Smali
- Puntos de entrada
- Actividades
- Esquemas de URL
- Proveedores de contenido
- Servicios
- Receptores de difusión
- Intenciones
- Filtro de Intención
- Otros componentes
- Cómo usar ADB
- Cómo modificar Smali
Análisis estático
- Verificar el uso de ofuscación, verificar si el móvil está rooteado, si se está utilizando un emulador y realizar verificaciones de anti-manipulación. Lee esto para más información.
- Las aplicaciones sensibles (como las aplicaciones bancarias) deben verificar si el móvil está rooteado y actuar en consecuencia.
- Buscar cadenas interesantes (contraseñas, URLs, API, cifrado, puertas traseras, tokens, UUIDs de Bluetooth...).
- Atención especial a las APIs de firebase.
- Leer el manifiesto:
- Verificar si la aplicación está en modo de depuración y tratar de "explotarla".
- Verificar si el APK permite copias de seguridad.
- Actividades exportadas.
- Proveedores de contenido.
- Servicios expuestos.
- Receptores de difusión.
- Esquemas de URL.
- ¿Está la aplicación guardando datos de manera insegura internamente o externamente?
- ¿Hay alguna contraseña codificada o guardada en disco? ¿Está la aplicación utilizando algoritmos criptográficos inseguros?
- ¿Todas las bibliotecas se compilaron utilizando la bandera PIE?
- No olvides que hay un montón de analizadores estáticos de Android que pueden ayudarte mucho durante esta fase.
Análisis dinámico
- Preparar el entorno (en línea, VM local o física)
- ¿Hay alguna filtración de datos no intencionada (registros, copiar/pegar, registros de fallos)?
- Información confidencial guardada en bases de datos SQLite?
- Actividades expuestas explotables?
- Proveedores de contenido explotables?
- Servicios expuestos explotables?
- Receptores de difusión explotables?
- ¿La aplicación transmite información en texto claro/utiliza algoritmos débiles? ¿Es posible un MitM?
- Inspeccionar tráfico HTTP/HTTPS
- Este punto es realmente importante, porque si puedes capturar el tráfico HTTP puedes buscar vulnerabilidades web comunes (Hacktricks tiene mucha información sobre vulnerabilidades web).
- Verificar posibles Inyecciones del lado del cliente de Android (probablemente algún análisis de código estático ayudará aquí).
- Frida: Solo Frida, úsala para obtener datos dinámicos interesantes de la aplicación (quizás algunas contraseñas...)
Algunas informaciones sobre ofuscación/deofuscación
{% hint style="success" %}
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repositorios de github.