Kiedy ludzie korzystają z aplikacji na Androida, zwykle nie przychodzi im do głowy to, co dzieje się w tle. Niestety opcja programowania zwana dynamicznym ładowaniem kodu może stwarzać zagrożenie bezpieczeństwa. Oto, co musisz o tym wiedzieć.
Co to jest ładowanie kodu dynamicznego?
W tworzeniu aplikacji cały kod źródłowy używany podczas budowania aplikacji stanowi bazę kodu. Dynamiczne ładowanie kodu umożliwia aplikacji pobieranie zawartości spoza bazy kodu i wykonywanie jej podczas operacji lub w czasie wykonywania.
Ta opcja może spowodować zmniejszenie rozmiaru aplikacji, ponieważ powszechną praktyką jest zdalne przechowywanie kodu zamiast osadzania go w Zestaw pakietu Android (APK).
Plik APK to format pliku używany przez system Android podczas dystrybucji i instalowania aplikacji. Zawiera wszystkie składniki, dzięki którym aplikacja może działać na kompatybilnym urządzeniu. Dynamiczne ładowanie kodu przynosi korzyści z punktu widzenia programowania, w tym takie, które poprawiają użyteczność aplikacji.
Na przykład aplikacja może pokazywać różne treści osobie w zależności od tego, czy korzysta ona z wersji bezpłatnej, czy premium. Dynamiczne ładowanie kodu może wyświetlać prawidłową zawartość w oparciu o warstwę użytkownika bez zwiększania rozmiaru APK.
Ponadto dynamiczne ładowanie kodu umożliwia programistom wydawanie nowych wersji aplikacji zawierających drobne zmiany. Użytkownicy otrzymują najnowsze wersje bez pobierania czegokolwiek.
Pomimo tych zalet, dynamiczne ładowanie kodu może zwiększać ryzyko związane z bezpieczeństwem aplikacji na Androida.
Złośliwe aplikacje często obsługują dynamiczne ładowanie kodu
Autorzy artykułu badawczego z 2019 r. przeanalizowali złośliwe aplikacje na Androida, aby znaleźć ich cechy wspólne. Przytoczyli poprzednie badania przeprowadzone przez inne strony, które wykazały dynamiczne ładowanie kodu jako najważniejszą cechę niebezpiecznych aplikacji.
Prawie 20 000 z 86 798 aplikacji w jedno śledztwo miał dynamiczne ładowanie kodu.
Dalsze wyjaśnienia wskazały, że ludzie umieszczają podstawową funkcjonalność niebezpiecznej aplikacji w niezależnych bibliotekach, a następnie używają dynamicznego ładowania kodu, aby ją uruchomić. Takie podejście chroni złośliwe zachowanie aplikacji, dzięki czemu jest mniej wykrywalne.
Dokumentacja Google Informacje o typach wykrytego złośliwego oprogramowania wyjaśniają nawet, że nieprawidłowe użycie kodu dynamicznego może zostać oznaczone jako odmiana backdoora. Firma definiuje złośliwe oprogramowanie typu backdoor jako wykonujące potencjalnie szkodliwe, zdalnie kontrolowane działania na urządzeniu. Następnie podał przykład dynamicznego ładowania kodu, który umożliwia aplikacji wyodrębnianie wiadomości tekstowych.
Jednak Google twierdzi, że sprawdza, czy wykonanie kodu wyraźnie powoduje złośliwe zachowanie. Jeśli nie, firma traktuje wykonanie dowolnego kodu jako lukę, którą programista może załatać.
W przypadku niebezpiecznych aplikacji wykonanie dowolnego kodu umożliwia hakerowi zdalne wykonywanie poleceń na docelowym urządzeniu.
Badacze identyfikują problem z ładowaniem kodu dynamicznego
Google często podejmuje zdecydowane działania w celu zwiększenia bezpieczeństwa użytkowników. Na przykład pliki cookie stron trzecich śledzą użytkowników, zapisują ich informacje, a później wykorzystują je do wyświetlania im ukierunkowanych reklam. Jednak firma będzie blokować pliki cookie innych firm w przeglądarce Chrome do 2022 roku. Nie podał konkretnej daty zmiany.
Skupienie się na bezpieczeństwie nie sprawia jednak, że firma jest wolna od problemów. Badacze cyberbezpieczeństwa odkryli trwałe wykonywanie dowolnego kodu w ramach Aplikacja Google i zgłosił to firmie. Problem został naprawiony w maju 2021 roku, ale sprawił, że więcej osób zwróciło uwagę na potencjalne problemy związane z dynamicznym ładowaniem kodu.
Badacze potwierdzili, że luka umożliwiłaby atakującemu tylko jednorazowe uruchomienie aplikacji przed kradzieżą danych Google danej osoby. Haker może wykorzystać lukę w aplikacji Google, aby pobrać bibliotekę kodu z niebezpiecznej aplikacji na urządzeniu danej osoby.
Stamtąd cyberprzestępca mógł uzyskać dostęp do prawie wszystkich danych Google danej osoby, w tym jej e-maili. Mogą nawet aktywować mikrofon, kamerę i informacje o lokalizacji użytkownika w czasie rzeczywistym.
Zwróć uwagę na ostrzeżenia o niebezpiecznych lukach w aplikacjach
Ponieważ dynamiczne ładowanie kodu odbywa się pod koniec programowania, przeciętny użytkownik aplikacji nie może nic zrobić, aby zweryfikuj, czy dana oferta może nieść ze sobą ukryte zagrożenia związane z funkcjonowaniem tło. Jednak mądrze jest mieć oko na jakiekolwiek Bezpieczeństwo aplikacji na Androida wiadomości, które trafiają na nagłówki techniczne.
Badacze cyberbezpieczeństwa nieustannie szukają problemów, które mogą narazić na niebezpieczeństwo setki tysięcy użytkowników aplikacji, a następnie zgłaszają je. Świadomość potencjalnych zagrożeń związanych z aplikacjami pomoże użytkownikom zdecydować, czy i kiedy zaktualizować lub usunąć potencjalnie problematyczną aplikację.
Te aplikacje na Androida są niezwykle popularne, ale zagrażają również bezpieczeństwu i prywatności. Jeśli masz je zainstalowane, po przeczytaniu tego zechcesz je odinstalować.
Czytaj dalej
- Wyjaśnienie technologii
- Android
- Bezpieczeństwo
- Bezpieczeństwo smartfona
- Złośliwe oprogramowanie
Shannon jest twórcą treści z siedzibą w Philly, PA. Pisze w branży technologicznej od około 5 lat po ukończeniu studiów na kierunku informatyka. Shannon jest redaktorem naczelnym magazynu ReHack i zajmuje się tematami takimi jak cyberbezpieczeństwo, gry i technologia biznesowa.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.