MASTG-TECH-0006: Listando Aplicativos Instalados
Ao direcionar aplicativos instalados no dispositivo, primeiro você precisará identificar o nome correto do pacote do aplicativo que deseja analisar. Você pode recuperar os aplicativos instalados usando o pm (Android Package Manager) ou o frida-ps:
$ adb shell pm list packages
package:sg.vantagepoint.helloworldjni
package:eu.chainfire.supersu
package:org.teamsik.apps.hackingchallenge.easy
package:org.teamsik.apps.hackingchallenge.hard
package:sg.vp.owasp_mobile.omtg_android
Você pode incluir flags para mostrar apenas aplicativos de terceiros (-3) e a localização do seu arquivo APK (-f), que você pode usar posteriormente para baixá-lo via adb pull:
$ adb shell pm list packages -3 -f
package:/data/app/sg.vantagepoint.helloworldjni-1/base.apk=sg.vantagepoint.helloworldjni
package:/data/app/eu.chainfire.supersu-1/base.apk=eu.chainfire.supersu
package:/data/app/org.teamsik.apps.hackingchallenge.easy-1/base.apk=org.teamsik.apps.hackingchallenge.easy
package:/data/app/org.teamsik.apps.hackingchallenge.hard-1/base.apk=org.teamsik.apps.hackingchallenge.hard
package:/data/app/sg.vp.owasp_mobile.omtg_android-kR0ovWl9eoU_yh0jPJ9caQ==/base.apk=sg.vp.owasp_mobile.omtg_android
Isso é o mesmo que executar adb shell pm path <app_package_id> em um ID de pacote de aplicativo:
$ adb shell pm path sg.vp.owasp_mobile.omtg_android
package:/data/app/sg.vp.owasp_mobile.omtg_android-kR0ovWl9eoU_yh0jPJ9caQ==/base.apk
Use frida-ps -Uai para obter todos os aplicativos (-a) atualmente instalados (-i) no dispositivo USB conectado (-U):
$ frida-ps -Uai
PID Name Identifier
----- ---------------------------------------- ---------------------------------------
766 Android System android
21228 Attack me if u can sg.vp.owasp_mobile.omtg_android
4281 Termux com.termux
- Uncrackable1 sg.vantagepoint.uncrackable1
Observe que isso também mostra o PID dos aplicativos que estão em execução no momento. Anote o "Identifier" e o PID, se houver, pois você precisará deles posteriormente.