Poros is a dynamic instrumentation tool for android developers, reverse-engineers, similar in functionality to Frida. It utilizes the Xposed module to facilitate the injection of Java and Native codes on rooted Android devices.
Two ways to use the tool:
for example:
$ poros-Darwin-x86_64 -p com.android.settings -f ./xposed_module_sample.apk
use -h
to get the help doc:
$ poros-Darwin-x86_64 -h
Usage: poros-Darwin-x86_64 [OPTIONS] --package-name <PACKAGE_NAME>
Options:
-p, --package-name <PACKAGE_NAME> target application's package name
-f, --file-path <FILE_PATH> path of the xposed plugin to inject
-q, --quick whether use the quick mode
-m, --non-ptrace whether use the non-ptrace mode
-h, --help Print help
-V, --version Print version
poros_shell_cmd.tar.gz
file on the release page, and unzip it;./start.sh -p com.android.settings -f ./xposed_module_sample.apk
-q
parameter for a quicker injection. Use this parameter when injecting into the same app for the second time to enhance injection performance.This is a xposed module sample project that contains the Java hook and native hook:
XposedModuleSample
Two ways to build:
- Clone this project.
- Change parameters
ANDROID_NDK_HOME
in file/core/build.sh
to the android ndk directory.- Run the file
build.sh
to build this the whole project.- shell command file is in the
output
directory, the executable command line tool is the this directory:cli/target/release/poros
, either can do the injection.
Android Root环境下动态注入Java和Native代码的实践
This project is licensed under the Apache License 2.0.