Files
violet-devsec 6fd51cf0e9 README updated
2025-09-13 13:24:11 +01:00

41 lines
1.3 KiB
Markdown

# Windows x64 shellcode to load DLL from memory
A reflective DLL injector written in x64 ASM language. This does the minimum required operations to load a DLL which is loaded in memory(no need to be on disk).
This is done step by step as,\
1. Calculate the DLL's current base address\
2. Process the kernels exports for the functions our loader needs\
3. Load our image into a new permanent location in memory\
4. Load in all of our sections\
5. Process DLL image's import table\
6. Process all of DLL image's relocations\
7. Call the DLL entry point
These steps are followed from https://github.com/stephenfewer/ReflectiveDLLInjection
### Steps to try:
- [Compiling target.dll](#CompilingDll)
> g++ -shared -o target.dll target.cpp -Wl,--out-implib,libtdll.a
- [Compiling shellcode to binary](#CreateShellcode)
> python shellcode.py (This step will create shellcode.bin which is shellcode+target.dll)
- [Compiling loader.exe](#CompilingExe)
> g++ loader.c -o loader.exe
- [Running loader.exe](#RunningExe)
> loader.exe shellcode.bin
![screenshot](images/out.png)
## Usage
Examples and instructions for using the project.
## Contributing
Guidelines for contributing to the project.
- [Contributing](#contributing)
## License
Information about the project's license.
- [License](#license)