Lista kontrolna APK Androida

Reading time: 5 minutes

tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks

Poznaj podstawy Androida

Analiza statyczna

  • Sprawdź użycie obfuskacji, sprawdź, czy urządzenie mobilne było zrootowane, czy używany jest emulator oraz sprawdzenia antytamperowe. Przeczytaj to, aby uzyskać więcej informacji.
  • Wrażliwe aplikacje (jak aplikacje bankowe) powinny sprawdzić, czy urządzenie mobilne jest zrootowane i działać w konsekwencji.
  • Szukaj interesujących ciągów (hasła, URL, API, szyfrowanie, backdoory, tokeny, UUID Bluetooth...).
  • Szczególna uwaga na firebaseAPI.
  • Przeczytaj manifest:
  • Sprawdź, czy aplikacja jest w trybie debugowania i spróbuj ją "wykorzystać".
  • Sprawdź, czy APK pozwala na tworzenie kopii zapasowych.
  • Eksportowane Aktywności.
  • Dostawcy treści.
  • Ekspozycja usług.
  • Odbiorniki rozgłoszeniowe.
  • Schematy URL.
  • Czy aplikacja zapisuje dane w sposób niebezpieczny wewnętrznie lub zewnętrznie?
  • Czy jakiekolwiek hasło jest zakodowane na stałe lub zapisane na dysku? Czy aplikacja używa niebezpiecznych algorytmów kryptograficznych?
  • Wszystkie biblioteki skompilowane z użyciem flagi PIE?
  • Nie zapomnij, że istnieje wiele statycznych analizatorów Androida, które mogą bardzo pomóc w tym etapie.
  • android:exported obowiązkowe w Androidzie 12+ – źle skonfigurowane komponenty eksportowane mogą prowadzić do wywołania intencji zewnętrznych.
  • Przejrzyj Konfigurację zabezpieczeń sieci (networkSecurityConfig XML) pod kątem cleartextTrafficPermitted="true" lub specyficznych dla domeny nadpisów.
  • Szukaj wywołań do Play Integrity / SafetyNet / DeviceCheck – określ, czy niestandardowa atestacja może być podłączona/obejście.
  • Sprawdź Linki aplikacji / Linki głębokie (android:autoVerify) pod kątem problemów z przekierowaniem intencji lub otwartymi przekierowaniami.
  • Zidentyfikuj użycie WebView.addJavascriptInterface lub loadData*(), które mogą prowadzić do RCE / XSS wewnątrz aplikacji.
  • Analizuj pakiety wieloplatformowe (Flutter libapp.so, pakiety JS React-Native, zasoby Capacitor/Ionic). Dedykowane narzędzia:
  • flutter-packer, fluttersign, rn-differ
  • Skanuj zewnętrzne biblioteki natywne pod kątem znanych CVE (np. libwebp CVE-2023-4863, libpng, itp.).
  • Oceń reguły SEMgrep Mobile, Pithus oraz najnowsze wyniki skanowania wspomaganego AI MobSF ≥ 3.9 w poszukiwaniu dodatkowych ustaleń.

Analiza dynamiczna

Informacje o obfuskacji/deobfuskacji

tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks