Android APK Checklist
Reading time: 4 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)
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, prüfen Sie, ob das Mobilgerät gerootet ist, ob ein Emulator verwendet wird und Anti-Tampering-Überprüfungen. 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 FirebaseAPIs.
- Lesen Sie das Manifest:
- Überprüfen Sie, ob die Anwendung im Debug-Modus ist, und versuchen Sie, sie "auszunutzen".
- Ü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?
- 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 Menge statischer Android-Analyzer gibt, die Ihnen in dieser Phase sehr helfen können.
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/unter Verwendung schwacher Algorithmen? 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 Webanfälligkeiten suchen (Hacktricks hat viele Informationen über Webanfälligkeiten).
- Ü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...).
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)
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.