第六课、Objection使用技巧

第六课、Objection使用技巧

1、objection(免)root动态调试apk

tree -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/
    • image-20230210230318314
  • 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 可以直接curlRPC

  • 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.Mes
    sageActivity 绕过登录界面启动其他的service

  • android hooking list receivers 查看广播

  • android hooking list services 查看服务

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"Objection, wallbreaker"这个词组的意思可能是指在辩论或讨论中,对破除对方观点或阻碍的反对意见或观点。如果我要用300字回答这个问题,我会这样表达: 在辩论或讨论中, "objection, wallbreaker"是指提出反对意见或观点,意图破除或击破对方观点或阻碍。这个词组的出现通常是为了追求真实和公正的辩论,希望通过不同观点的碰撞促进智慧和认识的增长。 每个人都有自己的观点和立场,而辩论是一个相互交流、较量、甚至对抗观点的过程。当有人提出"objection, wallbreaker"时,他们可能持有不同的观点,希望通过辩论来找到真相或者找到更好的解决办法。 然而,在提出"objection, wallbreaker"时,我们也需要注意呈现我们的观点要公正和明晰。我们应该以理性的态度和充分的证据来支持我们的反对意见,而不是简单地提出不成熟的批评或个人攻击。 辩论中的"objection, wallbreaker"是一种促进思考和发展的机会。通过挑战和争论,我们可以更清晰地理解对方观点的有趣之处和缺点。这种挑战有助于增强我们的辩论能力、提升思维的灵活性,并可能在辩论过程中改变我们自己的立场。 总之,"objection, wallbreaker"是辩论中常见的现象之一,它代表了追求真相和理解的努力。在辩论中提出反对观点时,我们必须以开放和尊重的态度对待对方,并用理性的方式来支持我们的观点。通过这样的辩论,我们可以共同进步,获得深入的认识和智慧。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值