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
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Lerne die Grundlagen von Android
- Grundlagen
- Dalvik & Smali
- Einstiegspunkte
- Aktivitäten
- URL-Schemata
- Inhaltsanbieter
- Dienste
- Broadcast-Empfänger
- Intents
- Intent-Filter
- Andere Komponenten
- Wie man ADB verwendet
- Wie man Smali modifiziert
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) aufcleartextTrafficPermitted="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
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.