在看雪上回答的问题,有人问在WinDbg下断KiDebugRoutine或者KdEnterDebugger函数会引发蓝屏!因为是在调试Windows的内核调试引擎,我给出的解决办法是用不依赖Windows的内核调试引擎对其进行调试,在以前分析Windows的启动过程时用到过ida的远程调试,在Windows内核调试引擎还没初始化的时候就对系统进行调试,这里就用到了ida的远程调试来解决。
ida--->Debugger--->Attacth---->Remote GDB Debugger
kd> u kdenterdebugger
nt!KdEnterDebugger:
8414116d 8bff mov edi,edi
8414116f push ebp
8bec mov ebp,esp
push ecx
push ebx
8b5d08 mov ebx,dword ptr [ebp+]
push esi
push edi
然后直接在ida中下断到KdEnterDebugger的绝对地址
ida 的 快捷键 G 输入 KdEnterDebugger的绝对地址,然后F2下断点,F9运行,当WinDbg再次下断点的时候就会断在ida中的KdEnterDebugger函数了