在Android上使用Frida

转载请标明出处//www.greatytc.com/p/e19c566736fb   

接着前面的文章搭建好frida的环境之后,我们来尝试Android手机app的操作。

1. 在确保手机和电脑都已经配置好Frida的情况下,以及手机和电脑已经连接正常的情况下。
    执行adb shell su -c '/data/local/tmp/frida-server' 。运行手机的frida-server。(已经开启运行的就跳过这步吧)

2. 现在,一切环境准备完毕,为了测试Frida是否准备正常
    执行:frida-ps -U
    如果出现进程列表,就表示准备正常了。

3. 尝试 : 跟踪App里的Open()函数
    在我们的Android手机上启动我们要操作的APP,之后在电脑输入指令
    frida-trace -U -i open xxx(后面这个是你要操作的app的包名)

会看到如下图输出:

到此为止你可以任意的在App里面操作了,可以看到主控端的命令行关于 open() 的输出了

现在可以实时的修改JavaScript脚本,并且在Android的App里面深挖了。

    3.1 frida出现的问题

            这里我就遇到了:

            Failed to attach: unexpected error while attaching to process with pid 19267。
            这里我们还需要对selinux(完全不知道什么情况但是还好找到了办法解决)操作一下。
            adb shell su,进入到root权限之后,输入getenforce我们看到的是Enforcing,这里我们需要输入echo 0 > /sys/fs/selinux/enforce。
            之后再输入getenforce就会出现Permissive,问题就解决了。如下图(下图是我修改之后的所以是Permissive):

下图

            

4. 原文档提到:

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

最后,很感谢看雪大神翻译的Frida中文文档,感谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,919评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,502评论 2 59
  • 如需转载请注明出处 by SimonKoh 0x01 前言 关于android的hook以前一直用的xposed来...
    SimonKoh阅读 70,168评论 5 21
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    wgl0419阅读 11,506评论 1 9
  • 和William说话,难免会有很多不愉快的时候。好端端地聊着聊着,其中一个人就生气了。 明明是最喜欢的人,最在乎的...
    yosimi阅读 1,333评论 0 0

友情链接更多精彩内容