iOS i Android
Testy penetracyjne aplikacji mobilnych iOS i Android
Aplikacja mobilna trafia na urządzenie, nad którym Państwo nie panują. Dlatego testy penetracyjne prowadzimy przy założeniu, że napastnik ma pełny dostęp do pliku binarnego, pamięci i ruchu sieciowego — i sprawdzamy, ile mu to daje.
Typowy test aplikacji mobilnej trwa od 2 do 3 tygodni i obejmuje obie platformy.
Obszary testów
Co sprawdzamy w aplikacji mobilnej
Testy prowadzimy zgodnie z OWASP MASVS i OWASP Mobile Top 10, uzupełniając je o ręczną analizę logiki aplikacji i backendu.
Analiza pliku binarnego
Dekompilacja i przegląd kodu pod kątem zaszytych kluczy API, adresów środowisk wewnętrznych, danych diagnostycznych oraz pozostałości po funkcjach testowych, które trafiły do wersji produkcyjnej.
Dane przechowywane na urządzeniu
Zawartość baz lokalnych, plików preferencji, pamięci podręcznej, zrzutów ekranu wykonywanych przez system oraz poprawność użycia Keychain w iOS i Keystore w Android.
Komunikacja z backendem
Weryfikacja TLS, skuteczność przypinania certyfikatów, podatność na przechwycenie ruchu oraz sprawdzenie, czy backend nie zwraca danych, których aplikacja nigdy nie wyświetla.
Uwierzytelnianie i sesja
Sposób przechowywania i odświeżania tokenów, obsługa biometrii, wylogowanie na wszystkich urządzeniach, zachowanie aplikacji po zmianie hasła oraz odporność kodów jednorazowych.
Odporność środowiskowa
Zachowanie aplikacji na urządzeniu z uprawnieniami root lub po jailbreaku, odporność na modyfikację w czasie działania oraz na ponowne podpisanie i dystrybucję zmodyfikowanej wersji.
Uprawnienia i komponenty systemowe
Zakres żądanych uprawnień, eksportowane komponenty Android, obsługa odnośników głębokich oraz przepływ danych do bibliotek analitycznych i reklamowych stron trzecich.
Przebieg
Jak prowadzimy test aplikacji mobilnej
Pracujemy równolegle na kliencie i na backendzie, ponieważ w praktyce najpoważniejsze znaleziska leżą na styku obu warstw.
- 01
Przekazanie kompilacji
Otrzymujemy pliki IPA i APK lub dostęp do kanału dystrybucji testowej wraz z kontami dla każdej roli i opisem funkcji dostępnych po zalogowaniu.
- 02
Analiza statyczna
Rozkładamy plik binarny, przeglądamy zasoby i konfigurację oraz szukamy danych uwierzytelniających, adresów wewnętrznych i wyłączonych zabezpieczeń kompilacji.
- 03
Analiza dynamiczna
Uruchamiamy aplikację na urządzeniu z podniesionymi uprawnieniami, obserwujemy zapisy na dysk, pamięć procesu oraz reakcję na modyfikację działania w czasie rzeczywistym.
- 04
Testy warstwy sieciowej i API
Przechwytujemy ruch, omijamy przypinanie certyfikatów i testujemy punkty końcowe backendu tak samo, jak w projekcie dotyczącym aplikacji webowej.
- 05
Raport dla obu platform
Znaleziska rozdzielamy na wspólne dla obu systemów oraz specyficzne dla iOS lub Android, żeby zespoły mobilne mogły pracować niezależnie od siebie.
- 06
Retesty po publikacji poprawki
Weryfikujemy nową kompilację bezpłatnie i bez limitu prób, uwzględniając czas potrzebny na przejście przez proces recenzji w sklepach z aplikacjami.
Test aplikacji mobilnej w liczbach
2–3
Tygodnie typowego projektu mobilnego
2
Platformy objęte jednym zakresem: iOS i Android
0
Złotych przedpłaty przed rozpoczęciem prac
5,0
Ocena średnia na podstawie 118 opinii
Zgodność
Aplikacje mobilne a wymagania regulacyjne
Dla aplikacji finansowych i medycznych to zwykle regulator, a nie klient, wyznacza minimalny zakres testów.
Rekomendacja D i wytyczne KNF
Instytucje nadzorowane przez KNF muszą zarządzać ryzykiem środowiska teleinformatycznego, w tym kanałów mobilnych, oraz testować zmiany przed udostępnieniem klientom. Raport rozdzielamy według systemów i właścicieli, aby ułatwić rozliczenie poszczególnych rekomendacji.
RODO — minimalizacja i ochrona w fazie projektowania
Artykuł 25 RODO wymaga domyślnej ochrony danych, a aplikacje mobilne notorycznie zapisują na urządzeniu więcej, niż potrzebują. Sprawdzamy zakres danych trwale przechowywanych lokalnie oraz to, co trafia do bibliotek analitycznych podmiotów trzecich.
DORA w sektorze finansowym
Rozporządzenie DORA wymaga od podmiotów finansowych regularnego testowania odporności cyfrowej, obejmującego również aplikacje udostępniane klientom. Nasze raporty dostarczają dowodów do rejestru testów prowadzonego na potrzeby nadzoru.
OWASP MASVS i ISO 27001
Pokrycie testów opisujemy poziomami weryfikacji MASVS, dzięki czemu wynik jest porównywalny między kolejnymi latami. Znaleziska mapujemy na zabezpieczenia A.8.8 oraz A.8.29 z Załącznika A do ISO 27001.
Najczęstsze pytania
Testy aplikacji mobilnych — pytania klientów
Powiązane usługi
Testy penetracyjne aplikacji webowych
Wspólny backend, kontrola dostępu i logika biznesowa w wersji przeglądarkowej.
Testy penetracyjne środowisk chmurowych
Infrastruktura, na której działa backend aplikacji mobilnej.
Usługi testów penetracyjnych
Pełna oferta testów i metodyka stosowana we wszystkich projektach.
Zobaczmy aplikację oczami kogoś, kto ma pełny dostęp do urządzenia
Prosimy o kontakt, aby ustalić zakres testu aplikacji mobilnej. Konsultacja wstępna jest bezpłatna i nie zobowiązuje do zamówienia usługi.
Prosimy o kontakt