# 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ć przepływy pracy** z wykorzystaniem najbardziej zaawansowanych narzędzi społecznościowych na świecie.\ 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 AWS z htARTE (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) github repos.
**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ę, jakie są powszechne działania w testowaniu penetracyjnym 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. * [ ] [**Firebase**](ios-pentesting/#firebase-real-time-databases) - błędna konfiguracja. * [ ] [**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**? * [ ] Sprawdź, czy w **plikach pamięci podręcznej klawiatur** są zapisane 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 poufnych 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, a gdy **zmodyfikowana konfiguracja** jest **wczytywana**, pewne (bezpieczeństwo) **funkcje mogą zostać zignorowane** ### **Pamięć aplikacji** * [ ] Sprawdź, czy w **pamięci aplikacji** znajdują się wrażliwe informacje (ios-pentesting/#testing-memory-for-sensitive-data) ### **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** 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 zignorowany * [ ] Jeśli używa [**funkcji, która może być dynamicznie zignorowana**](ios-pentesting/#local-authentication-using-keychain), można utworzyć niestandardowy skrypt frida ### Ujawnienie funkcjonalności wrażliwej 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ę w zabezpieczeniach za pomocą specjalnie przygotowanej 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 zostały skopiowane **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 z htARTE (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) github repos.
\ Użyj [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) do łatwego tworzenia i **automatyzacji workflowów** zasilanych przez najbardziej zaawansowane narzędzia społeczności na świecie.\ Otrzymaj dostęp już dziś: {% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}