首页
社区
课程
招聘
[求助]帮忙分析一下蓝屏原因
发表于: 2009-1-30 21:41 9321

[求助]帮忙分析一下蓝屏原因

2009-1-30 21:41
9321
帮忙分析一下蓝屏原因
系统:windows xp sp2
用windbg得到的结果如下:

0: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

CRITICAL_OBJECT_TERMINATION (f4) //根本原因:重要的对象被终结了
A process or thread crucial to system operation has unexpectedly exited or been
terminated.//一个对操作系统至关紧要的进程或者线程意外地退出或者被终结
Several processes and threads are necessary for the operation of the
system; when they are terminated (for any reason), the system can no
longer function.
Arguments:
Arg1: 00000003, Process
Arg2: ffb5b020, Terminating object//当时被结束的对象
Arg3: ffb5b194, Process image file name//偏移量0x174的Process image file name
Arg4: 805d23b6, Explanatory message (ascii)

Debugging Details:
------------------

PROCESS_OBJECT: ffb5b020

IMAGE_NAME:  SafeBoxKrnl.sys  ////当时被结束的进程的EPROCESS,真没想到我的程序竟然办掉了360的SafeBox的驱动,而他是系统至关紧要的对象,一旦结束,操作系统就蓝屏重启。

DEBUG_FLR_IMAGE_TIMESTAMP:  48491113

FAULTING_MODULE: 00000000

PROCESS_NAME:  11.exe //当时c语言编译的程序名

BUGCHECK_STR:  0xF4_11.exe

CUSTOMER_CRASH_COUNT:  7

DEFAULT_BUCKET_ID:  COMMON_SYSTEM_FAULT

LOCK_ADDRESS:  80559b60 -- (!locks 80559b60)

Resource @ nt!PiEngineLock (0x80559b60)    Available

WARNING: SystemResourcesList->Flink chain invalid. Resource may be corrupted, or already deleted.

WARNING: SystemResourcesList->Blink chain invalid. Resource may be corrupted, or already deleted.

1 total locks

PNP_TRIAGE:
Lock address  : 0x80559b60
Thread Count  : 0
Thread address: 0x00000000
Thread wait   : 0x0

LAST_CONTROL_TRANSFER:  from 805d155d to 804faf13

STACK_TEXT:  
f5493cd8 805d155d 000000f4 00000003 ffb5b020 nt!MmDeleteKernelStack+0x8b
f5493cfc 805d2461 805d23b6 ffb5b020 ffb5b194 nt!PipProcessCriticalDevice+0x6c
f5493d2c f557b952 ffb5b268 00000000 0012fce8 nt!IopPnPDispatch+0xae
WARNING: Stack unwind information not available. Following frames may be wrong.
f5493d54 805419ac 00000760 00000000 0012fce8 SafeBoxKrnl+0x9952
f5493d64 7c92eb94 badb0d00 0012fce0 ffffffff nt!RtlIpv6StringToAddressW+0xe9
f5493d74 b91a3da0 00000000 00000000 00000000 0x7c92eb94
f5493d78 00000000 00000000 00000000 00000000 0xb91a3da0

STACK_COMMAND:  kb

FOLLOWUP_IP:
SafeBoxKrnl+9952
f557b952 ??              ???

SYMBOL_STACK_INDEX:  3

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: SafeBoxKrnl

SYMBOL_NAME:  SafeBoxKrnl+9952

FAILURE_BUCKET_ID:  0xF4_11.exe_SafeBoxKrnl+9952

BUCKET_ID:  0xF4_11.exe_SafeBoxKrnl+9952

Followup: MachineOwner
---------

[课程]FART 脱壳王!加量不加价!FART作者讲授!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
上面的注释是我写的,不知道对不对,请大虾们看看!!帮忙!!!
2009-1-30 21:43
0
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我已经上传那个dump文件!!!
2009-1-30 21:54
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
4
蓝屏是因为11.exe 结束了csrss.exe 和360没有关系~
2009-1-30 23:25
0
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
为什么请讲一讲????
2009-1-31 10:03
0
雪    币: 296
活跃值: (89)
能力值: ( LV15,RANK:340 )
在线值:
发帖
回帖
粉丝
6
大致看了一下,有这些你要注意的(加粗或高亮部分)

Arguments:
Arg1: 00000003, Process 说明是进程结束引起,而不是IMAGE
Arg2: ffb5b020, Terminating object
Arg3: ffb5b194, Process image file name
Arg4: 805d23b6, Explanatory message (ascii)


IMAGE_NAME: SafeBoxKrnl.sys
具体为什么是 SafeBoxKrnl.sys,要看堆栈和你蓝屏前调用的函数。

PROCESS_NAME: 11.exe
根据上面的 Arg1: 00000003 和这个进程名,可以确定是 11.exe 引发的问题。


LAST_CONTROL_TRANSFER: from 805d155d to 804faf13

STACK_TEXT:
f5493cd8 805d155d 000000f4 00000003 ffb5b020 nt!MmDeleteKernelStack+0x8b
f5493cfc 805d2461 805d23b6 ffb5b020 ffb5b194 nt!PipProcessCriticalDevice+0x6c
f5493d2c f557b952 ffb5b268 00000000 0012fce8 nt!IopPnPDispatch+0xae
WARNING: Stack unwind information not available. Following frames may be wrong.
f5493d54 805419ac 00000760 00000000 0012fce8 SafeBoxKrnl+0x9952
f5493d64 7c92eb94 badb0d00 0012fce0 ffffffff nt!RtlIpv6StringToAddressW+0xe9
f5493d74 b91a3da0 00000000 00000000 00000000 0x7c92eb94
f5493d78 00000000 00000000 00000000 00000000 0xb91a3da0

FOLLOWUP_IP:
SafeBoxKrnl+9952
f557b952
?? ???


从堆栈上看,你是调用了 nt!RtlIpv6StringToAddressW,然后这个函数进了 SafeBoxKrnl+0x9952。再往上就不清楚了,从FOLLOWUP_IP看是 nt!IopPnPDispatch+0xae,你可以根据这个猜测一下 SafeBoxKrnl+0x9952 这里底干了什么,然后确定蓝屏原因。
对 SafeBoxKrnl.sys 不熟,等别人继续吧。

2009-1-31 10:49
0
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
safebox好象有个pnpdispatch
NTSTATUS
PnpDispatch(
        PDEVICE_OBJECT pDeviceObject,
        PIRP pIrp
        )
// 00010486
{
        UNREFERENCED_PARAMETER(pDeviceObject);

        pIrp->IoStatus.Status = STATUS_SUCCESS;
        IofCompleteRequest(pIrp, IO_NO_INCREMENT);
       
        return STATUS_SUCCESS;
}
我好象有点感觉了,传给PnpDispatch的参数pDeviceObject肯定有问题,因为系统马上调用了nt!PipProcessCriticalDevice
2009-1-31 11:28
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
8
楼上的分析都不对,因为楼主的符号文件不全或是错误的,实际就是11.exe调用了ZwTerminateProcess结束了csrss.exe,而safeboxkrnl.sys hook了这个函数,但没有干扰这个函数的运行,系统检测到csrss.exe被结束,于是主动蓝屏了
2009-1-31 11:39
0
雪    币: 182
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼上说的有点道理,我的符号文件好象是有点问题!你可以把windbg的分析的内容发上来吗??让我看看!另外在问一个问题,safeboxkrnl.sys hook了ZwTerminateProcess,我用iceworld查看了瑞星也hook了,他们不冲突了吗?这种问题应当如何解决????
2009-1-31 12:13
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
10
只要代码写得正确(不过显然瑞星写不正确),就不会有冲突
2009-1-31 14:01
0
雪    币: 296
活跃值: (89)
能力值: ( LV15,RANK:340 )
在线值:
发帖
回帖
粉丝
11
  确实像 qihoocom 说的,符号库有问题。我之前没下dump文件...
你分析dump前最好用windbg自带的dumpchk检查一下,用-y可以自动下载新的符号库。

这是我载入的
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

Use !analyze -v to get detailed debugging information.

BugCheck F4, {3, ffb5b020, ffb5b194, 805d23b6}

Unable to load image SafeBoxKrnl.sys, Win32 error 0n2
*** WARNING: Unable to verify timestamp for SafeBoxKrnl.sys
*** ERROR: Module load completed but symbols could not be loaded for SafeBoxKrnl.sys
Probably caused by : csrss.exe

Followup: MachineOwner
---------

0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

CRITICAL_OBJECT_TERMINATION (f4)
A process or thread crucial to system operation has unexpectedly exited or been
terminated.
Several processes and threads are necessary for the operation of the
system; when they are terminated (for any reason), the system can no
longer function.
Arguments:
Arg1: 00000003, Process
Arg2: ffb5b020, Terminating object
Arg3: ffb5b194, Process image file name
Arg4: 805d23b6, Explanatory message (ascii)

Debugging Details:
------------------


PROCESS_OBJECT: ffb5b020

IMAGE_NAME: csrss.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 0

MODULE_NAME: csrss

FAULTING_MODULE: 00000000

PROCESS_NAME: 11.exe

BUGCHECK_STR: 0xF4_11.exe

CUSTOMER_CRASH_COUNT: 7

DEFAULT_BUCKET_ID: COMMON_SYSTEM_FAULT

LAST_CONTROL_TRANSFER: from 805d155d to 804faf13

STACK_TEXT:
f5493cd8 805d155d 000000f4 00000003 ffb5b020 nt!KeBugCheckEx+0x1b
f5493cfc 805d2461 805d23b6 ffb5b020 ffb5b194 nt!PspCatchCriticalBreak+0x75
f5493d2c f557b952 ffb5b268 00000000 0012fce8 nt!NtTerminateProcess+0x7d
WARNING: Stack unwind information not available. Following frames may be wrong.
f5493d54 805419ac 00000760 00000000 0012fce8 SafeBoxKrnl+0x9952
f5493d54 7c92eb94 00000760 00000000 0012fce8 nt!KiFastCallEntry+0xfc
0012fce8 00000000 00000000 00000000 00000000 0x7c92eb94


STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

FAILURE_BUCKET_ID: 0xF4_11.exe_IMAGE_csrss.exe

BUCKET_ID: 0xF4_11.exe_IMAGE_csrss.exe

Followup: MachineOwner


从蓝色那行看,SafeBoxKrnl.sys 确实HOOK了nt!NtTerminateProcess,不过后来还是放行继续去 nt!NtTerminateProcess+0x7d,然后csrss挂了...

倒是这个dump我有点迷糊,为什么IMAGE_NAME是csrss.exe,而PROCESS_NAME是11.exe。
CSRSS这里被当作 IMAGE 载入了11.exe?还是说nt!NtTerminateProcess结束目标进程时都这样?
2009-1-31 15:21
0
游客
登录 | 注册 方可回帖
返回
//