# iOS Pentesting Checklist
\ Gebruik [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) om maklik te bou en **werkvloei** te **automate** wat aangedryf word deur die wêreld se **mees gevorderde** gemeenskapstools.\ Kry Toegang Vandag: {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %} {% hint style="success" %} Leer & oefen AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Leer & oefen GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)! * **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %} ### Preparation * [ ] Lees [**iOS Basics**](ios-pentesting/ios-basics.md) * [ ] Berei jou omgewing voor deur [**iOS Testing Environment**](ios-pentesting/ios-testing-environment.md) te lees * [ ] Lees al die afdelings van [**iOS Initial Analysis**](ios-pentesting/#initial-analysis) om algemene aksies te leer om 'n iOS-toepassing te pentest ### Data Storage * [ ] [**Plist files**](ios-pentesting/#plist) kan gebruik word om sensitiewe inligting te stoor. * [ ] [**Core Data**](ios-pentesting/#core-data) (SQLite-databasis) kan sensitiewe inligting stoor. * [ ] [**YapDatabases**](ios-pentesting/#yapdatabase) (SQLite-databasis) kan sensitiewe inligting stoor. * [ ] [**Firebase**](ios-pentesting/#firebase-real-time-databases) mis-konfigurasie. * [ ] [**Realm databases**](ios-pentesting/#realm-databases) kan sensitiewe inligting stoor. * [ ] [**Couchbase Lite databases**](ios-pentesting/#couchbase-lite-databases) kan sensitiewe inligting stoor. * [ ] [**Binary cookies**](ios-pentesting/#cookies) kan sensitiewe inligting stoor. * [ ] [**Cache data**](ios-pentesting/#cache) kan sensitiewe inligting stoor. * [ ] [**Automatic snapshots**](ios-pentesting/#snapshots) kan visuele sensitiewe inligting stoor. * [ ] [**Keychain**](ios-pentesting/#keychain) word gewoonlik gebruik om sensitiewe inligting te stoor wat agtergelaat kan word wanneer die foon weer verkoop word. * [ ] In samevatting, net **kyk vir sensitiewe inligting wat deur die toepassing in die lêerstelsel gestoor is.** ### Keyboards * [ ] Laat die toepassing [**toe om pasgemaakte sleutelborde te gebruik**](ios-pentesting/#custom-keyboards-keyboard-cache)? * [ ] Kyk of sensitiewe inligting in die [**keyboards cache files**](ios-pentesting/#custom-keyboards-keyboard-cache) gestoor word. ### **Logs** * [ ] Kyk of [**sensitiewe inligting gelog word**](ios-pentesting/#logs). ### Backups * [ ] [**Backups**](ios-pentesting/#backups) kan gebruik word om **toegang te verkry tot die sensitiewe inligting** wat in die lêerstelsel gestoor is (kyk na die aanvanklike punt van hierdie kontrolelys). * [ ] Ook, [**backups**](ios-pentesting/#backups) kan gebruik word om **sekere konfigurasies van die toepassing te wysig**, dan **herstel** die rugsteun op die foon, en soos die **gewysigde konfigurasie** **gelaai** word, kan sommige (sekuriteit) **funksionaliteit** **omseil** word. ### **Applications Memory** * [ ] Kyk vir sensitiewe inligting binne die [**toepassing se geheue**](ios-pentesting/#testing-memory-for-sensitive-data). ### **Broken Cryptography** * [ ] Kyk of jy [**wagwoorde wat vir kriptografie gebruik word**](ios-pentesting/#broken-cryptography) kan vind. * [ ] Kyk vir die gebruik van [**verouderde/ swak algoritmes**](ios-pentesting/#broken-cryptography) om sensitiewe data te stuur/stoor. * [ ] [**Hook en monitor kriptografie funksies**](ios-pentesting/#broken-cryptography). ### **Local Authentication** * [ ] As 'n [**lokale outentisering**](ios-pentesting/#local-authentication) in die toepassing gebruik word, moet jy kyk hoe die outentisering werk. * [ ] As dit die [**Local Authentication Framework**](ios-pentesting/#local-authentication-framework) gebruik, kan dit maklik omseil word. * [ ] As dit 'n [**funksie gebruik wat dinamies omseil kan word**](ios-pentesting/#local-authentication-using-keychain), kan jy 'n pasgemaakte frida-skrip skep. ### Sensitive Functionality Exposure Through IPC * [**Custom URI Handlers / Deeplinks / Custom Schemes**](ios-pentesting/#custom-uri-handlers-deeplinks-custom-schemes) * [ ] Kyk of die toepassing **enige protokol/skema registreer**. * [ ] Kyk of die toepassing **registreer om enige protokol/skema te gebruik**. * [ ] Kyk of die toepassing **verwag om enige soort sensitiewe inligting** van die pasgemaakte skema te ontvang wat deur 'n ander toepassing wat dieselfde skema registreer, **geïntcepteer** kan word. * [ ] Kyk of die toepassing **nie gebruikersinvoer via die pasgemaakte skema nagaan en saniteer nie** en of 'n **kwesbaarheid uitgebuit kan word**. * [ ] Kyk of die toepassing **enige sensitiewe aksie blootstel** wat van oral via die pasgemaakte skema aangeroep kan word. * [**Universal Links**](ios-pentesting/#universal-links) * [ ] Kyk of die toepassing **enige universele protokol/skema registreer**. * [ ] Kyk die `apple-app-site-association` lêer. * [ ] Kyk of die toepassing **nie gebruikersinvoer via die pasgemaakte skema nagaan en saniteer nie** en of 'n **kwesbaarheid uitgebuit kan word**. * [ ] Kyk of die toepassing **enige sensitiewe aksie blootstel** wat van oral via die pasgemaakte skema aangeroep kan word. * [**UIActivity Sharing**](ios-pentesting/ios-uiactivity-sharing.md) * [ ] Kyk of die toepassing UIActivities kan ontvang en of dit moontlik is om enige kwesbaarheid met spesiaal saamgestelde aktiwiteit te ontgin. * [**UIPasteboard**](ios-pentesting/ios-uipasteboard.md) * [ ] Kyk of die toepassing **iets na die algemene plakbord kopieer**. * [ ] Kyk of die toepassing **data van die algemene plakbord vir enigiets gebruik**. * [ ] Monitor die plakbord om te sien of enige **sensitiewe data gekopieer word**. * [**App Extensions**](ios-pentesting/ios-app-extensions.md) * [ ] Gebruik die toepassing **enige uitbreiding**? * [**WebViews**](ios-pentesting/ios-webviews.md) * [ ] Kyk watter soort webviews gebruik word. * [ ] Kyk die status van **`javaScriptEnabled`**, **`JavaScriptCanOpenWindowsAutomatically`**, **`hasOnlySecureContent`**. * [ ] Kyk of die webview **lokale lêers kan benader** met die protokol **file://** **(**`allowFileAccessFromFileURLs`, `allowUniversalAccessFromFileURLs`). * [ ] Kyk of Javascript toegang kan verkry tot **Native** **metodes** (`JSContext`, `postMessage`). ### Network Communication * [ ] Voer 'n [**MitM op die kommunikasie**](ios-pentesting/#network-communication) uit en soek na web kwesbaarhede. * [ ] Kyk of die [**hostname van die sertifikaat**](ios-pentesting/#hostname-check) nagegaan word. * [ ] Kyk/omseil [**Certificate Pinning**](ios-pentesting/#certificate-pinning). ### **Misc** * [ ] Kyk vir [**outomatiese patching/opdatering**](ios-pentesting/#hot-patching-enforced-updateing) meganismes. * [ ] Kyk vir [**kwaadwillige derdeparty biblioteke**](ios-pentesting/#third-parties). {% hint style="success" %} Leer & oefen AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Leer & oefen GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)! * **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
\ Gebruik [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) om maklik te bou en **werkvloei** te **automate** wat aangedryf word deur die wêreld se **mees gevorderde** gemeenskapstools.\ Kry Toegang Vandag: {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}