Lista de verificación de APK Android
Tip
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)
Aprende y practica Hacking en Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
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.
Learn Android fundamentals
- Basics
- Dalvik & Smali
- Entry points
- Activities
- URL Schemes
- Content Providers
- Services
- Broadcast Receivers
- Intents
- Intent Filter
- Other components
- How to use ADB
- How to modify Smali
Static Analysis
- Comprobar el uso de obfuscation, verificar si el móvil está rooteado, si se está usando un emulador y controles anti-manipulación. Read this for more info.
- Las aplicaciones sensibles (como aplicaciones bancarias) deberían comprobar si el móvil está rooteado y actuar en consecuencia.
- Buscar interesting strings (contraseñas, URLs, API, cifrado, backdoors, tokens, Bluetooth uuids…).
- Prestar especial atención a firebase APIs.
- Read the manifest:
- Comprobar si la aplicación está en modo de depuración y tratar de “exploit“la.
- Comprobar si el APK permite backups
- Activities exportadas
- Unity Runtime: exported UnityPlayerActivity/UnityPlayerGameActivity with a
unityCLI extras bridge. Test-xrsdk-pre-init-library <abs-path>for pre-initdlopen()RCE. See Intent Injection → Unity Runtime. - Content Providers
- Servicios expuestos
- Broadcast Receivers
- URL Schemes
- ¿La aplicación saving data insecurely internally or externally?
- ¿Hay alguna password hard coded or saved in disk? ¿La app using insecurely crypto algorithms?
- ¿Todas las librerías fueron compiladas usando la bandera PIE?
- No olvides que existe un montón de static Android Analyzers que pueden ayudarte mucho en esta fase.
-
android:exportedmandatory on Android 12+ – misconfigured exported components can lead to external intent invocation. - Revisar Network Security Config (
networkSecurityConfigXML) en busca decleartextTrafficPermitted="true"o overrides por dominio. - Buscar llamadas a Play Integrity / SafetyNet / DeviceCheck – determinar si la attestation personalizada puede ser hooked/bypassed.
- Inspeccionar App Links / Deep Links (
android:autoVerify) por redirección de intents o problemas de open-redirect. - Identificar el uso de WebView.addJavascriptInterface o
loadData*()que pueda conducir a RCE / XSS dentro de la app. - Analizar bundles multiplataforma (Flutter
libapp.so, React-Native JS bundles, Capacitor/Ionic assets). Dedicated tooling: flutter-packer,fluttersign,rn-differ- Escanear librerías nativas de terceros en busca de CVEs conocidos (e.g., libwebp CVE-2023-4863, libpng, etc.).
- Evaluar SEMgrep Mobile rules, Pithus and the latest MobSF ≥ 3.9 AI-assisted scan results for additional findings.
- Revisar add-ons de ROM OEM (OxygenOS/ColorOS/MIUI/OneUI) en busca de extra exported ContentProviders que bypass permisos; probar
content query --uri content://com.android.providers.telephony/ServiceNumberProviderwithoutREAD_SMS(e.g., OnePlus CVE-2025-10184).
Dynamic Analysis
- Preparar el entorno (online, local VM or physical)
- ¿Hay algún unintended data leakage (registros, copiar/pegar, crash logs)?
- ¿Confidential information being saved in SQLite dbs?
- Exploitable exposed Activities?
- Exploitable Content Providers?
- Exploitable exposed Services?
- Exploitable Broadcast Receivers?
- ¿La aplicación transmitting information in clear text/using weak algorithms? ¿Es posible un MitM?
- Inspect HTTP/HTTPS traffic
- Esto es realmente importante, porque si puedes capturar el tráfico HTTP puedes buscar vulnerabilidades Web comunes (Hacktricks tiene mucha información sobre Web vulns).
- Comprobar posibles Android Client Side Injections (probablemente algún análisis estático de código ayudará aquí)
- Frida: Just Frida, use it to obtain interesting dynamic data from the application (maybe some passwords…)
- Probar Tapjacking / Animation-driven attacks (TapTrap 2025) incluso en Android 15+ (no overlay permission required).
- Intentar overlay / SYSTEM_ALERT_WINDOW clickjacking y Accessibility Service abuse para escalada de privilegios.
- Comprobar si
adb backup/bmgr backupnowpuede todavía volcar datos de la app (apps que olvidaron deshabilitarallowBackup). - Buscar Binder-level LPEs (e.g., CVE-2023-20963, CVE-2023-20928); usar kernel fuzzers o PoCs si está permitido.
- Si Play Integrity / SafetyNet está aplicado, intentar runtime hooks (
Frida Gadget,MagiskIntegrityFix,Integrity-faker) o replay a nivel de red. Forks recientes de Play Integrity Fix (≥17.x) embebenplaycurl—centrarse en combinaciones ZygiskNext + PIF + ZygiskAssistant/TrickyStore para recuperar DEVICE/STRONG verdicts. - Instrumentar con tooling moderno:
- Objection > 2.0, Frida 17+ (Android 16 support, ART offset fixes), NowSecure-Tracer (2024)
- Dynamic system-wide tracing with
perfetto/simpleperf. - Para bugs de telephony/provider de OEM (p.ej., OxygenOS CVE-2025-10184), intentar permission-less SMS read/send vía el CLI
contento en-appContentResolver; probar SQLi ciego enupdate()para exfiltrar filas.
Información sobre ofuscación/Desofuscación
Referencias
- CVE-2025-59489 – Arbitrary Code Execution in Unity Runtime (blog)
- Rapid7: CVE-2025-10184 OnePlus OxygenOS Telephony provider permission bypass
- TapTrap animation-based tapjacking research (TU Wien)
Tip
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)
Aprende y practica Hacking en Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
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.


