This project provides a Python-based tool for injecting DLLs (Dynamic Link Libraries) into running processes. It's designed for educational purposes, debugging, and testing DLLs in a controlled environment. To successfully inject a DLL into a process, the script must be run with administrative privileges. This is necessary to allow the script to modify other processes, which is typically restricted to prevent unauthorized system changes.
- Inject a DLL into a specified process by name.
- Automatically resolve the process name to its PID.
- Simple command-line interface for easy operation.
- Error handling for common issues encountered during injection.
- You can also now download a GUI version on the Release Page Virustotal
- Python 3.6 or newer.
psutil
andpyinjector
Python packages.
- Ensure Python 3.6+ is installed on your system.
- Clone this repository or download the source code.
- Install required Python packages:
pip install psutil pyinjector
Run the tool from the command line, specifying the target process name and the path to the DLL you wish to inject:
python dll-injector.py <process_name> <path_to_dll>
For example, to inject example.dll
into targetapp.exe
, use:
python dll-injector.py targetapp.exe C:\path\to\example.dll
Contributions to the project are welcome. Please adhere to conventional coding standards and provide documentation for any new features or changes.
This project is open-source and free to use. It is released under the MIT License.
This tool is provided as-is without any warranty. The authors or contributors are not responsible for any misuse or damage caused by this tool. It is intended for educational and testing purposes only. Use it responsibly and ethically, ensuring you have appropriate permissions to interact with the target processes.