9.2 KiB
iOS Pentesting Checklist
Gebruik Trickest 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)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Preparation
- Lees iOS Basics
- Berei jou omgewing voor deur iOS Testing Environment te lees
- Lees al die afdelings van iOS Initial Analysis om algemene aksies te leer om 'n iOS-toepassing te pentest
Data Storage
- Plist files kan gebruik word om sensitiewe inligting te stoor.
- Core Data (SQLite-databasis) kan sensitiewe inligting stoor.
- YapDatabases (SQLite-databasis) kan sensitiewe inligting stoor.
- Firebase mis-konfigurasie.
- Realm databases kan sensitiewe inligting stoor.
- Couchbase Lite databases kan sensitiewe inligting stoor.
- Binary cookies kan sensitiewe inligting stoor.
- Cache data kan sensitiewe inligting stoor.
- Automatic snapshots kan visuele sensitiewe inligting stoor.
- 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?
- Kyk of sensitiewe inligting in die keyboards cache files gestoor word.
Logs
- Kyk of sensitiewe inligting gelog word.
Backups
- 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 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.
Broken Cryptography
- Kyk of jy wagwoorde wat vir kriptografie gebruik word kan vind.
- Kyk vir die gebruik van verouderde/ swak algoritmes om sensitiewe data te stuur/stoor.
- Hook en monitor kriptografie funksies.
Local Authentication
- As 'n lokale outentisering in die toepassing gebruik word, moet jy kyk hoe die outentisering werk.
- As dit die Local Authentication Framework gebruik, kan dit maklik omseil word.
- As dit 'n funksie gebruik wat dinamies omseil kan word, kan jy 'n pasgemaakte frida-skrip skep.
Sensitive Functionality Exposure Through IPC
- 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
- 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
- Kyk of die toepassing UIActivities kan ontvang en of dit moontlik is om enige kwesbaarheid met spesiaal saamgestelde aktiwiteit te ontgin.
- UIPasteboard
- 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
- Gebruik die toepassing enige uitbreiding?
- WebViews
- 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 uit en soek na web kwesbaarhede.
- Kyk of die hostname van die sertifikaat nagegaan word.
- Kyk/omseil Certificate Pinning.
Misc
- Kyk vir outomatiese patching/opdatering meganismes.
- Kyk vir kwaadwillige derdeparty biblioteke.
{% hint style="success" %}
Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Gebruik Trickest 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" %}