# Lista kontrolna testowania penetracyjnego iOS
\
Użyj [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks), aby łatwo tworzyć i **automatyzować zadania** przy użyciu najbardziej zaawansowanych narzędzi społeczności.\
Zdobądź dostęp już dziś:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Zacznij od zera i zostań ekspertem od hakowania AWS zhtARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) na GitHubie.
**Grupa Try Hard Security**
{% embed url="https://discord.gg/tryhardsecurity" %}
***
### Przygotowanie
* [ ] Przeczytaj [**Podstawy iOS**](ios-pentesting/ios-basics.md)
* [ ] Przygotuj swoje środowisko, czytając [**Środowisko testowe iOS**](ios-pentesting/ios-testing-environment.md)
* [ ] Przeczytaj wszystkie sekcje [**Początkowa analiza iOS**](ios-pentesting/#initial-analysis), aby dowiedzieć się, jak przeprowadzić test penetracyjny aplikacji iOS
### Przechowywanie danych
* [ ] [**Pliki Plist**](ios-pentesting/#plist) mogą być używane do przechowywania poufnych informacji.
* [ ] [**Core Data**](ios-pentesting/#core-data) (baza danych SQLite) może przechowywać poufne informacje.
* [ ] [**Bazy danych Yap**](ios-pentesting/#yapdatabase) (baza danych SQLite) mogą przechowywać poufne informacje.
* [ ] Konfiguracja brakująca w [**Firebase**](ios-pentesting/#firebase-real-time-databases).
* [ ] [**Bazy danych Realm**](ios-pentesting/#realm-databases) mogą przechowywać poufne informacje.
* [ ] [**Bazy danych Couchbase Lite**](ios-pentesting/#couchbase-lite-databases) mogą przechowywać poufne informacje.
* [ ] [**Pliki cookies binarne**](ios-pentesting/#cookies) mogą przechowywać poufne informacje.
* [ ] [**Dane pamięci podręcznej**](ios-pentesting/#cache) mogą przechowywać poufne informacje.
* [ ] [**Automatyczne migawki**](ios-pentesting/#snapshots) mogą zachować wrażliwe informacje wizualne.
* [ ] [**Keychain**](ios-pentesting/#keychain) jest zazwyczaj używany do przechowywania poufnych informacji, które mogą pozostać po sprzedaży telefonu.
* [ ] Podsumowując, po prostu **sprawdź, czy aplikacja zapisuje wrażliwe informacje w systemie plików**
### Klawiatury
* [ ] Czy aplikacja [**pozwala na korzystanie z niestandardowych klawiatur**](ios-pentesting/#custom-keyboards-keyboard-cache)?
* [ ] Sprawdź, czy w [**plikach pamięci podręcznej klawiatur**](ios-pentesting/#custom-keyboards-keyboard-cache) zapisane są wrażliwe informacje
### **Logi**
* [ ] Sprawdź, czy [**zapisywane są wrażliwe informacje**](ios-pentesting/#logs)
### Kopie zapasowe
* [ ] [**Kopie zapasowe**](ios-pentesting/#backups) mogą być używane do **uzyskania dostępu do wrażliwych informacji** zapisanych w systemie plików (sprawdź początek tej listy kontrolnej)
* [ ] Ponadto [**kopie zapasowe**](ios-pentesting/#backups) mogą być używane do **modyfikacji niektórych konfiguracji aplikacji**, a następnie **przywrócenia** kopii zapasowej na telefonie, co pozwala na **obchodzenie** pewnych (bezpieczeństwa) **funkcjonalności**
### **Pamięć aplikacji**
* [ ] Sprawdź, czy w [**pamięci aplikacji**](ios-pentesting/#testing-memory-for-sensitive-data) znajdują się wrażliwe informacje
### **Słabe szyfrowanie**
* [ ] Sprawdź, czy można znaleźć [**hasła używane do szyfrowania**](ios-pentesting/#broken-cryptography)
* [ ] Sprawdź, czy używane są [**przestarzałe/słabe algorytmy**](ios-pentesting/#broken-cryptography) do wysyłania/przechowywania wrażliwych danych
* [ ] [**Podłącz i monitoruj funkcje kryptograficzne**](ios-pentesting/#broken-cryptography)
### **Lokalna autoryzacja**
* [ ] Jeśli aplikacja używa [**lokalnej autoryzacji**](ios-pentesting/#local-authentication), należy sprawdzić, jak działa autoryzacja.
* [ ] Jeśli używa [**Frameworku lokalnej autoryzacji**](ios-pentesting/#local-authentication-framework), może być łatwo obejść
* [ ] Jeśli używa [**funkcji, która może być dynamicznie obejścia**](ios-pentesting/#local-authentication-using-keychain), można utworzyć niestandardowy skrypt frida
### Ujawnienie wrażliwej funkcjonalności poprzez IPC
* [**Niestandardowe obsługiwane URI / Deep Linki / Niestandardowe schematy**](ios-pentesting/#custom-uri-handlers-deeplinks-custom-schemes)
* [ ] Sprawdź, czy aplikacja **rejestruje jakikolwiek protokół/schemat**
* [ ] Sprawdź, czy aplikacja **rejestruje użycie** jakiegokolwiek protokołu/schematu
* [ ] Sprawdź, czy aplikacja **oczekuje na otrzymanie jakiegokolwiek rodzaju wrażliwych informacji** z niestandardowego schematu, które mogą być **przechwycone** przez inną aplikację rejestrującą ten sam schemat
* [ ] Sprawdź, czy aplikacja **nie sprawdza i nie oczyszcza** danych użytkownika za pomocą niestandardowego schematu, co może być **wykorzystane** do **ataku**
* [ ] Sprawdź, czy aplikacja **ujawnia jakiekolwiek wrażliwe działanie**, które może być wywołane z dowolnego miejsca za pomocą niestandardowego schematu
* [**Uniwersalne linki**](ios-pentesting/#universal-links)
* [ ] Sprawdź, czy aplikacja **rejestruje jakikolwiek uniwersalny protokół/schemat**
* [ ] Sprawdź plik `apple-app-site-association`
* [ ] Sprawdź, czy aplikacja **nie sprawdza i nie oczyszcza** danych użytkownika za pomocą niestandardowego schematu, co może być **wykorzystane** do **ataku**
* [ ] Sprawdź, czy aplikacja **ujawnia jakiekolwiek wrażliwe działanie**, które może być wywołane z dowolnego miejsca za pomocą niestandardowego schematu
* [**UIActivity Sharing**](ios-pentesting/ios-uiactivity-sharing.md)
* [ ] Sprawdź, czy aplikacja może odbierać UIActivities i czy można wykorzystać jakąkolwiek lukę związane z specjalnie przygotowaną aktywnością
* [**UIPasteboard**](ios-pentesting/ios-uipasteboard.md)
* [ ] Sprawdź, czy aplikacja **kopiuję cokolwiek do ogólnego schowka**
* [ ] Sprawdź, czy aplikacja **używa danych z ogólnego schowka do czegokolwiek**
* [ ] Monitoruj schowek, aby sprawdzić, czy skopiowano jakieś **wrażliwe dane**
* [**Rozszerzenia aplikacji**](ios-pentesting/ios-app-extensions.md)
* [ ] Czy aplikacja **korzysta z jakiegokolwiek rozszerzenia**?
* [**WebViews**](ios-pentesting/ios-webviews.md)
* [ ] Sprawdź, jakiego rodzaju webviewy są używane
* [ ] Sprawdź status **`javaScriptEnabled`**, **`JavaScriptCanOpenWindowsAutomatically`**, **`hasOnlySecureContent`**
* [ ] Sprawdź, czy webview może **uzyskać dostęp do lokalnych plików** za pomocą protokołu **file://** **(**`allowFileAccessFromFileURLs`, `allowUniversalAccessFromFileURLs`)
* [ ] Sprawdź, czy JavaScript może uzyskać dostęp do **metod natywnych** (`JSContext`, `postMessage`)
### Komunikacja sieciowa
* [ ] Przeprowadź [**MitM w komunikacji**](ios-pentesting/#network-communication) i szukaj podatności internetowych.
* [ ] Sprawdź, czy sprawdzana jest [**nazwa hosta certyfikatu**](ios-pentesting/#hostname-check).
* [ ] Sprawdź/Omij [**Przypięcie Certyfikatu**](ios-pentesting/#certificate-pinning).
### **Różne**
* [ ] Sprawdź mechanizmy [**automatycznego łatania/aktualizacji**](ios-pentesting/#hot-patching-enforced-updateing).
* [ ] Sprawdź [**złośliwe biblioteki osób trzecich**](ios-pentesting/#third-parties).
**Try Hard Security Group**
{% embed url="https://discord.gg/tryhardsecurity" %}
Dowiedz się, jak hakować AWS od zera do bohatera zhtARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
\
Użyj [**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks), aby łatwo tworzyć i **automatyzować workflowy** zasilane przez najbardziej zaawansowane narzędzia społeczności na świecie.\
Zdobądź Dostęp Dziś:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}