• Stars
    star
    391
  • Rank 110,003 (Top 3 %)
  • Language
    C#
  • Created over 3 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

C# Based Universal API Unhooker

SharpUnhooker

C# Based Universal API Unhooker - Automatically Unhook API Hives (ntdll.dll, kernel32.dll, advapi32.dll, and kernelbase.dll). SharpUnhooker helps you to evades user-land monitoring done by AVs and/or EDRs by cleansing/refreshing API DLLs that loaded on the process (Offensive Side) or remove API hooks from user-land rootkit (Defensive Side). SharpUnhooker can unhook EAT hooks, IAT hooks, and JMP/Hot-patch/Inline hooks. SharpUnhooker also equipped with AMSI and ETW patcher to break/disable them.

This tool is tested on Windows 10 v21H2 x64

Note

  • If you want to copy the code, Please dont forget to credit me.
  • If you want to see a good demonstration of SharpUnhooker, go check this blog post by Reigada.
  • Github doesn't like my Sublime Text indentation settings, so if you see some "weirdness" on the indentation, Im sorry.

Usage

Simply load the pre-compiled DLL or add the code function and call the Main function from the SharpUnhooker class. You can load the pre-compiled DLL on Powershell with Reflection.Assembly too! This code uses C# 5,so it can be compiled with the built-in CSC from Windows 10. The JMPUnhooker function is used to unhook JMP/Hot-patch/Inline hooks, the EATUnhooker function is used to unhook EAT hooks, and the IATUnhooker function is used to unhook IAT hooks. For now, the IATUnhooker and EATUnhooker cant unhook function import/export that uses ordinals instead of name. The Main function is basically "wrapper" of all of the functionality of SharpUnhooker. If you want to test the capability of SharpUnhooker, you can use the UsageExample function from SUUsageExample class. Its just a simple local shellcode injector.

SharpUnhooker's Main function in action!

SharpUnhookerInAction

To-Do List

  • Add function ordinals ability on EATUnhooker and IATUnhooker
  • Add ability to remove hooks from CLRGuard

More Repositories

1

MeterPwrShell

Automated Tool That Generates The Perfect Meterpreter Powershell Payload
223
star
2

DCMB

Dont Call Me Back - Dynamic kernel callback resolver. Scan kernel callbacks in your system in a matter of seconds!
C
214
star
3

BetterXencrypt

A better version of Xencrypt.Xencrypt it self is a Powershell runtime crypter designed to evade AVs.
PowerShell
209
star
4

KPDB

Windows PDB parser for kernel-mode environment.
C
82
star
5

TripleS

Extracting Syscall Stub, Modernized
C#
60
star
6

SharpLoadLibrary

An attempt to make a LoadLibrary designed for offensive operations, in C# obviously.
C#
53
star
7

SharpHalos

My implementation of Halo's Gate technique in C#
C#
51
star
8

HalosUnhooker

Halos Gate-based NTAPI Unhooker
C#
49
star
9

SyscallShuffler

Your NTDLL vaccine from modern direct syscall methods.
C#
35
star
10

ReversePowernoid

Reverse TCP Powershell has never been this paranoid. (basically an Opsec-safe reverse powershell)
C#
31
star
11

JALSI

JALSI - Just Another Lame Shellcode Injector
C#
30
star
12

Breaking-Detecting-Direct-Syscall-Techniques

A repository filled with ideas to break/detect direct syscall techniques
26
star
13

SysGate

One gate to all syscalls!
C#
23
star
14

NiceTryDLL

Nice try reading NTDLL from disk, nerd.
C#
18
star
15

LocalAMSI.Fail

This is a port of AMSI.fail,i modify the code to make it C# 5 compatible and can be executed on Windows 10 without installing any extra requirements.AMSI.fail itself generates obfuscated PowerShell snippets that break or disable AMSI for the current process.
PHP
10
star
16

Ultrac1ph3r

Do You Want To Encode Your Text String With Multiple Ciphers? Then You're In The Right Place!
5
star
17

sementara

Some random shits for random things
PowerShell
4
star
18

GetRektBoy724

1
star