Android APK Checklist

Reading time: 5 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Lerne die Grundlagen von Android

Statische Analyse

  • Überprüfen Sie die Verwendung von Obfuskation, überprüfen Sie, ob das Mobilgerät gerootet ist, ob ein Emulator verwendet wird und führen Sie Anti-Tampering-Überprüfungen durch. Lesen Sie dies für weitere Informationen.
  • Sensible Anwendungen (wie Bank-Apps) sollten überprüfen, ob das Mobilgerät gerootet ist, und entsprechend handeln.
  • Suchen Sie nach interessanten Zeichenfolgen (Passwörter, URLs, API, Verschlüsselung, Hintertüren, Tokens, Bluetooth-UUIDs...).
  • Besondere Aufmerksamkeit auf Firebase-APIs.
  • Lesen Sie das Manifest:
  • Überprüfen Sie, ob die Anwendung im Debug-Modus ist, und versuchen Sie, sie zu "exploiten".
  • Überprüfen Sie, ob die APK Backups zulässt.
  • Exportierte Aktivitäten.
  • Inhaltsanbieter.
  • Exponierte Dienste.
  • Broadcast-Empfänger.
  • URL-Schemata.
  • Speichert die Anwendung Daten unsicher intern oder extern? [android-app-pentesting/index.html#insecure-data-storage]
  • Gibt es ein Passwort, das hartcodiert oder auf der Festplatte gespeichert ist? Verwendet die App unsichere kryptografische Algorithmen?
  • Sind alle Bibliotheken mit dem PIE-Flag kompiliert?
  • Vergessen Sie nicht, dass es eine Reihe von statischen Android-Analysatoren gibt, die Ihnen in dieser Phase sehr helfen können.
  • android:exported obligatorisch ab Android 12+ – falsch konfigurierte exportierte Komponenten können zu externen Intent-Aufrufen führen.
  • Überprüfen Sie die Netzwerksicherheitskonfiguration (networkSecurityConfig XML) auf cleartextTrafficPermitted="true" oder domänenspezifische Überschreibungen.
  • Suchen Sie nach Aufrufen von Play Integrity / SafetyNet / DeviceCheck – bestimmen Sie, ob benutzerdefinierte Attestierungen umgangen werden können.
  • Überprüfen Sie App-Links / Deep Links (android:autoVerify) auf Intent-Umleitungen oder Open-Redirect-Probleme.
  • Identifizieren Sie die Verwendung von WebView.addJavascriptInterface oder loadData*(), die zu RCE / XSS innerhalb der App führen können.
  • Analysieren Sie plattformübergreifende Bundles (Flutter libapp.so, React-Native JS-Bundles, Capacitor/Ionic-Assets). Dedizierte Tools:
  • flutter-packer, fluttersign, rn-differ
  • Scannen Sie Drittanbieter-Bibliotheken auf bekannte CVEs (z. B. libwebp CVE-2023-4863, libpng usw.).
  • Bewerten Sie SEMgrep Mobile-Regeln, Pithus und die neuesten MobSF ≥ 3.9 KI-unterstützten Scan-Ergebnisse auf zusätzliche Funde.

Dynamische Analyse

  • Bereiten Sie die Umgebung vor (online, lokale VM oder physisch)
  • Gibt es unbeabsichtigte Datenlecks (Protokollierung, Kopieren/Einfügen, Absturzprotokolle)?
  • Vertrauliche Informationen, die in SQLite-Datenbanken gespeichert werden?
  • Ausnutzbare exportierte Aktivitäten?
  • Ausnutzbare Inhaltsanbieter?
  • Ausnutzbare exponierte Dienste?
  • Ausnutzbare Broadcast-Empfänger?
  • Überträgt die Anwendung Informationen im Klartext/verwendet sie schwache Algorithmen? [android-app-pentesting/index.html#insufficient-transport-layer-protection] Ist ein MitM möglich?
  • HTTP/HTTPS-Verkehr inspizieren
  • Dies ist wirklich wichtig, denn wenn Sie den HTTP-Verkehr erfassen können, können Sie nach häufigen Web-Schwachstellen suchen (Hacktricks hat viele Informationen über Web-Schwachstellen).
  • Überprüfen Sie mögliche Android-Client-Seiten-Injektionen (wahrscheinlich wird hier eine statische Codeanalyse helfen).
  • Frida: Nur Frida, verwenden Sie es, um interessante dynamische Daten aus der Anwendung zu erhalten (vielleicht einige Passwörter...).
  • Testen Sie auf Tapjacking / animationsgesteuerte Angriffe (TapTrap 2025), selbst auf Android 15+ (keine Overlay-Berechtigung erforderlich).
  • Versuchen Sie Overlay / SYSTEM_ALERT_WINDOW Clickjacking und Missbrauch des Accessibility-Dienstes zur Privilegieneskalation.
  • Überprüfen Sie, ob adb backup / bmgr backupnow weiterhin Anwendungsdaten dumpen kann (Apps, die vergessen haben, allowBackup zu deaktivieren).
  • Prüfen Sie auf Binder-Level-LPEs (z. B. CVE-2023-20963, CVE-2023-20928); verwenden Sie Kernel-Fuzzer oder PoCs, wenn dies erlaubt ist.
  • Wenn Play Integrity / SafetyNet durchgesetzt wird, versuchen Sie Runtime-Hooks (Frida Gadget, MagiskIntegrityFix, Integrity-faker) oder Netzwerk-Level-Replays.
  • Instrumentieren Sie mit modernen Tools:
  • Objection > 2.0, Frida 17+, NowSecure-Tracer (2024)
  • Dynamisches systemweites Tracing mit perfetto / simpleperf.

Einige Informationen zur Obfuskation/Deobfuskation

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks