Bezpieczny i elastyczny system zdalnej konfiguracji i monitorowania dla aplikacji mobilnych
Rozmiar pliku: 3.24 MB
Praca magisterska obroniona w PJATK.
Tytuł: Bezpieczny i elastyczny system zdalnej konfiguracji i monitorowania dla aplikacji mobilnych
Autor: Maciej Niszczota
Promotor: dr inż. Mariusz Trzaska, prof. PJATK
Streszczenie:
Praca podejmuje problematykę bezpiecznego i elastycznego zarządzania cyklem życia funkcjonalności w aplikacjach mobilnych funkcjonujących w środowisku o zerowym zaufaniu (ang. Zero Trust). Tradycyjne platformy zdalnej konfiguracji weryfikują tożsamość klientów za pomocą statycznych kluczy API, co ze względu na specyfikę systemów mobilnych czyni je wysoce podatnymi na inżynierię wsteczną, wycieki danych oraz ataki typu Man-in-the-Middle.
Głównym celem pracy było zaprojektowanie, zaimplementowanie i poddanie ewaluacji prototypu autorskiego systemu zdalnej konfiguracji, który eliminuje zidentyfikowane luki bezpieczeństwa poprzez oparcie autoryzacji na kryptograficznej, sprzętowej atestacji urządzeń. W ramach prac inżynierskich wytworzono rozproszone środowisko składające się z czterech głównych komponentów: serwera dystrybucyjnego zbudowanego w oparciu o framework Spring Boot, analitycznego panelu administracyjnego klasy SPA (Single Page Application) w technologii React/TypeScript, oraz dwóch dedykowanych bibliotek (SDK) wraz z aplikacjami referencyjnymi dla platform iOS (Swift) i Android (Kotlin).
Innowacyjność rozwiązania polega na integracji natywnych interfejsów Apple App Attest oraz Google Play Integrity z procesem uwierzytelniania, co uniemożliwia sfałszowanie zapytań o konfigurację przez emulatory, farmy botów czy skompromitowane urządzenia. Ponadto system implementuje mechanizm Server-Sent Events (SSE), zapewniając subsekundową latencję w dystrybucji flag funkcji, co pozwala na bezpieczną realizację wyłączników awaryjnych (kill-switch) i rzetelną orkiestrację testów A/B. Wyniki pracy udowadniają, że zastosowanie atestacji sprzętowej w architekturze Backend-for-Frontend pozwala na bezprecedensowe zabezpieczenie warstwy analityczno-konfiguracyjnej, redefiniując standardy bezpiecznego wdrażania i wydawania oprogramowania mobilnego.
Głównym celem pracy było zaprojektowanie, zaimplementowanie i poddanie ewaluacji prototypu autorskiego systemu zdalnej konfiguracji, który eliminuje zidentyfikowane luki bezpieczeństwa poprzez oparcie autoryzacji na kryptograficznej, sprzętowej atestacji urządzeń. W ramach prac inżynierskich wytworzono rozproszone środowisko składające się z czterech głównych komponentów: serwera dystrybucyjnego zbudowanego w oparciu o framework Spring Boot, analitycznego panelu administracyjnego klasy SPA (Single Page Application) w technologii React/TypeScript, oraz dwóch dedykowanych bibliotek (SDK) wraz z aplikacjami referencyjnymi dla platform iOS (Swift) i Android (Kotlin).
Innowacyjność rozwiązania polega na integracji natywnych interfejsów Apple App Attest oraz Google Play Integrity z procesem uwierzytelniania, co uniemożliwia sfałszowanie zapytań o konfigurację przez emulatory, farmy botów czy skompromitowane urządzenia. Ponadto system implementuje mechanizm Server-Sent Events (SSE), zapewniając subsekundową latencję w dystrybucji flag funkcji, co pozwala na bezpieczną realizację wyłączników awaryjnych (kill-switch) i rzetelną orkiestrację testów A/B. Wyniki pracy udowadniają, że zastosowanie atestacji sprzętowej w architekturze Backend-for-Frontend pozwala na bezprecedensowe zabezpieczenie warstwy analityczno-konfiguracyjnej, redefiniując standardy bezpiecznego wdrażania i wydawania oprogramowania mobilnego.
Słowa kluczowe: zdalna konfiguracja, flagi funkcji, testy A/B, atestacja sprzętowa, Zero Trust, bezpieczeństwo aplikacji mobilnych, Server-Sent Events, App Attest, Play Integrity
