安装

安装Frida并配置好使用只需要几分钟。如果你遇到了什么麻烦,请 提交issue(或者pr)来描述你遇到的问题。

Frida’s CLI 工具的依赖

安装 Frida’s CLI 工具非常简单直接,但是你还是有一些依赖。

  • Python – 强烈推荐最新的 3.x
  • Windows, macOS, or GNU/Linux

使用 pip 安装

安装 Frida’s CLI 工具最好的方法就是通过 PyPI:

$ pip install frida-tools

如果你在安装Frida的时候还是有问题,请查看疑难解答 页面或者在Frida社区 报告issue,这会让Frida变得更好。

手动安装

还有一些其他的二进制文件也可以从 Frida’s GitHub releases 页面下载.

测试安装是否成功

启动一个用于测试的进程:

$ cat

让该进程就这么干等着输入。如果你用的是Windows,你可能会比较想用 notepad.exe.

你需要注意,这个例子在macOS El Capitan以及后续的版本里运行。该系统会阻止类似的针对系统的二进制文件的操作。 你可以点击 这里 查看更多细节。 不过, 你可以把系统内的 cat 二进制拷贝出来, 比如 /tmp/cat 然后再运行本例子,应该就没问题了 :

$ cp /bin/cat /tmp/cat
$ /tmp/cat

在另一个终端里,我们编写如下的脚本,命名为 example.py,内容如下:

import frida

def on_message(message, data):
    print("[on_message] message:", message, "data:", data)

session = frida.attach("cat")

script = session.create_script("""
rpc.exports.enumerateModules = () => {
  return Process.enumerateModules();
};
""")
script.on("message", on_message)
script.load()

print([m["name"] for m in script.exports.enumerate_modules()])

如果你使用 GNU/Linux, issue:

$ sudo sysctl kernel.yama.ptrace_scope=0

来开启非子进程的ptracing。

现在我们可以让Frida真正发挥作用了! 运行 example.py :

$ python example.py

输出结果应该和下面类似(具体输出取决于你的平台和使用的库版本):

['cat', , 'ld-2.15.so']