jhftss / HyperDbg

HyperDbg debugger is an open-source, user mode and kernel mode Windows debugger with a focus on using hardware technologies.

Home Page:https://hyperdbg.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Website Docs Doxygen License: GPL v3

HyperDbg Debugger

HyperDbg Debugger

(is not yet released/finished)

Description

HyperDbg is an open-source, user mode and kernel mode Windows debugger with a focus on using hardware technologies to provide new features to the debuggers’ world.

It is designed on top of Windows by virtualizing an already running system using Intel VT-x and Intel PT. This debugger aims not to use any APIs and software debugging mechanisms, but instead, it uses Second Layer Page Table (a.k.a. Extended Page Table or EPT) extensively to monitor both kernel and user executions.

HyperDbg Debugger

HyperDbg comes with features like hidden hooks, which is as fast as old inline hooks, but also stealth. It mimics hardware debug registers for (read & write) to a specific location, but this time entirely invisible for both Windows kernel and the programs, and of course without any limitation in size or count!

Using TLB-splitting, and having features such as measuring code coverage and monitoring all mov(s) to/from memory by a function, makes HyperDbg a unique debugger.

Although it has novel features, HyperDbg tries to be as stealth as possible. It doesn’t use any debugging APIs to debug Windows or any application, so classic anti-debugging methods won’t detect it. Also, it resists the exploitation of time delta methods (e.g., RDTSC/RDTSCP) to detect the presence of hypervisors, therefore making it much harder for applications, packers, protectors, malware, anti-cheat engines, etc. to discover the debugger.

Installation

How does it work?

We explained about how HyperDbg internally works and how we designed its features in details, take a look at :

(https://docs.hyperdbg.com/how-does-it-work)

Here's a diagram that shows how HyperDbg works !

HyperDbg Design


Plugins

Credits

Developers :

Special Thanks to these guys for their helps and contributions :

  • Petr Beneš (for his great helps in designing hypervisor)

  • ...and many other people who helped to solve the problems

Contributing

Contributing in HyperDbg is super appreciated.

If you want to create a pull request or contribute in HyperDbg please read Contribution Guide.

License

HyperDbg is under GPLv3 LICENSE.

About

HyperDbg debugger is an open-source, user mode and kernel mode Windows debugger with a focus on using hardware technologies.

https://hyperdbg.com

License:GNU General Public License v3.0


Languages

Language:C 71.5%Language:C++ 20.1%Language:C# 5.7%Language:Assembly 2.5%Language:Objective-C 0.2%Language:Batchfile 0.1%