一个 Magisk / KernelSU / APatch 模块,用于自动打包并运行 renef——一个针对 Android 的动态插桩工具包。
灵感来源于 magisk-frida。
MagiskRenef-{版本号}.zip重启后,renef_server 将自动以 UDS(Unix 域套接字)模式启动,监听抽象套接字 @com.android.internal.os.RuntimeInit。
在主机上使用 renef 客户端连接:
# 启动新进程
renef -s com.example.app -l your-script.lua
# 附加到正在运行的进程(先打开应用)
adb shell su 0 sh -c "pidof com.example.app" # 获取 PID
renef -a <PID> -l your-script.lua
重启后,检查 Root 管理器中的模块列表:
renef_server is running (UDS) — 运行正常renef_server failed to start — 请参阅故障排除查看服务器日志:
adb shell su 0 cat /data/local/tmp/renef_server.log
Failed to find libc base可能的原因:
SELinux 强制模式 — 在自定义 ROM / 三星设备上最常见的原因:
adb shell su -c setenforce 0
然后重试。如果成功,说明是 SELinux 阻止了 renef 的进程注入。
设备未 Root — renef_server 必须以 root 身份运行(uid 0)
架构错误 — 仅支持 ARM64
部分应用将所有 Activity 的 android:exported 设置为 "false"。-s(spawn)参数使用 monkey 命令,无法启动它们。请改用 -a(attach)参数:
# 1. 手动在设备上打开应用
# 2. 获取其 PID
adb shell su 0 sh -c "pidof com.example.app"
# 3. 附加
renef -a <PID> -l your-script.lua
一个 GitHub Actions 工作流每天运行。当检测到新的 renef 发布时,它会:
renef-v{VERSION}-android-arm64.tar.gzrenef_server 和 libagent.so# 安装 uv (https://docs.astral.sh/uv/)
uv run python3 main.py
# 强制重新构建
FORCE_RELEASE=1 uv run python3 main.py