Podatności (Top 10)
Typowe podatności zgodnie z ostatnim wydaniem, OWASP Top 10 Mobile Risks na 2024 rok.


M1: Improper Credential Usage

M1: Improper Credential Usage
Nieprawidłowe zarządzanie danymi uwierzytelniającymi, takie jak hardcoded credentials, brak szyfrowania transmisji lub przechowywanie haseł na urządzeniu. Podatność umożliwia przejęcie kont, kradzież danych i nieautoryzowany dostęp do aplikacji.

M2: Inadequate Supply Chain Security

M2: Inadequate Supply Chain Security
Słabości bezpieczeństwa w łańcuchu dostaw, które mogą wpływać na aplikację mobilną. Podatność polega na braku odpowiedniego zabezpieczenia np. podatne lub złośliwe biblioteki, brak kontroli kodu, złośliwe zmiany podczas budowania aplikacji.

M3: Insecure Authentication & Authorization

M3: Insecure Authentication & Authorization
Podatność występuje, gdy aplikacja mobilna nieprawidłowo weryfikuje tożsamość użytkownika (authentication) lub nie sprawdza jego uprawnień (authorization). Może to prowadzić do przejęcia kont, wykonania operacji administracyjnych lub dostępu do danych przez osoby nieuprawnione.

M4: Insufficient Input/Output Validation

M4: Insufficient Input/Output Validation
Podatność polega na braku odpowiedniego sprawdzania danych wejściowych (input) oraz wyjściowych (output), co może prowadzić do ataków takich jak SQL injection, command injection, XSS, a także do wykonania złośliwego kodu, naruszenia integralności danych lub przejęcia systemu.

M5: Insecure Communication

M5: Insecure Communication
Podatność polega na przesyłaniu danych między aplikacją mobilną a serwerem lub innym urządzeniem w sposób niezabezpieczony (np. bez SSL/TLS lub z błędną walidacją certyfikatów). Może to prowadzić do przechwycenia poufnych danych, kradzieży tożsamości i ataków typu man-in-the-middle.

M6: Inadequate Privacy Controls

M6: Inadequate Privacy Controls
Podatność polega na niewystarczającej ochronie danych osobowych (PII), takich jak dane logowania, lokalizacja, dane zdrowotne, płatnicze czy identyfikatory użytkownika. Brak właściwych kontroli prywatności może prowadzić do naruszeń poufności, integralności lub dostępności danych użytkowników.

M7: Insufficient Binary Protection

M7: Insufficient Binary Protection
Podatność polega na braku zabezpieczeń aplikacji binarnej przed inżynierią wsteczną, manipulacją kodu i nieautoryzowanym rozpowszechnianiem. Atakujący mogą uzyskać dostęp do zaszytych sekretów (np. kluczy API), ominąć licencje lub zmodyfikować aplikację i wprowadzić ją ponownie do obiegu jako złośliwą kopię.

M8: Security Misconfiguration

M8: Security Misconfiguration
Podatność polega na błędnej lub nieoptymalnej konfiguracji aplikacji mobilnej, np. pozostawieniu domyślnych ustawień, zbędnych uprawnień, debugowania w wersji produkcyjnej lub niezabezpieczonej komunikacji. Może to prowadzić do przejęcia kont, wycieku danych i eskalacji uprawnień.

M9: Insecure Data Storage

M9: Insecure Data Storage
Podatność polega na niewłaściwym przechowywaniu danych w aplikacji mobilnej — np. brak szyfrowania, zapisywanie haseł w postaci jawnej, czy brak kontroli dostępu. Umożliwia to atakującym nieautoryzowany dostęp do danych wrażliwych, co może prowadzić do naruszeń prywatności, kradzieży tożsamości i strat finansowych.

M10: Insufficient Cryptography

M10: Insufficient Cryptography
Podatność polega na stosowaniu słabych, przestarzałych lub błędnie zaimplementowanych algorytmów kryptograficznych. Może to prowadzić do odszyfrowania danych, naruszenia ich integralności, podszywania się pod użytkownika lub naruszenia poufności.