在Android上使用Frida

  • 在这篇教程里面,我们来演示一下如何在Android设备上进行函数跟踪。

设置你的Android设备

  • 在我们开始之前,请确保你的Android设备已经完成root操作。我们大部分的实验操作都是在Android4.4版本上进行的,但是Frida本身是支持从4.2到6.0的版本的,但是目前来说对Art的支持还是有限的,所以我们建议最后还是用使用Dalvik虚拟机的系统设备或者模拟器来进行尝试。
  • 除了一台root设备之外,还需要安装Android SDK工具,因为我们要用到它的 adb 工具。
  • 首先,下载最新的Android设备上的 frida-server (下载地址:https://github.com/frida/frida/releases),然后把这个文件在手机上运行起来:
  • 最后要注意的是,确保你的 frida-server 是以root权限运行的,在已经root过设备上,先运行su,然后再运行程序,即可确保是root权限运行的。
  • 接下来,使用adb看看设备是否连接正常:
  • 这个操作主要是为了确保adb守护进程在你的主控端电脑上运行正常,也同时保证Frida可以正常和设备进行通信。

快速冒烟测试

  • 现在,一切环境准备完毕,为了测试Frida是否准备正常,执行如下命令:
  • 这条命令应该会显示一个进程列表:
  • 有了以上这些准备,我们就可以顺畅的往下走了。

跟踪Chrome里的Open()函数

  • 现在我们就开始吧,在你的Android机器上启动Chrome App然后在你的主控端电脑上运行如下命令:
  • 现在你可以任意的在Chrome App里面任意玩耍啦,现在可以看到主控端的命令行关于 open() 的输出了:
  • 现在可以实时的修改JavaScript脚本,并且在Android的App里面深挖了。

构建自己的工具

  • 像是 Frida,Frida-trace 等这些工具确实很有用,但是有时候你会发现你还是需要定制自己更加个性化的功能,那就最好去读一下 FunctionsMessages 这两章,比如当你使用到 frida.attach() 的时候,其实底层调用的就是 frida.get_usb_device().attach()

更多相关文章

  1. Android设备到底侵犯了微软的什么专利
  2. android获得密钥
  3. 项目运行报错Error: Static interface methods are only support
  4. Android(安卓)APK反编译详解(附图)
  5. Android(安卓)调试桥
  6. Android的CTS测试
  7. Android(安卓)HelloWorld 例子
  8. android 旋转动画
  9. Android开发者必备的十个工具

随机推荐

  1. GestureDetector 和SimpleOnGestureListe
  2. 【Android】android使用Leaks检测内存泄
  3. ant编译android工程用批处理打包
  4. android Json解析——揭开json解析的神秘
  5. 解决android sdk中找不到tools目录Androi
  6. android 开发小记
  7. Android 6.0权限动态获取
  8. Android(安卓)Window类解析
  9. android 开发-Process and Thread
  10. cxf android客户端简单访问