Android: Sådan omgås rodkontrol og certifikatspinding

For nylig havde jeg brug for at pentestere en Android-applikation. Da jeg installerede appen på min virtuelle enhed (Android Emulator), kom der en pop-up-meddelelse, der sagde "Denne app kan ikke køre i rodfæstede enheder" ... så jeg havde brug for en løsning.

Efter en hurtig Google-søgning fandt jeg den første måde ... at omgå ved hjælp af et "Xposed" -modul.

Omgå rodkontrol ved hjælp af Xposed: 1) Installer Xposed https://repo.xposed.info/module/de.robv.android.xposed.installer 2) Installer “RootCloak” (Xposed Module) 3) Åbn RootCloak> Tilføj / fjern apps > (vælg målapp) og tryk på den. 4) Udført! (åbn app, og kontroller, om det fungerer)

Desværre fungerede dette ikke for mig, så ... lad os gøre dette på den “hårde måde” (eller skal jeg sige… “old school”? :)).

Bypass-rodkontrol manuel måde: 1) Dekompilér APK-filen ved hjælp af “APKTool” # apktool d /path/to/apk/target.apk -o / path / to / output / (“d” for “dekompilere” og “-o ”For output dir) 2) De fleste roddetekteringsteknikker er afhængige af at kontrollere for filer på OS, der viser, at enheden er rodfæstet. Brug GREP til at søge efter en af ​​følgende strenge og ændre dem til noget tilfældigt: - Superbruger - Supersu - / su - / system/app/Superuser.apk - / system / bin - / system / bin / su - / system / sd / xbin - / system / xbin / su - / system / xbin - / data / local - / data / local / bin - / data / local / xbin - / sbin - / system / bin / failsafe - / leverandør / bin
Bemærk: Andre detektionsteknikker kigger efter en af ​​nedenstående installerede pakker på den mobile enhed under kørsel: - supersu.apk - Busybox - Root Cloak - Xpose framework - Cydia - Substrate
3) Byg den nye version af APK med APKTool: # apktool b / path / to / modificeret apk / target-new.apk -o / path / to / output / (“b” for “build” og “-o” for output dir)
4) Sign med jarsigner-værktøj # /path/to/my-key.keystore -storepass adgangskode -tast adgangskode target-new.apk alias_name
(Det kan være nødvendigt, at du genererer keystore først med keytool :) # keytool -genkey -v -keystore my-key.keystore -alias alias_name -keyalg RSA -keysize 2048-validitet10000
5) Endelig skal du installere den nye version og nyde!

Bonusspor: Hvis du har brug for at omgå Certificate Pinning (for at bruge appen med Burp Proxy for eksempel), kan du gøre dette:

Bypass-certificering fastgørelse med "Xposed" -modul: 1) Når du har Xposed installeret på din telefon, skal du søge efter "SSLUnpinning" -modul. Installer det. 2) Åbn SSLUnpinning, kig efter den app, som du forsøger at omgå certifikatspændingen, og vælg den.

Happy Hacking!

Alan “El Mago” Levy sikkerhedskonsulent Cinta Infinita

Om Cinta Infinita

Håber du kunne lide indlægget! Hvis du gerne vil kontakte os, bedes du besøge http://cintainfinita.com eller skrive til [email protected]