Frida源码编译

官方教程

https://frida.re/docs/building/#gnulinux

1

这里我们也使用Ubuntu20.04进行编译.

开始编译

安装一些辅助工具

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
//设置root密码
sudo passwd root
//更新
apt update
//安装net工具,可以使用ifconfig
apt install net-tools
//文本编辑工具
apt install gedit
//代理工具,科学上网
apt install proxychains
//设置socks5代理
gedit /etc/proxychains.conf

安装官方推荐环境

1
2
proxychains apt-get install build-essential curl git lib32stdc++-9-dev \
    libc6-dev-i386 nodejs npm python3-dev python3-pip
1
2
//编译check-core-linux-x86_64的时候需要
proxychains apt-get install gcc-multilib g++-multilib

拉Frida源码

1
2
proxychains git clone --recurse-submodules https://github.com/frida/frida
cd frida

配置toolchain和sdk

官方toolchain和sdk下载链接如下:

其中20220318是frida中releng/deps.mk中的frida_deps_version,后面部分则是toolchain-{平台+架构}.tar.bz2

2

1
2
3
4
https://build.frida.re/deps/20220318/toolchain-linux-x86_64.tar.bz2
https://build.frida.re/deps/20220318/sdk-linux-x86_64.tar.bz2
https://build.frida.re/deps/20220318/sdk-android-arm.tar.bz2
https://build.frida.re/deps/20220318/sdk-android-arm64.tar.bz2

在frida文件夹下面新建build文件夹,使用wget将上述链接文件放进去.

接下来在frida文件夹下,执行下述命令.

1
releng/setup-env.sh

配置NDK

在frida文件夹下,执行下述命令,就会报需要的NDK版本.

1
make core-android-arm64

3

  1. 去官网下载NDK.

https://developer.android.google.cn/ndk/downloads/

1
2
//这里我们下载r24的Linux NDK
https://dl.google.com/android/repository/android-ndk-r24-linux.zip
  1. 解压上述下载的文件.
1
unzip android-ndk-r24-linux.zip
  1. 配置环境变量.
1
2
3
4
5
6
7
8
gedit ~/.bashrc   
//将下述内容添加到上述文件的末尾
export ANDROID_NDK_ROOT=/home/luohun/Desktop/android-ndk-r24
export PATH=$ANDROID_NDK_ROOT:$PATH

//检查是否配置成功
source ~/.bashrc
ndk-build --v

编译

在frida目录下执行make,会让你选择编译的平台,这里我们编译arm64平台的.

1
make core-android-arm64

最终产物在 frida/build/frida-android-arm64/bin目录下.

4


相关内容

0%