Omgekeerde Native Biblioteke

Reading time: 3 minutes

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

Vir verdere inligting, kyk: https://maddiestone.github.io/AndroidAppRE/reversing_native_libs.html

Android-apps kan native biblioteke gebruik, tipies geskryf in C of C++, vir prestasiekritieke take. Malware-skeppers gebruik ook hierdie biblioteke, aangesien dit moeiliker is om om te keer as DEX bytecode. Die afdeling beklemtoon omgekeerde ingenieursvaardighede wat op Android toegespits is, eerder as om assembler tale te leer. ARM en x86 weergawes van biblioteke word verskaf vir kompatibiliteit.

Sleutelpunte:

  • Native Biblioteke in Android Apps:
  • Gebruik vir prestasiewe intensive take.
  • Geskryf in C of C++, wat omgekeerde ingenieurswerk uitdagend maak.
  • Gevind in .so (gedeelde objek) formaat, soortgelyk aan Linux binêre.
  • Malware-skeppers verkies native kode om analise moeiliker te maak.
  • Java Native Interface (JNI) & Android NDK:
  • JNI laat Java-metodes toe om in native kode geïmplementeer te word.
  • NDK is 'n Android-spesifieke stel gereedskap om native kode te skryf.
  • JNI en NDK verbind Java (of Kotlin) kode met native biblioteke.
  • Biblioteek Laai en Uitvoering:
  • Biblioteke word in geheue gelaai met System.loadLibrary of System.load.
  • JNI_OnLoad word uitgevoer tydens biblioteeklaai.
  • Java-verklaarde native metodes skakel na native funksies, wat uitvoering moontlik maak.
  • Koppeling van Java Metodes aan Native Funksies:
  • Dinamiese Koppeling: Funksienaam in native biblioteke pas by 'n spesifieke patroon, wat outomatiese koppeling moontlik maak.
  • Statische Koppeling: Gebruik RegisterNatives vir koppeling, wat buigsaamheid in funksienaam en struktuur bied.
  • Omgekeerde Ingenieursgereedskap en Tegnieke:
  • Gereedskap soos Ghidra en IDA Pro help om native biblioteke te analiseer.
  • JNIEnv is noodsaaklik om JNI-funksies en interaksies te verstaan.
  • Oefeninge word verskaf om te oefen met die laai van biblioteke, die koppeling van metodes, en die identifisering van native funksies.

Hulpbronne:

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks