第六课、Objection使用技巧1、objection(免)root动态调试apktree -NCfhl |grep aapt 无脑搜重打包技术把apk解包 加入frida-gadget.so准备aapt 重打包【apk免root重打包连接objection/frida】objection的patchapk需要aapt、adb、jarsigner、apktool,其中apktool需要官网下载下,其他前仨在android-studio中就有:ln -s /root/Desktop/android-studio/jre/bin/jarsigner /usr/bin ln -s /root/Android/Sdk/build-tools/30.0.1/aapt /usr/bin ln -s /root/Android/Sdk/build-tools/30.0.1/aapt2 /usr/bin ln -s /root/Android/Sdk/platform-tools/adb /usr/bin 然后就是解压apk看下它里面的lib是哪个架构的,按架构来运行: # objection patchapk --architecture armeabi-v7a --use-aapt2 --source yourAPK.apk app启动后用objection/frida直接连上即可。 安装apktool https://ibotpeaches.github.io/Apktool/install/ apt install apksignerapt install zipalignobjection patchapk --source falao2.apk 2、objection 内存漫游和组件控制android hooking list classes 查看所以类env 显示包的cache 主要的缓存在哪里 主要的文件在哪memory list modules 查看进程加载的somemory list exports libpower.so 查看so导出的函数当结果太多,终端无法全部显示的时候,可以将结果导出到文件中,然后使用其他软件查看内容memory list exports libart.so --json /root/libart.json 在安卓的堆上搜索实例android heap search instances com.android.settings.DisplaySettings 调用实例的方法android heap execute 0x2526 getPreferenceScreenResId 直接上代码,想要进入显示设置,可以在任意界面直接运行以下代码进入显示设置:android intent launch_activity com.android.settings.DisplaySettings也可以先使用android hooking list services 3、objection类和方法动态trace例如找加载的图片的加解密地方肯定是要先下载展示 hook这个api Bitmapandroid hooking watch class ^Iandroid .graphics Bitmapandroid .graphics Bitmap 安卓源码中找的把这个相关所有方法都hook上 没有hook构造函数jobs list 查看hook‘了多少函数 手机往下拉 图片开始加载 看什么函数会被触发这就是tracejob kill ID接着hook可疑的函数android hooking watch class_method android.graphics.Bitmap.nativeRowBytes --dump-args -dump-backtrace --dump-return看调用栈打开jadx进行代码分析 4、objection+DEXDump 内存暴力脱壳内存中找魔术头https://github.com/hluwa/frida-dexdumppip3 install frida-dexdumpfrida-dexdump -U -f com.app.pkgnameWhen using, I suggest using the -d, --deep-search option, which may take more time, but the results will be more complete. 5、objection RPC 可以直接curl 的 RPCobjection 启动命令后面带参数 --enable-api.https://github.com/sensepost/objection/wiki/API 示例https://github.com/sensepost/objection/blob/master/agent/src/rpc/android.ts 更多方法 六、越权进去其他界面objection -g com.cz.babySister explore objection注入android hooking list activities 找到所有的serviceandroid intent launch_activity com.cz.babySister.activity.MessageActivity 绕过登录界面启动其他的serviceandroid hooking list receivers 查看广播android hooking list services 查看服务 函数, 方法