MASTG-TECH-0006: 列出已安装应用

当以设备上安装的应用程序为目标时,您首先需要确定要分析的应用程序的正确包名。您可以使用 pm (Android 包管理器) 或 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

您可以包含标志以仅显示第三方应用程序 (-3) 及其 APK 文件的位置 (-f),然后您可以使用 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

这与在应用程序包 ID 上运行 adb shell pm path <app_package_id> 相同

$ adb shell pm path sg.vp.owasp_mobile.omtg_android
package:/data/app/sg.vp.owasp_mobile.omtg_android-kR0ovWl9eoU_yh0jPJ9caQ==/base.apk

使用 frida-ps -Uai 获取当前安装在已连接 USB 设备 (-U) 上的所有应用程序 (-a) (-i)

$ 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

请注意,这也会显示当前正在运行的应用程序的 PID。记下“Identifier”和 PID(如果有),因为您之后需要它们。