Bezpieczeństwo IT Opublikowano: · Aktualizacja: 3 min czytania · Autor: Dominik Rulkiewicz

Testy penetracyjne aplikacji mobilnych, Android i iOS

Testy penetracyjne aplikacji mobilnych sprawdzają bezpieczeństwo danych, komunikacji i API na Androidzie oraz iOS. Zobacz, co badamy i dlaczego.

Testy penetracyjne aplikacji mobilnych, Android i iOS

Testy penetracyjne aplikacji mobilnych, Android i iOS

Aplikacje mobilne przetwarzają dane logowania, płatności i dane osobowe, często poza kontrolą firmowej sieci. Testy penetracyjne aplikacji mobilnych sprawdzają, czy Twoja aplikacja na Androida i iOS jest odporna na realne ataki.

Co sprawdzamy?

  • Bezpieczeństwo danych przechowywanych na urządzeniu.
  • Szyfrowanie i bezpieczeństwo komunikacji z serwerem.
  • Bezpieczeństwo API, z którego korzysta aplikacja.
  • Uwierzytelnianie, sesje i kontrolę dostępu.
  • Odporność na inżynierię wsteczną i modyfikację kodu.

Dlaczego to ważne?

Wyciek danych z aplikacji mobilnej to nie tylko ryzyko finansowe, ale i utrata zaufania użytkowników oraz problemy ze zgodnością z RODO. Wiele podatności mobilnych jest niewidocznych z poziomu zwykłych testów aplikacji webowych.

Jak pracujemy?

Analizujemy aplikację w modelu uzgodnionym z klientem (najczęściej grey box), testujemy zarówno samą aplikację, jak i jej backend, a wyniki przekazujemy w priorytetowym raporcie z rekomendacjami i retestem.

Zobacz: testy penetracyjne dla firm lub porozmawiaj o zakresie.

Co obejmuje test aplikacji mobilnej (wg OWASP MAS)

ObszarCo sprawdzamy
Przechowywanie danychDane wrażliwe na urządzeniu, poprawne użycie Keychain / Keystore
Komunikacja sieciowaTLS, certificate pinning, odporność na atak MITM
UwierzytelnianieZarządzanie sesją, tokeny, biometria
Odporność koduReverse engineering, obfuskacja, wykrywanie root/jailbreak
PlatformaUprawnienia, komunikacja międzyprocesowa (IPC), deep links

Najczęstsze podatności aplikacji mobilnych

W testach aplikacji mobilnych regularnie powtarzają się te same klasy problemów, niezależnie od branży i wielkości firmy:

  • Niebezpieczne przechowywanie danych, tokeny, hasła lub dane osobowe zapisane w postaci jawnej w pamięci urządzenia, logach lub kopiach zapasowych.
  • Słaba ochrona komunikacji, brak certificate pinningu, akceptowanie nieprawidłowych certyfikatów, przesyłanie danych po HTTP.
  • Błędy autoryzacji po stronie API, aplikacja mobilna to tylko klient; realne dane chroni backend, a luki typu IDOR pozwalają sięgać po cudze rekordy.
  • Nadmierne uprawnienia i wycieki do bibliotek zewnętrznych, SDK analityczne i reklamowe otrzymujące więcej danych, niż potrzebują.
  • Brak zabezpieczeń przed inżynierią wsteczną, brak obfuskacji i wykrywania roota/jailbreaku ułatwia analizę i modyfikację aplikacji.

Test aplikacji mobilnej a test API

Większość krytycznych podatności „mobilnych" znajduje się w rzeczywistości po stronie serwera. Dlatego pełny test aplikacji mobilnej zawsze obejmuje także testy bezpieczeństwa API, z którego aplikacja korzysta, od uwierzytelniania i sesji po kontrolę dostępu do obiektów. Testowanie samej aplikacji bez backendu daje fałszywe poczucie bezpieczeństwa.

Kiedy warto wykonać pentest aplikacji mobilnej?

Najlepiej przed publikacją w sklepach (App Store / Google Play), po każdej większej zmianie architektury oraz cyklicznie, szczególnie gdy aplikacja przetwarza dane osobowe, płatności lub dane medyczne. Wymagania regulacyjne (RODO, DORA, NIS2) coraz częściej wprost oczekują regularnych testów bezpieczeństwa. O częstotliwości pisaliśmy we wpisie pentesty dla firm, kiedy i jak często.

Źródła i standardy

Przeczytaj także

Tagi: testy penetracyjne aplikacje mobilne Android iOS
DR

Autor

Dominik Rulkiewicz

IT Security Manager · Octopus Lab

Ekspert cyberbezpieczeństwa z ponad 10-letnim doświadczeniem w sektorach regulowanych (ubezpieczenia, farmacja, logistyka). Process Owner ds. zarządzania podatnościami i hardeningu w Grupie ERGO, Audit Lead ISO 27001. Specjalizuje się w testach penetracyjnych, audytach bezpieczeństwa oraz zgodności z NIS2, DORA, ISO 27001 i RODO.

Certyfikaty: ISC2 CC · Cybersecurity Blue Team (Uniwersytet Jagielloński) · ITIL v4 · Microsoft Azure (AZ-900)

Udostępnij:

Potrzebujesz profesjonalnego wsparcia?

Nasi eksperci pomogą Ci zabezpieczyć Twoją firmę przed cyberzagrożeniami.