环境搭建
在Ubuntu22.04.5中进行Frida的编译以及魔改。
Ubuntu22.04.5镜像下载地址:
Verifying - USTC Mirrors
我下面的操作在~目录下进行,在其它目录也可以,看个人喜好。
安装git、curl
在~目录下执行命令:apt install git

执行命令:apt instll curl

下载frida-core
在~目录下执行命令:git clone 121K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6X3M7X3W2V1j5g2)9J5c8X3k6J5K9h3c8S2i4K6u0V1j5$3!0J5k6g2)9J5k6h3N6A6N6l9`.`.
然后在~/frida-core目录下执行命令:git submodule update --init --recursive
初始化并更新子模块

这一步是下载frida-core的子项目。
下载florida
在~目录下执行命令:git clone 2a9K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6k6L8r3q4J5L8$3c8Q4x3V1k6r3L8r3!0J5K9h3c8S2i4K6u0W2k6$3W2@1

安装Node.js
Node.js的版本至少是18.+
在任意目录下执行命令:curl -o- 264K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6J5j5i4N6Q4x3X3g2Y4K9i4c8Z5N6h3u0#2M7$3g2J5j5$3!0F1N6r3g2F1N6q4)9J5k6h3y4G2L8g2)9J5c8X3&6$3L8g2)9J5k6s2y4Z5i4K6u0r3L8Y4k6E0i4K6u0r3N6U0m8Q4x3X3f1K6z5g2)9J5k6e0g2Q4x3V1k6A6L8Y4y4@1j5h3I4D9i4K6u0W2M7$3R3`. | bash 通过nvm的安装脚本来安装nvm。

执行命令:source ~/.bashrc 使nvm安装脚本写入~/.bashrc文件的配置生效
执行命令:nvm install 18 安装Node.js

执行命令:nvm alias default 18 避免每次重启终端需重新切换
执行命令:node -v 检查版本

安装Android NDK
注意:NDK的版本必须是r25
在~目录下执行命令:wget -c f6eK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1L8q4)9J5k6h3N6G2L8$3N6D9k6g2)9J5k6h3y4G2L8g2)9J5c8X3q4F1k6s2u0G2K9h3c8Q4x3V1k6J5k6i4m8G2M7$3W2@1L8%4u0&6i4K6u0r3j5h3&6V1M7X3!0A6k6q4)9J5k6r3&6V1K9#2)9J5k6s2t1J5y4g2)9J5k6r3I4A6L8Y4g2^5i4K6u0W2P5X3W2H3i4K6t1$3L8s2c8Q4x3@1t1`. 下载NDK

执行命令:unzip android-ndk-r25-linux.zip 将下载的zip文件解压

设置环境变量 ,执行命令:
1 2 | echo 'export ANDROID_NDK_ROOT=~/android-ndk-r25' >> ~/.bashrc
echo 'export PATH=$PATH:$ANDROID_NDK_ROOT' >> ~/.bashrc
|

使用命令:source ~/.bashrc,让配置生效
使用命令:ndk-build --version,验证NDK是否安装成功。

配置git全局用户信息
1 2 | git config --global user.email "you@example.com"
git config --global user.name "Your Name"
|
进行编译
使用Florida补丁修改frida源码
在~/frida-core目录下创建一个目录patch,命令:mkdir patch

执行命令:cp -r ~/Florida/patches/frida-core ~/frida-core/patch/ 将~/Florida/patches目录下的frida-core目录复制到~/frida-core/patch中

在~/frida-core目录下执行命令:git am patch/frida-core/*.patch

编译frida-server
在~/frida-core目录下,执行命令:./configure --host=android-X86_64

如果这一步出现报错:
1 2 | no C++ compiler found
或则no C comiler found
|
执行下面的命令:
1 2 | sudo apt update
sudo apt install build-essential g++ gcc make cmake
|
然后继续。
执行命令:make
在这一步如果出现报错,显示缺少某个文件,但是去查看发现有这个文件,那么就使用chmod +x <文件名>命令,给这个文件可执行权限即可。
然在在~/frida-core/build目录可以看到生成的frida-server

[培训]Windows内核深度攻防:从Hook技术到Rootkit实战!
最后于 2025-8-18 14:30
被白衣23编辑
,原因: