半路出家windbg(先搞清楚自己分析出來的引數都是什麼意思)
(待修改)
參考文章:
百度網盤:連結: https://pan.baidu.com/s/1WpSD0oZ35uovEa7gSkW68g
當你空有資料,練習好多命令,苦於沒法入門,就來看這個。上有資料
符號路徑下載:(第一次 .reload 時間比較長)
SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols
點選紅色框中的藍色的(或者直接看下面的 讀 00 00 00 a2 的 時候出錯)
FAULTING_IP : 錯誤的IP(IP就是EIP,即出錯的指令地址,指出發生錯誤時所執行的指令)
EXCEPTION_RECORD:異常記錄(很重要的資訊,記錄崩潰的資訊。可以看到異常地址,異常程式碼以及具體的異常原因“嘗試讀取地址00000000”。)
ExceptionAdddress: 異常地址; 中斷地址
ExceptionCode: 異常碼
AccessViolation:非法訪問
DEFAULT_BUCKET_ID:指出錯誤的型別(比如NULL_POINTER_READ、DRIVER_FAULT、NULL_CLASS_PTR_DEREFERENCE )
BUCKET_ID:當前故障屬於的特定型別的故障
讀取地址 00 00 00 a2 (第二個引數)的時候出錯。
二、STACK_TEXT(從後往前看)
棧文字資訊:(STACK_TEXT: //反映了錯誤前堆疊中函式呼叫情況,)
最後一列容易理解,是模組+函式,那前面還有5列數字,表示什麼呢?
第一列表示函式呼叫時的EBP,
第二列表示函式的返回地址,
後三列則是函式的引數
STACK_COMMAND: ~2s; .ecxr ; kb (kb 顯示呼叫前三項棧 .excer 結合當前例外顯示例外環境記錄(暫存器))FOLLOWUP_IP: //反彙編了發生錯誤指令的程式碼 EstLog!_output_l+98f [f:\dd\vctools\crt_bld\self_x86\crt\src\output.c @ 1643] 0037ddb7 803800 cmp byte ptr [eax],0]
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: estlog!_output_l+98f
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: EstLog
IMAGE_NAME: EstLog.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 5bd9773b
FAILURE_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE_c0000005_EstLog.exe!_output_l
BUCKET_ID: APPLICATION_FAULT_NULL_CLASS_PTR_DEREFERENCE_INVALID_POINTER_READ_estlog!_output_l+98f
完整文章:
0:002> !analyze -v ******************************************************************************* * * * Exception Analysis * * * *******************************************************************************
Failed calling InternetOpenUrl, GLE=12029
FAULTING_IP: EstLog!_output_l+98f [f:\dd\vctools\crt_bld\self_x86\crt\src\output.c @ 1643] 0037ddb7 803800 cmp byte ptr [eax],0
EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff) ExceptionAddress: 0037ddb7 (EstLog!_output_l+0x0000098f) ExceptionCode: c0000005 (Access violation) ExceptionFlags: 00000000 NumberParameters: 2 Parameter[0]: 00000000 Parameter[1]: 000000a2 Attempt to read from address 000000a2
PROCESS_NAME: EstLog.exe
ERROR_CODE: (NTSTATUS) 0xc0000005 - 0x%08lx
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - 0x%08lx
EXCEPTION_PARAMETER1: 00000000
EXCEPTION_PARAMETER2: 000000a2
READ_ADDRESS: 000000a2
FOLLOWUP_IP: EstLog!_output_l+98f [f:\dd\vctools\crt_bld\self_x86\crt\src\output.c @ 1643] 0037ddb7 803800 cmp byte ptr [eax],0
MOD_LIST: <ANALYSIS/>
FAULTING_THREAD: 0000081c
BUGCHECK_STR: APPLICATION_FAULT_NULL_CLASS_PTR_DEREFERENCE_INVALID_POINTER_READ
PRIMARY_PROBLEM_CLASS: NULL_CLASS_PTR_DEREFERENCE
DEFAULT_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE
LAST_CONTROL_TRANSFER: from 0038276a to 0037ddb7
STACK_TEXT: 0262ede4 0038276a 0262ee08 003ad2e4 00000000 EstLog!_output_l+0x98f [f:\dd\vctools\crt_bld\self_x86\crt\src\output.c @ 1643] 0262ee28 003827aa 0262ee68 00000800 003ad2e4 EstLog!_vsnprintf_l+0x8b [f:\dd\vctools\crt_bld\self_x86\crt\src\vsprintf.c @ 138] 0262ee44 002b3ef3 0262ee68 00000800 003ad2e4 EstLog!_vsnprintf+0x18 [f:\dd\vctools\crt_bld\self_x86\crt\src\vsprintf.c @ 190] 0262f6bc 002d989d 003ad2e4 000000a2 000000a2 EstLog!LogPrint::PrintLogA+0x73 [d:\Âíºì¿\code\sipÏÖÍø\src\estlog_new\util\logprint.cpp @ 120] 0262f7d4 002d882f 020b5f78 020b1e98 020adc88 EstLog!LogData::RenameFile+0x12d [d:\Âíºì¿\code\sipÏÖÍø\src\estlog_new\data\data.cpp @ 537] 0262f808 002d8c91 020b7260 8a0147f0 020b8fc8 EstLog!BaseData::RenameUFiles+0x13f [d:\Âíºì¿\code\sipÏÖÍø\src\estlog_new\data\data.cpp @ 159] 0262f950 002d90ab 020b1e98 0262f994 003741f6 EstLog!BaseData::TryToUpLoad+0x131 [d:\Âíºì¿\code\sipÏÖÍø\src\estlog_new\data\data.cpp @ 320] 0262f95c 003741f6 020b1e98 8a014734 00000000 EstLog!BaseData::TaskThread+0x1b [d:\Âíºì¿\code\sipÏÖÍø\src\estlog_new\data\data.cpp @ 385] 0262f994 0037429e 00000000 0262f9ac 767433ca EstLog!_callthreadstartex+0x1b [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 348] 0262f9a0 767433ca 020b8fc8 0262f9ec 77599ed2 EstLog!_threadstartex+0x82 [f:\dd\vctools\crt_bld\self_x86\crt\src\threadex.c @ 326] 0262f9ac 77599ed2 020b8fc8 75067f38 00000000 kernel32!BaseThreadInitThunk+0xe 0262f9ec 77599ea5 0037421c 020b8fc8 00000000 ntdll!__RtlUserThreadStart+0x70 0262fa04 00000000 0037421c 020b8fc8 00000000 ntdll!_RtlUserThreadStart+0x1b
STACK_COMMAND: ~2s; .ecxr ; kb
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: estlog!_output_l+98f
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: EstLog
IMAGE_NAME: EstLog.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 5bd9773b
FAILURE_BUCKET_ID: NULL_CLASS_PTR_DEREFERENCE_c0000005_EstLog.exe!_output_l
BUCKET_ID: APPLICATION_FAULT_NULL_CLASS_PTR_DEREFERENCE_INVALID_POINTER_READ_estlog!_output_l+98f
WATSON_STAGEONE_URL: http://watson.microsoft.com/StageOne/EstLog_exe/0_0_0_0/5bd9773b/EstLog_exe/0_0_0_0/5bd9773b/c0000005/000dddb7.htm?Retriage=1
Followup: MachineOwner ---------