https://github.com/ergrelet/forklib
Standalone version of forklib from winnie that works on all Windows 10/11 versions.
https://github.com/ergrelet/forklib
fork forklib win32 windows winnie
Last synced: 2 months ago
JSON representation
Standalone version of forklib from winnie that works on all Windows 10/11 versions.
- Host: GitHub
- URL: https://github.com/ergrelet/forklib
- Owner: ergrelet
- License: mit
- Created: 2021-12-27T00:19:08.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-12-29T00:42:56.000Z (over 3 years ago)
- Last Synced: 2025-04-27T15:49:18.280Z (about 1 year ago)
- Topics: fork, forklib, win32, windows, winnie
- Language: C
- Homepage:
- Size: 1.77 MB
- Stars: 7
- Watchers: 4
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Forklib
Standalone version of `forklib` from [winnie](https://github.com/sslab-gatech/winnie).
This version retrieves required `ntdll` symbols at run time and should work on
all Windows 10 and Windows 11 versions.
Keep in mind that this library is mainly aimed at providing a fork API for
fuzzing. Many Windows APIs (*e.g.*, `user32` APIs) won't work seemlessly in forked
processes.
## How to Build
```
cmake -B x64
cmake --build x64 --config Release -- -maxcpucount
```
## How to Use
PDBs for the `ntdll` DLLs that your system uses must be available, either from
the current working directory of the application or from a properly configured
symbol server path in the `_NT_SYMBOL_PATH` environment variable.
You must copy `dbghelp.dll` and `symsrv.dll` from the `ext` folder in your
harness' working directory for the symbols to be automatically fetched from a
SymSrv path.
Note: the public interface is different from winnie's original forklib.