Checklist APK Android

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks

Impara i fondamenti di Android

Analisi statica

  • Controlla l’uso di obfuscation, verifica se il dispositivo è rooted, se è in esecuzione su un emulatore e i controlli anti-tampering. Leggi qui per maggiori info.
  • Le applicazioni sensibili (es. app bancarie) dovrebbero verificare se il dispositivo è rooted e agire di conseguenza.
  • Cerca stringhe interessanti (password, URL, API, encryption, backdoors, token, UUID Bluetooth…).
  • Particolare attenzione alle API di firebase.
  • Leggi il manifest:
  • Verifica se l’app è in debug mode e prova a “sfruttarla”
  • Verifica se l’APK permette backup
  • Activities esportate
  • Unity Runtime: exported UnityPlayerActivity/UnityPlayerGameActivity con un bridge unity CLI extras. Testa -xrsdk-pre-init-library <abs-path> per un pre-init dlopen() RCE. Vedi Intent Injection → Unity Runtime.
  • Content Providers
  • Servizi esposti
  • Broadcast Receivers
  • Schemi URL
  • L’applicazione sta salvando dati in modo insicuro internamente o esternamente?
  • Ci sono password hard coded o salvate su disco? L’app usa algoritmi crypto insicuri?
  • Tutte le librerie sono compilate con il flag PIE?
  • Non dimenticare che esistono molti strumenti di analisi statica Android che possono aiutarti molto in questa fase. static Android Analyzers
  • android:exported obbligatorio su Android 12+ – componenti esportati mal configurati possono permettere invocazioni di intent esterni.
  • Revisiona la Network Security Config (networkSecurityConfig XML) per cleartextTrafficPermitted="true" o override specifici per dominio.
  • Cerca chiamate a Play Integrity / SafetyNet / DeviceCheck – determina se l’attestazione personalizzata può essere hookata/bypassed.
  • Ispeziona App Links / Deep Links (android:autoVerify) per redirect di intent o problemi di open-redirect.
  • Identifica l’uso di WebView.addJavascriptInterface o loadData*() che possono portare a RCE / XSS all’interno dell’app.
  • Analizza bundle cross-platform (Flutter libapp.so, bundle JS di React-Native, asset di Capacitor/Ionic). Tool dedicati:
  • flutter-packer, fluttersign, rn-differ
  • Scansiona librerie native di terze parti per CVE note (es. libwebp CVE-2023-4863, libpng, ecc.).
  • Valuta le regole SEMgrep Mobile, Pithus e i risultati di scansione AI-assisted dell’ultima MobSF ≥ 3.9 per ulteriori finding.

Analisi dinamica

  • Prepara l’ambiente (online, VM locale o fisico)
  • Ci sono perdite di dati non intenzionali (logging, copy/paste, crash logs)?
  • Informazioni riservate salvate in db SQLite?
  • Activities esposte sfruttabili?
  • Content Providers sfruttabili?
  • Servizi esposti sfruttabili?
  • Broadcast Receivers sfruttabili?
  • L’applicazione trasmette informazioni in chiaro/usa algoritmi deboli? È possibile un MitM?
  • Ispeziona il traffico HTTP/HTTPS
  • Questo è molto importante: se riesci a catturare il traffico HTTP puoi cercare vulnerabilità Web comuni (Hacktricks ha molte informazioni su Web vulns).
  • Verifica possibili Android Client Side Injections (probabilmente un’analisi statica del codice aiuterà).
  • Frida (usalo per ottenere dati dinamici interessanti dall’applicazione — forse anche qualche password…)
  • Testa Tapjacking / Animation-driven attacks (TapTrap 2025) anche su Android 15+ (non è richiesta la permission per overlay).
  • Prova overlay / SYSTEM_ALERT_WINDOW clickjacking e abuso di Accessibility Service per escalation di privilegi.
  • Verifica se adb backup / bmgr backupnow possono ancora dumpare i dati dell’app (app che hanno dimenticato di disabilitare allowBackup).
  • Sonda per Binder-level LPEs (es. CVE-2023-20963, CVE-2023-20928); usa kernel fuzzers o PoC se consentito.
  • Se Play Integrity / SafetyNet è applicato, prova runtime hooks (Frida Gadget, MagiskIntegrityFix, Integrity-faker) o replay a livello di rete.
  • Strumenta con tooling moderno:
  • Objection > 2.0, Frida 17+, NowSecure-Tracer (2024)
  • Tracing dinamico a livello di sistema con perfetto / simpleperf.

Some obfuscation/Deobfuscation information

References

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks