Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/islipnot/wininject
Command line DLL injector for Windows 10 (unfinished).
https://github.com/islipnot/wininject
cpp dll-injector game-hacking windows-10 windows-internals
Last synced: 17 days ago
JSON representation
Command line DLL injector for Windows 10 (unfinished).
- Host: GitHub
- URL: https://github.com/islipnot/wininject
- Owner: islipnot
- Created: 2024-10-28T22:09:05.000Z (2 months ago)
- Default Branch: master
- Last Pushed: 2024-11-27T06:06:02.000Z (about 1 month ago)
- Last Synced: 2024-11-27T06:26:32.169Z (about 1 month ago)
- Topics: cpp, dll-injector, game-hacking, windows-10, windows-internals
- Language: C++
- Homepage:
- Size: 114 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# WinInject
- A 32 bit Windows 10 DLL injector, focused on manual map injection. Manual mapping logic is based on that of the Windows image loader.
- Multiple assumptions regarding the injected DLLs are made. [WinLoad](https://github.com/islipnot/WinLoad), another project of mine, is a much more accurate and detailed representation of the image loader.
- Manual mapping logic is based on my findings when reversing the image loader.## Usage
- Argument format: <TargetProcess> <DllPath> <Flags>
- TargetProcess must end in .exe
- DllPath must end in .dll### Flags
- "ManualMap": Manually maps the target DLL and its dependencies.
- "LoadLibrary": Uses LoadLibraryW to inject the target DLL.## Features
- Capable of LoadLibraryW and manual map injections.
- Resolves and maps all unloaded dependencies.
- Efficient resolution and handling of API sets and forwarders.
- TLS handled if a .tls section is detected.## Todo
- Improve TLS handling - if the injected dll hooks the main loop, there is currently undefined behavior on TLS access from the hook(s).
- Add ordinal import support.
- Optimize existing code.
- Create a GUI build.
- Add x64 support.## Screenshots
![initializing](.github/initializing.png)
![resolving](.github/resolving.png)