11 KiB
iOS Pentesting Checklist
Verwenden Sie Trickest, um mühelos Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.
Heute noch Zugriff erhalten:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegramm-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud Github-Repositorys einreichen.
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
Vorbereitung
- Lesen Sie iOS-Grundlagen
- Bereiten Sie Ihre Umgebung vor, indem Sie iOS-Testumgebung lesen
- Lesen Sie alle Abschnitte von iOS Initial Analysis, um gängige Aktionen zum Pentesten einer iOS-Anwendung zu erlernen
Datenspeicherung
- Plist-Dateien können zur Speicherung sensibler Informationen verwendet werden.
- Core Data (SQLite-Datenbank) kann sensible Informationen speichern.
- YapDatenbanken (SQLite-Datenbank) können sensible Informationen speichern.
- Firebase Misskonfiguration.
- Realm-Datenbanken können sensible Informationen speichern.
- Couchbase Lite-Datenbanken können sensible Informationen speichern.
- Binäre Cookies können sensible Informationen speichern
- Cache-Daten können sensible Informationen speichern
- Automatische Schnappschüsse können visuell sensible Informationen speichern
- Schlüsselbund wird normalerweise verwendet, um sensible Informationen zu speichern, die beim Weiterverkauf des Telefons zurückbleiben können.
- Zusammenfassend einfach überprüfen, ob sensible Informationen von der Anwendung im Dateisystem gespeichert werden
Tastaturen
- Erlaubt die Anwendung die Verwendung von benutzerdefinierten Tastaturen?
- Überprüfen Sie, ob sensible Informationen in den Tastatur-Cache-Dateien gespeichert sind
Protokolle
- Überprüfen Sie, ob sensible Informationen protokolliert werden
Backups
- Backups können verwendet werden, um auf die im Dateisystem gespeicherten sensiblen Informationen zuzugreifen (überprüfen Sie den Anfangspunkt dieser Checkliste)
- Außerdem können Backups verwendet werden, um einige Konfigurationen der Anwendung zu ändern, dann das Backup auf dem Telefon wiederherzustellen und wenn die geänderte Konfiguration geladen wird, kann eine (Sicherheits-) Funktionalität umgangen werden
Anwendungs-Speicher
- Überprüfen Sie sensible Informationen im Anwendungsspeicher
Gebrochene Kryptographie
- Überprüfen Sie, ob Sie Passwörter für Kryptographie finden können
- Überprüfen Sie die Verwendung von veralteten/schwachen Algorithmen zum Senden/Speichern sensibler Daten
- Hook und überwachen Sie Kryptografie-Funktionen
Lokale Authentifizierung
- Wenn eine lokale Authentifizierung in der Anwendung verwendet wird, sollten Sie überprüfen, wie die Authentifizierung funktioniert.
- Wenn das Local Authentication Framework verwendet wird, kann es leicht umgangen werden
- Wenn eine Funktion verwendet wird, die dynamisch umgangen werden kann, können Sie ein benutzerdefiniertes Frida-Skript erstellen
Exposition sensibler Funktionalitäten durch IPC
- Benutzerdefinierte URI-Handler / Deeplinks / Benutzerdefinierte Schemata
- Überprüfen Sie, ob die Anwendung ein Protokoll/Schema registriert
- Überprüfen Sie, ob die Anwendung registriert ist, um ein Protokoll/Schema zu verwenden
- Überprüfen Sie, ob die Anwendung erwartet, sensible Informationen vom benutzerdefinierten Schema zu empfangen, die von einer anderen Anwendung, die dasselbe Schema registriert, abgefangen werden können
- Überprüfen Sie, ob die Anwendung nicht die Benutzereingaben über das benutzerdefinierte Schema überprüft und bereinigt und eine Schwachstelle ausgenutzt werden kann
- Überprüfen Sie, ob die Anwendung eine sensible Aktion freigibt, die von überall über das benutzerdefinierte Schema aufgerufen werden kann
- Universelle Links
- Überprüfen Sie, ob die Anwendung ein universelles Protokoll/Schema registriert
- Überprüfen Sie die
apple-app-site-association
-Datei - Überprüfen Sie, ob die Anwendung nicht die Benutzereingaben über das benutzerdefinierte Schema überprüft und bereinigt und eine Schwachstelle ausgenutzt werden kann
- Überprüfen Sie, ob die Anwendung eine sensible Aktion freigibt, die von überall über das benutzerdefinierte Schema aufgerufen werden kann
- UIActivity Sharing
- Überprüfen Sie, ob die Anwendung UIActivities empfangen kann und ob es möglich ist, eine Schwachstelle mit speziell erstellten Aktivitäten auszunutzen
- UIPasteboard
- Überprüfen Sie, ob die Anwendung etwas in die allgemeine Zwischenablage kopiert
- Überprüfen Sie, ob die Anwendung Daten aus der allgemeinen Zwischenablage für irgendetwas verwendet
- Überwachen Sie die Zwischenablage, um zu sehen, ob sensible Daten kopiert werden
- App-Erweiterungen
- Verwendet die Anwendung eine Erweiterung?
- WebViews
- Überprüfen Sie, welche Art von Webviews verwendet werden
- Überprüfen Sie den Status von
javaScriptEnabled
,JavaScriptCanOpenWindowsAutomatically
,hasOnlySecureContent
- Überprüfen Sie, ob die Webview auf lokale Dateien mit dem Protokoll file:// zugreifen kann (
allowFileAccessFromFileURLs
,allowUniversalAccessFromFileURLs
) - Überprüfen Sie, ob Javascript auf Native Methoden zugreifen kann (
JSContext
,postMessage
)
Netzwerkkommunikation
- Führen Sie eine MitM-Attacke auf die Kommunikation durch und suchen Sie nach Web-Schwachstellen.
- Überprüfen Sie, ob der Hostname des Zertifikats überprüft wird.
- Überprüfen/Skippen Sie das Zertifikats-Pinning.
Verschiedenes
- Überprüfen Sie auf Mechanismen für automatische Patching/Updates.
- Überprüfen Sie auf bösartige Bibliotheken von Drittanbietern.
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
Erlernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories einreichen.
Verwenden Sie Trickest, um mühelos Workflows zu erstellen und zu automatisieren, die von den weltweit fortschrittlichsten Community-Tools unterstützt werden.
Erhalten Sie noch heute Zugriff:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}