• mac本安装Frida


    目录

    目录

    介绍:

    1.安装frida

    2.安装木木模拟器

    3.下载frida服务端

    4. 安装adb工具

    5. 将frida-server 通过adb push指令推送到木木浏览器下的/data/local/tmp目录下,然后开启权限并启动

    6.查看是否启动成功 

    7.报错问题解决

    7.1断开或无法找到模拟器解决

    7.2 显示有多个设备

    介绍:

    Frida 是一个动态检测框架,并且一直是安全研究人员、渗透测试人员甚至不良行为者中最受欢迎的逆向工程工具。与其他挂钩框架(例如 Xposed 及其变体)相比,Frida 更加健壮,因为它有助于检测从不同语言(例如 Java、Objective-C、C、C++、C#)生成的二进制文件。由于 Frida 允许检测应用程序,因此企业、银行和政府应用程序等安全敏感应用程序部署了各种机制来检测 Frida 的存在。与 xposed 框架不同,frida 特定的工件仅在应用程序被挂钩时才会出现在应用程序的进程内存中。Frida 以多种模式运行,例如嵌入式模式和注入模式。

    1.安装frida

    一定要配置环境变量

    ⚠️这个还有一坑,就是Mac的配置文件需要修改和shell路径对应才生效。比如默认是zsh,如果只配置了bash,用zsh是不识别的。

    vim ~/.zshrc

    把环境变量写里,保存退出

    source ~/.zshrc

    vim ~/.bash_profile

    export PATH=/usr/local/bin:$PATH(举例)

     wq保存后编译一下环境变量

    source ~/.bash_profile

    本机环境mac 或者win10 (AMD64)都一样、python3。如果没更新pip,更具系统提示更新。例如:

    python3 -m pip install --upgrade pip

    pip install frida

     安装完成后frida后,再pip安装frida-tools 

    pip install frida-tools

    2.安装木木模拟器

    直接去官网下载. http://mumu.163.com/
    此过程省略… 下载后首先:

    开启模拟器的root权限

    打开模拟器USB调试,在开发者选项中。 

    3.下载frida服务端

    到 https://github.com/frida/frida/releases 下载相应的版本

    这里是给木木模拟器安装Android版本,所以下载下面这个:
    frida-server-12.8.20-android-x86_64.xz

    解压缩上面的文件,并且重命名为frida-server

    ====》❗️❗️❗️这里有坑,如果下载x86可能导致最后启动frida-ps -U时出现错误

    Failed to enumerate processes: unable to handle 64-bit processes due to build configuration

     getprop ro.product.cpu.abi---查看Android手机设备设置,找到对应下载版本 

    4. 安装adb工具

    1、安装brew

    /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

    2、安装adb,可能有点慢,请耐心等待

    brew install  android-platform-tools 

     3、检查是否安装成功,在终端输入

    adb version

    4 、使用adb查看app的包名

    后续使用objection的时候会用到包名

    adb shell pm list packages -3

    5. 将frida-server 通过adb push指令推送到木木浏览器下的/data/local/tmp目录下,然后开启权限并启动

    frida-server文件路径要写对

    adb root # might be required

    adb push frida-server /data/local/tmp/

    adb shell "chmod 777 /data/local/tmp/frida-server"

    adb shell "/data/local/tmp/frida-server &"

    6.查看是否启动成功 

    重新打开一个终端窗口, 执行下面的命令, 查看当前运行的进程. 有输出则说明启动成功.

    mac本:

    adb shell

    cd /data/local/tmp/

    ./frida-server

    另一个窗口输入

    frida-ps -U(显示包名)

    frida-ps -Ua(显示软件名)

    7.报错问题解决

    7.1断开或无法找到模拟器解决

    报错如下:

    adb: no devices/emulators found 

    可能是adb功能异常,需要重启adb,从启命令如下:

    (1)把adb服务杀死:adb kill-server
    (2)重启adb服务:adb reconnect

    7.2 显示有多个设备

    报错如下:

    error: more than one device and emulator 

    首先要查一下,是不是真的有多个设备或模拟器。

    # adb devices
    List of devices attached
    emulator-5554   device
    4dfadcb86        device
    如果有多个设备,那就需要为ADB命令指定设备的序列号了。
    #adb -s emulator-5554 shell
    也就是如上所示,给命令加上-s的参数就可以了!

    如果实际上只有一个设备或模拟器,并且查到有offline的状态;
    那就说明是ADB本身的BUG所导致的,就需要用如下的方法处理下了:
    # adb kill-server
    # taskkill /f /im adb.exe
    第一条命令是杀ADB的服务,第二条命令是杀ADB的进程!
    如果第一条没有用,才考虑用第二条命令再试试看的!

  • 相关阅读:
    React入门笔记(一)
    SAP ABAP OData 服务如何支持 $orderby (排序)操作试读版
    Flutter 关于序列化JSON之json_serializable库的使用
    【信号处理】基于CNN的心电(ECG)信号分类典型方法实现(tensorflow)
    java镜子之反射篇
    《Mysql》一条SQL更新语句是如何执行的
    K8S安装过程二:安装Keepalived服务
    数据结构————广度寻路算法 Breadth First Search(广度优先算法)
    HTTP协议总结
    关于传统迁移学习的一点概念
  • 原文地址:https://blog.csdn.net/y995zq/article/details/126746106