https://github.com/renarddev/renjack
Renard Injector (PE section injector with hooks)
https://github.com/renarddev/renjack
cpp injector pe reverse-engineering
Last synced: 6 months ago
JSON representation
Renard Injector (PE section injector with hooks)
- Host: GitHub
- URL: https://github.com/renarddev/renjack
- Owner: RenardDev
- License: mit
- Created: 2021-07-25T19:58:47.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-07-08T19:36:01.000Z (over 3 years ago)
- Last Synced: 2025-07-22T07:52:34.738Z (8 months ago)
- Topics: cpp, injector, pe, reverse-engineering
- Language: C++
- Homepage:
- Size: 5.84 MB
- Stars: 5
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Warning: The project is still in development.
# RenJack
Renard Injector (PE section injection with hooks)
# Principle of operation
1. Creates and embeds two/three sections.
2. Creates `.rxhooks` for hooks. (if /hookexports is active)
3. Creates `.rxdata` for custom data.
4. Fills the `.rxtext` section with NOP instructions.
5. Places the jump to the entry point at the end of the section.
6. Changes the original entry point to the beginning of the section.
7. If the payload parameters are marked, then the payload is placed at the beginning of the section.
# Usage
```
> RenJack
RenJack by Ren (zeze839@gmail.com) [Version 2.2]
[!] Warning: Usage: RenJack [/verbose:] [/maxdatasize:] [/maxcodesize:] [/disabledep] [/disableaslr] [/forceguardcf] [/noentrypoint] [/hookexports] [/hooksize:] [/hookalign:] [/input:] [/payload:] [/savepayload] [/outputpayload:] [/output:]
```
```
> RenJack /?
RenJack by Ren (zeze839@gmail.com) [Version 2.2]
[i] Usage: RenJack32 [/verbose:] [/maxdatasize:] [/maxcodesize:] [/disabledep] [/disableaslr] [/forceguardcf] [/noentrypoint] [/hookexports] [/hooksize:] [/hookalign:] [/input:] [/payload:] [/savepayload] [/outputpayload:] [/output:]
/verbose: - Verbosity level.
/maxdatasize: - Maximum `.rxdata` size. (Default: 4096)
/maxcodesize: - Maximum `.rxtext` size. (Default: 4096)
/disabledep - Disables DEP.
/disableaslr - Disables ASLR.
/forceguardcf - Force processing for GuardCF protected executable.
/noentrypoint - No entry point.
/hookexports - Hook exported functions in `.rxhooks` section.
/hooksize: - Hook size for one function. (Default: 16)
/hookalign: - Hook alignment size. (Default: 4)
/input: - Input PE executable.
/payload: - Input binary (.bin) or assembly file (.asm). (Default: null)
/savepayload - Save payload to binary file.
/outputpayload - Output payload binary. (Default: The name of the output file with `.bin` extension.)
/output: - Output PE executable. (Default: The name of the input file with patch prefix.)
```
```
RenJack /verbose:1 /input:RenJack.exe
```
# Sources
```
https://github.com/hMihaiDavid/addscn
https://github.com/chromadevlabs/exhume
```