This Nim example demonstrates injecting a DLL into a target process using direct syscalls via the SysCaller bindings.
- Nim 1.6+ (tested with Nim 2.2.4)
winimNim package (nimble install winim)SysCaller.dllpresent in the same directory and built with required exports
$ nim c -d:release InjectDLL.nim
$ InjectDLL.exe <pid> <dll_path><pid>: The process ID of the target process.<dll_path>: Path to the DLL you want to inject (e.g.,test.dll).
Example:
$ InjectDLL.exe 4242 test.dll- Make sure
SysCaller.dllis in the same directory asInjectDLL.exeor in your system PATH. - The DLL path can be relative or absolute; the injector will resolve it.
- Requires appropriate privileges to open the target process and inject code.
- Tested & Works only on Windows x64.