返回介绍

在 Android 上使用 Frida

发布于 2025-01-02 22:31:48 字数 2254 浏览 0 评论 0 收藏 0

  • 在这篇教程里面,我们来演示一下如何在 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()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文