在看雪上回答的問題,有人問在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 55 push ebp 84141170 8bec mov ebp,esp 84141172 51 push ecx 84141173 53 push ebx 84141174 8b5d08 mov ebx,dword ptr [ebp+8] 84141177 56 push esi 84141178 57 push edi
然后直接在ida中下斷到KdEnterDebugger的絕對地址
ida 的 快捷鍵 G 輸入 KdEnterDebugger的絕對地址,然后F2下斷點,F9運行,當WinDbg再次下斷點的時候就會斷在ida中的KdEnterDebugger函數了