APK wygląda niewinnie.
W środku czeka zaciemniony malware.
Analiza aplikacji mobilnej nie kończy się na uruchomieniu skanera. Realne próbki ukrywają logikę w obfuskacji, refleksji, dynamicznym ładowaniu kodu i komunikacji z backendem. Tu liczy się metodyka: statyka, dynamika i korelacja zachowań.
Pierwszy etap: statyczne rozpoznanie
Zaczynamy od manifestu, uprawnień, receiverów, usług i aktywności. Szukamy nadmiarowych uprawnień, ukrytych entrypointów, bibliotek reklamowych i podejrzanych pakietów, które nie pasują do deklarowanej funkcji aplikacji.
Drugi etap: rozpakowanie i obfuskacja
Malware często zaciemnia stringi, ukrywa URL-e, ładuje klasy dynamicznie albo przesuwa właściwą logikę do natywnych bibliotek. Wtedy analiza polega na odtworzeniu ścieżki wykonania, a nie tylko na grepnięciu kodu.
Trzeci etap: obserwacja w środowisku kontrolowanym
Uruchamiamy próbkę w odizolowanym środowisku, monitorujemy ruch sieciowy, zapisy na dysku, próby eskalacji i dostęp do danych użytkownika. Wyniki statyczne i dynamiczne muszą się nawzajem potwierdzać.
Jak wygląda praktyczna weryfikacja
Brak jawnego złośliwego kodu w dekompilacji nie oznacza bezpieczeństwa. Wiele próbek pobiera właściwy moduł dopiero po uruchomieniu albo aktywuje go po spełnieniu warunków środowiskowych.
Na co zwracamy uwagę w raporcie
Nadmiarowe uprawnienia
SMS, kontakty, dostępność, overlay i notyfikacje to częste sygnały ryzyka.
Dynamiczne ładowanie
Kod pobierany po starcie omija prostą analizę statyczną i część kontroli sklepowych.
Kanał C2
Endpointy, certyfikaty i nietypowe protokoły pozwalają zbudować listę IOCs.
Masz aplikację mobilną do sprawdzenia?
Wykonujemy testy Android/iOS: reverse engineering, analiza storage, komunikacji API, pinningu TLS, auth i bezpieczeństwa danych.
Zapytaj o wycenę →