Job description
Witam serdecznie,
Zlecę przygotowanie prezentacji dotyczącej „Bezpieczeństwo aplikacji mobilnych”. Prezentacja powinna w większości pokrywać poniższe zagadnienia:
1. Architektury mobilnych systemów operacyjnych
• iOS
• Android
2. Bezpieczeństwo z perspektywy użytkownika urządzenia:
• domyślnie dostępne sposoby zabezpieczeń urządzeń w danych systemach
• wpływ domyślnych zabezpieczeń urządzeń na bezpieczeństwo aplikacji
• data wiping
3. Mechanizmy bezpieczeństwa dostarczane developerom przez producentów systemów. Między innymi:
• system uprawnień (Android)
• Data Protection (iOS)
• Keychain (iOS)
4. Przełamywanie zabezpieczeń systemów:
• eskalacja uprawnień w systemach mobilnych (jailbreak)
• wpływ eskalacji uprawnień na bezpieczeństwo aplikacji
• dostęp do danych użytkowników (m.in. SMS, e-mail, dane GPS)
• analiza systemu plików (ich struktur i typów)
• przełamywanie szyfrowania danych
5. Bezpieczeństwo danych:
• zagrożenia związane z wykradaniem danych na przykładzie prawdziwych zdarzeń
• sposoby bezpiecznego przechowywanie kluczowych danych (login, hasło, klucze, dane osobowe)
• implementowanie szyfrowania w aplikacjach mobilnych
• zabezpieczanie aplikacji hasłem dostępowym
• bezpieczna komunikacja pomiędzy aplikacjami (wymiana danych) oraz komponentami (Android: Activity, Service, Broadcast receiver, Content Resolver)
• szyfrowanie baz danych
6. Bezpieczeństwo komunikacji:
• zagrożenia płynące z “transportu” danych
• poprawna, bezpieczna implementacja aplikacji klient-serwer
• mechanizmy szyfrowania (SSL/TLS)
• wykorzystanie PKI (Public Key Infrastructure)
7. Bezpieczeństwo aplikacji:
• analiza sposobów dystrybucji aplikacji i ryzyka z nią związane
• analiza form binarnych aplikacji i ich dystrybucji (m.in. odex, Mach-O, ipa, apk)
• Reverse Engineering aplikacji (m.in. Cycript, baksmali, apktool)
• utrudnianie analizy kodu i modyfikacji działania aplikacji (m.in. blokowanie debugerów, obfuskacja kodu, ASLR)