About
Articles
Book Store
Distributed RCE
Downloads
Event Calendar
Forums
Live Discussion
Reference Library
RSS Feeds
Search
Users
What's New
Customize Theme
bluegrey
blackgreen
metal
simple
Flag:
Tornado!
Hurricane!
Login:
Password:
Remember Me
Register
OpenRCE Article Comments:
Windows User Mode Debugging Internals
Article Abstract
The internal mechanisms of what allows user-mode debugging to work have rarely ever been fully explained. Even worse, these mechanisms have radically changed in Windows XP, when much of the support was re-written, as well as made more subsystem portable by including most of the routines in ntdll, as part of the Native API. This three part series will explain this functionality, starting from the Win32 (kernel32) viewpoint all the way down (or up) to the NT Kernel (ntoskrnl) component responsible for this support, called Dbgk, while taking a stop to the NT System Library (ntdll) and its DbgUi component.
The reader is expected to have some basic knowledge of C and general NT Kernel architecture and semantics. Also, this is not an introduction on what debugging is or how to write a debugger. It is meant as a reference for experienced debugger writers, or curious security experts.
Full Article ...
Printer Friendly ...
Article Comments
AlexIonescu
Posted: Tuesday, October 31 2006 18:10.46 CST
A PDF is also available in my repository and on the TinyKRNL site at
http://www.tinykrnl.org/dbgk-1.pdf
.
Part 2 will be released next week, and Part 3 the week after.
Best regards,
Alex Ionescu
JasonGeffner
Posted: Tuesday, October 31 2006 23:57.37 CST
Great article! I'm looking forward to Parts 2 and 3!
anonymouse
Posted: Wednesday, November 1 2006 04:13.46 CST
Neat and Simple Explanation ! looking forward to part two and part three and may be many more in the series
mugg
Posted: Wednesday, November 1 2006 10:45.07 CST
Thanks for the great article!
mxatone
Posted: Friday, November 10 2006 02:29.04 CST
I start making userland tracer using PaiMei framework and this article is a really good explanation of userland part of the debug system. I'm waiting next parts.
chip
Posted: Monday, November 20 2006 01:07.46 CST
Thanks, It's great
tinybyte
Posted: Friday, December 8 2006 15:25.33 CST
Nice stuff! Waiting for the sequels :)
NeOXQuiCk
Posted: Tuesday, April 3 2007 17:55.47 CDT
Nice,thx for sharing.. its helped me a lot..
bye
shijiaoan
Posted: Monday, May 4 2009 21:48.06 CDT
great
Civa
Posted: Tuesday, March 9 2010 05:07.34 CST
Great article Alex!
I wonder If you can explain how can I get call stack when debugee is suspended?
Thanks alot.
Best regards,
Civa
securex0
Posted: Sunday, April 15 2012 21:55.51 CDT
Awesome jobs! I am waiting next instruction.
Add New Comment
Comment:
There are
31,319
total registered users.
Recently Created Topics
[help] Unpacking VMP...
Mar/12
Reverse Engineering ...
Jul/06
hi!
Jul/01
let 'IDAPython' impo...
Sep/24
set 'IDAPython' as t...
Sep/24
GuessType return une...
Sep/20
About retrieving the...
Sep/07
How to find specific...
Aug/15
How to get data depe...
Jul/07
Identify RVA data in...
May/06
Recent Forum Posts
Finding the procedur...
rolEYder
Question about debbu...
rolEYder
Identify RVA data in...
sohlow
let 'IDAPython' impo...
sohlow
How to find specific...
hackgreti
Problem with ollydbg
sh3dow
How can I write olly...
sh3dow
New LoadMAP plugin v...
mefisto...
Intel pin in loaded ...
djnemo
OOP_RE tool available?
Bl4ckm4n
Recent Blog Entries
halsten
Mar/14
Breaking IonCUBE VM
oleavr
Oct/24
Anatomy of a code tracer
hasherezade
Sep/24
IAT Patcher - new tool for ...
oleavr
Aug/27
CryptoShark: code tracer ba...
oleavr
Jun/25
Build a debugger in 5 minutes
More ...
Recent Blog Comments
nieo
on:
Mar/22
IAT Patcher - new tool for ...
djnemo
on:
Nov/17
Kernel debugger vs user mod...
acel
on:
Nov/14
Kernel debugger vs user mod...
pedram
on:
Dec/21
frida.github.io: scriptable...
capadleman
on:
Jun/19
Using NtCreateThreadEx for ...
More ...
Imagery
SoySauce Blueprint
Jun 6, 2008
[+] expand
View Gallery
(11) /
Submit