EasyHook 2.7.7097

This project supports extending (hooking) unmanaged code (APIs) with pure managed ones, from within a fully managed environment on 32- or 64-bit Windows XP SP2, Windows Vista x64, Windows Server 2008 x64, Windows 7, Windows 8.1, and Windows 10.

EasyHook currently supports injecting assemblies built for .NET Framework 3.5 and 4.0 and can also inject native DLLs.

Install-Package EasyHook -Version 2.7.7097
dotnet add package EasyHook --version 2.7.7097
<PackageReference Include="EasyHook" Version="2.7.7097" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EasyHook --version 2.7.7097
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

2.7.6789.0:
1. Support hooking far jumps even if not first instruction for x64 (#243)

2.7.6684.0:
1. x64 trampoline: ensure stack is 16 bytes aligned (#214 and #234)

2.7.6682.0:
1. Quoted service path to avoid path spaces vulnerability (outlined in CVE-2005-1185, CVE-2005-2938 and CVE-2000-1128)
2. Rename CLIENT_ID struct to DBG_CLIENT_ID (fix build error on Windows SDK 10.0.16299.0) (#225)
3. NuGet support for VS2017 (v141) native C/C++ package (#181)

2.7.6578.0:
1. Allow EasyLoad library path to be specified within Config class - only impacts managed remote hook (#220)
           
2.7.6270.0:
1. CreateAndInject now supports long command lines (#84 / #170)
2. RhCreateRemoveStealthThread now works for 64-bit targets (#91 / #159)
3. Added LhGetHookBypassAddress / LocalHook.HookBypassAddress to allow bypassing the hook and call original directly without having to be within the hook handler (#155)

2.7.6035.0:
1. MAX_HOOK_COUNT increased from 128 to 1024
2. CreateAndInject fixed to support injection across sessions (providing appropriate privileges).
3. RhCreateStealthRemoteThread fixed for 32-bit (still fairly experimental)  (#91)
4. 64-bit driver now preserves RAX register for trampoline (#78)

2.7.5870.0:
1. Added WOW64 boundary executables to NuGet package

Dependencies

This package has no dependencies.

Showing the top 8 GitHub repositories that depend on EasyHook:

Repository Stars
rubberduck-vba/Rubberduck
Every programmer needs a rubberduck. COM add-in for the VBA & VB6 IDE (VBE).
spazzarama/Direct3DHook
DirectX Capture and Overlays by using Direct3D API hooks
ChanpleCai/SmartTaskbar
A Lightweight Windows Taskbar Enhancement Utility
FuzzySecurity/Sharp-Suite
My musings with C#
ffMathy/Shapeshifter
A clipboard manager for the 21st century.
komefai/PS4Macro
Automation utility for PS4 Remote Play written in C#
xenolightning/AudioSwitcher
.NET Library which facilitates interacting with Audio Devices on Windows
tonyfederer/OutlookFileDrag
Drag and drop Outlook items as files into any application

Version History

Version Downloads Last updated
2.7.7097 2,012 6/7/2019
2.7.6789 8,950 8/3/2018
2.7.6684 5,935 4/20/2018
2.7.6682 1,067 4/18/2018
2.7.6578.1 4,070 1/4/2018
2.7.6270 9,038 3/2/2017
2.7.6035 6,367 7/10/2016
2.7.5870.9 1,961 3/7/2016