2 台新的 HP Pavilion 笔记本电脑,预装了 Norton 7 Home Premium。我的第一个举动是使用 Norton Removal Tool 并加载 ZoneAlarm free 和 AVG Free。从那时起,经常出现随机 BSOD...我找到了进入调试的方法,并根据符号的状态收到了有关 ntoskrnl 的各种报告。我已经很多年没有玩过 (DOS 3.x) 调试了,所以这是一个相当大的失误。以下是摘录,任何见解都将不胜感激,因为我不是开发人员:
ADDITIONAL_DEBUG_TEXT:
使用 '!findthebuild' 命令搜索目标构建信息。如果构建信息可用,则运行 '!findthebuild -s ; .reload' 来设置符号路径并加载符号。
模块名称:nt
故障模块:fffff8000305d000 nt
调试_FLR_IMAGE_时间戳:4b88cfeb
BUGCHECK_STR: 0x7f_8
客户崩溃次数:1
默认存储桶 ID:VISTA_DRIVER_FAULT
当前 IRQL: 0
LAST_CONTROL_TRANSFER:从 fffff800030ccb69 到 fffff800030cd600
STACK_TEXT:
fffff800 04d6fd28 fffff800
030ccb69:00000000 0000007f 00000000
00000008 00000000 80050033 00000000
000006f8:nt+0x70600 fffff800 04d6fd30 00000000
0000007f:00000000 00000008 00000000
80050033 00000000 000006f8 fffff800
03095e58:nt+0x6fb69 fffff800 04d6fd38 00000000
00000008:00000000 80050033 00000000
000006f8 fffff800 03095e58 00000000
00000000:0x7f fffff800 04d6fd40 00000000
80050033:00000000 000006f8 fffff800
03095e58 00000000 00000000 00000000
00000000:0x8 fffff800 04d6fd48 00000000
000006f8: fffff800 03095e58 00000000
00000000 00000000 00000000 00000000 00000000
: 0x80050033 fffff800 04d6fd50 fffff800
03095e58: 00000000 00000000 00000000
00000000 00000000 00000000 00000000
00000000: 0x6f8 fffff800 04d6fd58 00000000
00000000: 00000000 00000000 00000000
00000000 00000000 00000000 00000000
00000000: nt+0x38e58
堆栈命令:kb
FOLLOWUP_IP:nt+70600 fffff800`030cd600 48894c2408 mov qword ptr [rsp+8],rcx
符号堆栈索引: 0
符号名称:nt+70600
FOLLOWUP_NAME:机器所有者
图像名称: ntoskrnl.exe
BUCKET_ID:错误符号
跟进:MachineOwner...................................................................... 0:kd>!lmi nt 已加载模块信息:[nt] 模块:ntkrnlmp 基地址:fffff8000305d000 映像名称:ntkrnlmp.exe 机器类型:34404(X64) 时间戳:4b88cfeb 2010 年 2 月 27 日星期六 00:55:23 大小:5dc000 校验和:545094 特性:22 perf 调试数据目录:类型大小 VA 指针 CODEVIEW 25、19c65c、19bc5c RSDS - GUID:{7E9A3CAB-6268-45DE-8E10-816E3080A3B7} 年龄:2,Pdb:ntkrnlmp.pdb CLSID 4,19c658, 19bc58 [数据未映射] 图像类型:FILE - 从调试器成功读取图像。ntkrnlmp.exe 符号类型:PDB - 从符号服务器成功加载符号。d:\debugsymbols\ntkrnlmp.pdb\7E9A3CAB626845DE8E10816E3080A3B72\ntkrnlmp.pdb 加载报告:公共符号,未编入源索引 d:\debugsymbols\ntkrnlmp.pdb\7E9A3CAB626845DE8E10816E3080A3B72\ntkrnlmp.pdb 0:kd> !analyze -v
- *
- 错误检测分析 *
- *
UNEXPECTED_KERNEL_MODE_TRAP (7f) 这意味着在内核模式下发生了陷阱,并且是内核不允许拥有/捕获的陷阱(绑定陷阱)或始终立即死亡(双重错误)。错误检查参数中的第一个数字是陷阱的编号(8 = 双重错误等)。请查阅 Intel x86 系列手册以了解有关这些陷阱的更多信息。下面是部分这些代码:如果 kv 显示 taskGate,则在冒号前的部分使用 .tss,然后 kv。否则,如果 kv 显示 trapframe,则在该值上使用 .trap 否则,在相应框架上使用 .trap 将显示发生陷阱的位置(在 x86 上,这将是与过程 KiTrap 一起使用的 ebp)Endif kb 将显示更正后的堆栈。参数:Arg1:0000000000000008,EXCEPTION_DOUBLE_FAULT Arg2:0000000080050033 Arg3:00000000000006f8 Arg4:fffff80003095e58
调试细节:
BUGCHECK_STR: 0x7f_8
客户崩溃次数:1
默认存储桶 ID:VISTA_DRIVER_FAULT
进程名称:系统
当前 IRQL: 2
LAST_CONTROL_TRANSFER:从 fffff800030ccb69 到 fffff800030cd600
STACK_TEXT:
fffff800 04d6fd28 fffff800
030ccb69:00000000 0000007f 00000000
00000008 00000000 000006f8 80050033 00000000
:nt!KeBugCheckEx fffff800 04d6fd30 fffff800
030cb032:00000000 00000000 00000000 00000000:nt!KiBugCheckDispatch + 0x69 fffff800 03095e58:00000000 00000000 00000000 00000000:nt!KiDoubleFaultAbort + 0xb2 fffff880 00000000:00000000 00000000 00000000 00000000 :nt!SeAccessCheckFromState+0x5800000000 00000000
00000000 00000000
04d6fe70 fffff800
00000000 00000000
00000000 00000000
089efc60 00000000
00000000 00000000
00000000 00000000
堆栈命令:kb
FOLLOWUP_IP:nt!KiDoubleFaultAbort + b2 fffff800`030cb032 90 nop
符号堆栈索引: 2
符号名称:nt!KiDoubleFaultAbort+b2
FOLLOWUP_NAME:机器所有者
模块名称:nt
图像名称:ntkrnlmp.exe
调试_FLR_IMAGE_时间戳:4b88cfeb
故障存储桶 ID:X64_0x7f_8_nt!KiDoubleFaultAbort+b2
BUCKET_ID:X64_0x7f_8_nt!KiDoubleFaultAbort + b2
后续:MachineOwner
我尝试运行 Rootkit Revealer,但我认为它在 x64 系统上不起作用。同样,Blacklight 似乎也过时了。我现在正在运行 Sophos Anti-Rootkit。到目前为止一切顺利...
答案1
AVG 和 Zone Alarm 同时运行存在已知冲突。如果您在 Google 上搜索“avg zonealarm”(不带引号),您会看到很多链接。我卸载了 AVG,然后重新安装了 AVG,但没有安装 Link Scanner 组件,这解决了我的问题。
答案2
BSOD 几乎总是硬件或驱动程序问题。
鉴于您删除了 Norton,也许某些 Norton 驱动程序的某些方面还保留着,足以导致某些偶尔的内核操作失败。
您有两个选择:尝试手动清理,或重新铺设。后者可能更容易、更可靠。