-
Notifications
You must be signed in to change notification settings - Fork 7
Home
Welcome to the Soinjector wiki!
The injector is a command-line tool that allows you to inject a shared library (i.e., a ".so" file) into a running process. This can be useful for a variety of purposes, including debugging, profiling, and modifying the behavior of an application at runtime.
To use the injector, you will need to provide the path to the shared library you wish to inject and the process ID of the target process. You can do this by running the following command:
sudo ./injector <lib_path> <pid>
Note that you must run the injector as root (i.e., with sudo) in order to have the necessary permissions to attach to the target process and inject the library.
To compile the injector, navigate to src
directory and run these commands:
chmod +x compiler
./compiler
After that you should be able to find your compiled binary at build
directory.
The injector has some limitations that you should be aware of:
- The target process must be running on the same machine as the injector.
- The injector may not work with all applications or libraries. Some libraries may not be compatible with the dynamic loading mechanism used by the injector, or may have their own mechanisms for preventing injection.
- Injecting libraries into a running process can be a dangerous operation, and can potentially crash the target process or cause other unintended behavior. Use the injector with caution and make sure you understand the implications of what you are doing.
Injector is a powerful tool for injecting shared libraries into running processes. With careful use and an understanding of its limitations, it can be a valuable tool for debugging and modifying the behavior of applications at runtime.