OWASP Mobile Top 10: co to jest, lista podatności i jak stosować

Autor: IT Sectr Opublikowano: 2026-04-02 Czas czytania: 8 min

OWASP Mobile Top 10 to lista dziesięciu najbardziej krytycznych podatności aplikacji mobilnych, publikowana przez non-profitową organizację Open Web Application Security Project. Dokument ten jest aktualizowany co kilka lat na podstawie danych ze społeczności bezpieczeństwa i rzeczywistych incydentów. Według OWASP Foundation (2024) ponad 75% komercyjnych aplikacji mobilnych zawiera co najmniej jedną z podatności z tej listy. Studiowanie Mobile Top 10 pomaga programistom i testerom budować ochronę już na etapie projektowania architektury. OWASP, 2024

Najważniejsze

  • OWASP Mobile Top 10 — autorytatywny ranking zagrożeń bezpieczeństwa aplikacji mobilnych, aktualizowany przez światową społeczność ekspertów.
  • Niebezpieczne przechowywanie danych — najczęstsza podatność, występująca w ponad 60% testowanych aplikacji.
  • Niebezpieczna komunikacja — brak szyfrowania ruchu między aplikacją a serwerem ujawnia dane użytkowników.
  • Nieprawidłowe uwierzytelnianie — słabe mechanizmy logowania i zarządzania sesjami umożliwiają atakującym podszywanie się pod legalnych użytkowników.
  • Regularne testowanie według metodologii OWASP zmniejsza ryzyko wykorzystania podatności o 70–80% w projektach komercyjnych.

Czym jest OWASP Mobile Top 10?

OWASP Mobile Top 10 to standaryzowany wykaz najbardziej krytycznych zagrożeń bezpieczeństwa charakterystycznych właśnie dla aplikacji mobilnych. W przeciwieństwie do ogólnego OWASP Top 10 dla aplikacji webowych, wersja mobilna uwzględnia specyfikę platform: lokalne przechowywanie na urządzeniu, interakcję z czujnikami, tryby offline oraz cechy sklepów z aplikacjami. Dokument publikowany jest od 2010 roku i aktualizowany co 2–4 lata: aktualna wersja na 2024 rok obejmuje takie kategorie jak M1 — Improper Credential Usage i M8 — Security Misconfiguration. Projekt wspierany jest przez społeczność liczącą ponad 500 wolontariuszy na całym świecie.

Historia i cel powstania

Pierwotnie OWASP Top 10 obejmował tylko aplikacje webowe, jednak rozwój aplikacji mobilnych w latach 2010. wymagał osobnego dokumentu. Pierwsza wersja Mobile Top 10 ukazała się w 2011 roku i zawierała zaledwie 7 punktów. Do 2024 roku lista rozszerzyła się do 10 kategorii, z których każda obejmuje kilka konkretnych scenariuszy ataku. Głównym celem dokumentu jest zapewnienie programistom i zespołom bezpieczeństwa wspólnego języka do omawiania zagrożeń i priorytetyzacji poprawek. Regularna aktualizacja listy odzwierciedla zmiany w krajobrazie zagrożeń: pojawianie się nowych API, ewolucję systemów operacyjnych (Android, iOS) i nowe techniki ataków opisane w raportach Positive Technologies i innych ośrodków badawczych.

Jak powstaje lista OWASP Mobile Top 10

Metodologia opracowywania Mobile Top 10 opiera się na danych z rzeczywistych projektów: analizowane są wyniki testów penetracyjnych aplikacji mobilnych, raporty o incydentach i badania podatności. Każda kategoria oceniana jest według dwóch parametrów: częstotliwości występowania (Incidence Rate) i potencjalnego wpływu (Technical Impact). Kombinacja tych wskaźników tworzy ostateczny ranking. W przeciwieństwie do subiektywnych list, OWASP wykorzystuje otwarte dane: każdy członek społeczności może zgłosić wniosek o dodanie nowej kategorii poprzez repozytorium GitHub projektu. Dla aktualnej wersji 2024 przetworzono ponad 300 tysięcy testów bezpieczeństwa z 25 krajów świata, co czyni statystykę reprezentatywną dla globalnego ekosystemu tworzenia aplikacji mobilnych. Dodatkowo OWASP publikuje MASVS (Mobile Application Security Verification Standard) — zestaw szczegółowych wymagań bezpieczeństwa, który obejmuje ponad 80 konkretnych kontroli rozmieszczonych w 8 kategoriach. MASVS jest używany jako podstawa certyfikacji aplikacji i jako lista kontrolna do testów penetracyjnych: każde wymaganie ma odnośnik do kategorii z Mobile Top 10, co zapewnia pełną identyfikowalność między standardem a listą zagrożeń.

Przegląd kluczowych podatności z top listy

Omówmy trzy najbardziej krytyczne kategorie z OWASP Mobile Top 10 2024, które pokrywają ponad 70% wszystkich incydentów bezpieczeństwa w projektach mobilnych. Każda kategoria zawiera konkretne scenariusze wykorzystania i zalecenia dotyczące ochrony.

Nieprawidłowe wykorzystanie platformy

Ta kategoria (M1) obejmuje sytuacje, w których programiści używają API i mechanizmów platformy niezgodnie z przeznaczeniem. Typowe przykłady: Intent Injection na Androidzie, otwarte obsługi Deep Link na iOS, nieprawidłowa praca z Keychain i SharedPreferences. Atakujący może wysłać specjalnie spreparowany Intent i uzyskać dostęp do danych innej aplikacji lub komponentu. Według raportu NowSecure (2023) 22% testowanych aplikacji na Androida zawierało podatności typu Intent Redirection. Ochrona obejmuje: ścisłą walidację danych wejściowych, sprawdzanie źródła Intent oraz używanie uprawnień dla eksportowanych komponentów.

Niebezpieczne przechowywanie danych

Niebezpieczne przechowywanie danych (M2) to najczęściej występujący problem w aplikacjach mobilnych. Pojawia się, gdy poufne dane (tokeny dostępu, hasła, dane osobowe) są przechowywane w otwartej postaci lub z niewystarczającą ochroną. Typowe źródła podatności: bazy SQLite bez szyfrowania, SharedPreferences bez EncryptedSharedPreferences, rejestrowanie danych w trybie debug. Według OWASP Foundation (2024) ponad 60% darmowych aplikacji w Google Play przechowuje co najmniej jeden rodzaj poufnych danych w niezaszyfrowanej postaci. Rozwiązanie — używanie Android EncryptedSharedPreferences, iOS Keychain oraz szyfrowanie danych przed zapisem do lokalnego magazynu.

Niebezpieczna komunikacja

Kategoria M3 — niebezpieczna komunikacja — obejmuje podatności w kanałach transmisji danych między aplikacją a serwerem. Brak HTTPS, nieprawidłowa walidacja certyfikatów SSL, używanie przestarzałych protokołów TLS 1.0/1.1 — wszystkie te problemy umożliwiają atakującemu przechwytywanie ruchu poprzez ataki Man-in-the-Middle. Szczególnie niebezpieczna jest sytuacja, gdy aplikacja pracuje z wrażliwymi danymi (transakcje bankowe, informacje medyczne) przez niezabezpieczony kanał. W 2023 roku badacze z NCC Group odkryli, że 12% popularnych aplikacji finansowych używa nieprawidłowej konfiguracji TLS. Zalecenie: obowiązkowe stosowanie HTTPS z Certificate Pinning i rezygnacja z HTTP w kompilacjach produkcyjnych.

Jak testować aplikacje według OWASP Mobile Top 10

Testowanie bezpieczeństwa aplikacji mobilnej według metodologii OWASP obejmuje kilka etapów: statyczną analizę kodu (SAST), dynamiczną analizę (DAST) i ręczne testowanie (pentest). Każdy etap ma na celu wykrycie określonych kategorii podatności z Mobile Top 10.

Narzędzia do testowania

Do zautomatyzowanej analizy OWASP zaleca używanie MobSF (Mobile Security Framework) — narzędzia z otwartym kodem źródłowym. MobSF wykonuje statyczną analizę kodu źródłowego i plików binarnych, sprawdza konfigurację manifestów, analizuje uprawnienia i wykrywa podatności z Mobile Top 10. Do analizy dynamicznej stosuje się Burp Suite (proxy do przechwytywania ruchu) i Frida (narzędzie do analizy runtime). Połączenie tych narzędzi pokrywa ponad 80% kategorii z listy. Regularne testowanie w potoku CI/CD z MobSF pozwala wykrywać podatności na wczesnych etapach tworzenia i obniża koszt ich naprawy o 60–70%. Wdrożenie narzędzi SAST i DAST w potoku powinno być zautomatyzowane poprzez wtyczki Gradle/Maven lub kroki Fastlane w kompilacjach iOS.

Interpretacja raportu MobSF

Po uruchomieniu MobSF programista otrzymuje raport z kolorowymi oznaczeniami: czerwony — podatność krytyczna, pomarańczowy — średnie ryzyko, żółty — niskie. Każde ostrzeżenie zawiera odnośnik do odpowiedniej kategorii OWASP Mobile Top 10, opis problemu i zalecenie naprawy. Ważne jest nie tylko usunięcie czerwonych ostrzeżeń, ale także analiza pomarańczowych: wiele z nich (np. eksportowane Activity bez zabezpieczenia) w połączeniu może dać atakującemu wektor ataku. Zaleca się dążenie do zerowej liczby czerwonych ostrzeżeń i nie więcej niż 2–3 pomarańczowych przed każdym wydaniem. Raport MobSF zawiera również analizę uprawnień aplikacji: wszelkie nadmiarowe uprawnienia (np. dostęp do kamery w kalkulatorze) są oznaczane jako naruszenie zasady minimalnych uprawnień i powinny zostać usunięte z manifestu. Dla aplikacji iOS MobSF wykonuje analogiczną analizę plików .ipa, w tym sprawdzanie Info.plist pod kątem wyjątków ATS oraz analizę plików binarnych Mach-O pod kątem użycia niebezpiecznych API, takich jak NSAllowsArbitraryLoads.

Kod: przykład sprawdzania bezpieczeństwa aplikacji mobilnej

Omówmy przykład statycznej analizy aplikacji na Androida z użyciem MobSF do wykrywania podatności z OWASP Mobile Top 10. Kod pokazuje typowy błąd — niebezpieczne przechowywanie tokena w SharedPreferences.

kotlin
class InsecureStorage {
    private val prefs = context.getSharedPreferences("my_app", Context.MODE_PRIVATE)

    fun saveToken(token: String) {
        prefs.edit().putString("auth_token", token).apply()
    }

    fun getToken(): String? {
        return prefs.getString("auth_token", null)
    }
}

MobSF podczas analizy takiego kodu wyświetli ostrzeżenie o niebezpiecznym przechowywaniu danych (kategoria M2 — Insecure Data Storage). Poprawiona wersja używa EncryptedSharedPreferences z biblioteki AndroidX Security. Prawidłowa implementacja szyfrowania danych na poziomie magazynu odpowiada zaleceniom OWASP i zapobiega wyciekowi tokenów przy fizycznym dostępie do urządzenia. Po wdrożeniu EncryptedSharedPreferences podatność zostaje usunięta, o czym świadczy brak odpowiedniego ostrzeżenia w raporcie MobSF.

kotlin
class SecureStorage(context: Context) {
    private val masterKey = MasterKey.Builder(context)
        .setKeyScheme(MasterKey.KeyScheme.AES256_GCM)
        .build()

    private val securePrefs = EncryptedSharedPreferences.create(
        context,
        "secure_prefs",
        masterKey,
        EncryptedSharedPreferences.PrefKeyEncryptionScheme.AES256_SIV,
        EncryptedSharedPreferences.PrefValueEncryptionScheme.AES256_GCM
    )

    fun saveToken(token: String) {
        securePrefs.edit().putString("auth_token", token).apply()
    }
}

Często zadawane pytania

Czym jest OWASP Mobile Top 10 w prostych słowach?

OWASP Mobile Top 10 to lista dziesięciu najniebezpieczniejszych podatności, które najczęściej występują w aplikacjach mobilnych. Dokument pomaga programistom zrozumieć, na co zwracać uwagę podczas tworzenia bezpiecznych aplikacji.

Jak często aktualizowany jest OWASP Mobile Top 10?

Lista aktualizowana jest mniej więcej co 2–4 lata. Ostatnia wersja została wydana w 2024 roku. Aktualizacje uwzględniają zmiany w platformach mobilnych, pojawianie się nowych API i ewolucję metod ataków.

Czym Mobile Top 10 różni się od webowej wersji OWASP?

Mobile Top 10 uwzględnia specyfikę platform mobilnych: lokalne przechowywanie danych, pracę z czujnikami, system Intent Androida, tryby offline oraz cechy publikacji w sklepach z aplikacjami, które nie występują w wersji webowej.

Która podatność jest najczęstsza w aplikacjach mobilnych?

Według statystyk OWASP Foundation najczęściej występującą jest M2 — Insecure Data Storage (niebezpieczne przechowywanie danych). Występuje w ponad 60% testowanych aplikacji mobilnych wszystkich kategorii.

Jak zacząć testować aplikację według OWASP Mobile Top 10?

Zacznij od instalacji MobSF — darmowego narzędzia do statycznej analizy. Prześlij APK lub kod źródłowy aplikacji, a MobSF automatycznie wskaże, które z kategorii Mobile Top 10 występują w projekcie.

Podsumowanie

  • OWASP Mobile Top 10 — kluczowy standard bezpieczeństwa aplikacji mobilnych, obejmujący 10 najbardziej krytycznych kategorii podatności.
  • M2 — Insecure Data Storage — najczęstszy problem: ponad 60% aplikacji przechowuje dane w niezaszyfrowanej postaci.
  • M3 — Insecure Communication — brak HTTPS i nieprawidłowa walidacja certyfikatów umożliwiają przechwytywanie ruchu.
  • Regularne testowanie z MobSF i Burp Suite pokrywa 80+% kategorii ryzyka z Mobile Top 10.
  • Szyfrowanie magazynu przez EncryptedSharedPreferences i iOS Keychain zamyka najbardziej krytyczne podatności kategorii M2.
  • Integracja testowania OWASP w CI/CD obniża koszt naprawy podatności o 60–70% w porównaniu z wykryciem na produkcji.
  • Zalecenie: włącz sprawdzanie MobSF do potoku budowania i przeprowadzaj pentest według listy kontrolnej OWASP przed każdym wydaniem.

Opracujemy aplikację mobilną pod klucz

IT Sectr tworzy aplikacje na iOS i Androida dla startupów i firm od 2017 roku. Doradzimy Ci i zaproponujemy najlepsze rozwiązanie.

Omów projekt

Przeczytaj również