跳过内容

MASTG-TOOL-0029: Android 版 objection

Objection 提供了几个专门针对 Android 的功能。 您可以在项目的页面上找到完整的功能列表,但这里有一些有趣的功能

  • 重新打包应用程序以包含 Frida gadget
  • 禁用常用方法的 SSL pinning
  • 访问应用程序存储以下载或上传文件
  • 执行自定义 Frida 脚本
  • 列出 Activity、Service 和 Broadcast receiver
  • 启动 Activities

如果您有一个安装了 frida-server 的 root 设备,Objection 可以直接连接到正在运行的 Frida 服务器,从而提供其所有功能,而无需重新打包应用程序。 但是,并非总是可以 root Android 设备,或者应用程序可能包含用于 root 检测的高级 RASP 控制,因此注入 frida-gadget 可能是绕过这些控制的最简单方法。

在非 root 设备上执行高级动态分析的能力是使 Objection 非常有用的功能之一。 按照重新打包流程( 重新打包和重新签名)后,您将能够运行所有上述命令,这使得快速分析应用程序或绕过基本安全控制变得非常容易。

在 Android 上使用 Objection

启动 Objection 取决于您是否已修补 APK,或者您是否正在使用运行 Frida-server 的 root 设备。 对于运行修补的 APK,objection 将自动找到任何连接的设备并搜索正在侦听的 Frida gadget。 但是,当使用 frida-server 时,您需要明确告诉 frida-server 您想要分析哪个应用程序。

# Connecting to a patched APK
objection explore

# Find the correct name using frida-ps
$ frida-ps -Ua | grep -i telegram
30268  Telegram                               org.telegram.messenger

# Connecting to the Telegram app through Frida-server
$ objection --gadget="org.telegram.messenger" explore

进入 Objection REPL 后,您可以执行任何可用的命令。 以下是一些最有用的命令的概述

# Show the different storage locations belonging to the app
$ env

# Disable popular ssl pinning methods
$ android sslpinning disable

# List items in the keystore
$ android keystore list

# Try to circumvent root detection
$ android root disable

有关使用 Objection REPL 的更多信息,请参见Objection Wiki