第六课、Objection使用技巧

查看 63|回复 5
作者:胡凯莉   
第六课、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 apksigner
  • apt install zipalign
  • objection patchapk --source falao2.apk
    2、objection 内存漫游和组件控制
  • android hooking list classes  查看所以类
  • env  显示包的cache 主要的缓存在哪里  主要的文件在哪
  • memory list modules   查看进程加载的so
  • memory 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  Bitmap
  • android hooking watch class ^Iandroid .graphics Bitmap
  • android .graphics Bitmap 安卓源码中找的
  • 把这个相关所有方法都hook上  没有hook构造函数
  • jobs list 查看hook‘了多少函数
  • 手机往下拉  图片开始加载  看什么函数会被触发
  • 这就是trace
  • job 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-dexdump
  • pip3 install frida-dexdump
  • frida-dexdump -U -f com.app.pkgname
  • When 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 的 RPC
  • objection 启动命令后面带参数 --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    找到所有的service
  • android intent launch_activity com.cz.babySister.activity.MessageActivity    绕过登录界面启动其他的service
  • android hooking list receivers   查看广播
  • android hooking list  services  查看服务

  • 函数, 方法

  • nagra   

    能麻烦你合并一下帖子吗,每四课发一个主题
    zjh889   

    五。去哪了?
    111wdw   

    是呀,最好多个帖子合并一下!
    xueshanshi2   

    我是来学习的
    zjh889   

    有其他课的链接就更好了,谢谢分享
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部