前言

Windows更新了KB5082417KB5086097后,打开Steam直接会出现“黑屏”崩溃:

KERNEL_SECURITY_CHECK_FAILURE 0x139

而NeoWin上周才发布新闻**“微软宣布Win11已没有已知问题”**:

Microsoft says Windows 11 has no known issues - Neowin

没问题啊,已知的都解决了,新遇到的没办法

分析

每次都是开机一段时间后自动崩溃,很难让人不联想到某个开机自启的软件出了问题。

KERNEL_SECURITY_CHECK_FAILURE 0x139常见于驱动问题,那就是某个开机自启的软件调用了错误驱动

转储文件分析

先‘进入安全模式,然后去C:\Windows\Minidump看一下转储文件。安全模式下是无法启动Windows的WinDbg工具的,只能拷贝到工位电脑去分析了。

反编译之后的信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
*** WARNING: Unable to verify timestamp for steamxbox.sys

KEY_VALUES_STRING: 1

...


SYMBOL_NAME: steamxbox+a31f

MODULE_NAME: steamxbox

IMAGE_NAME: steamxbox.sys <=============== HERE ===================|

STACK_COMMAND: .process /r /p 0xffffc3839be1f080; .thread /r /p 0xffffc3839e0cf080 ; kb

BUCKET_ID_FUNC_OFFSET: a31f

FAILURE_BUCKET_ID: 0x139_a_GUARD_ICALL_CHECK_FAILURE_steamxbox!unknown_function

OSPLATFORM_TYPE: x64

OSNAME: Windows 10

FAILURE_ID_HASH: {0daed6c3-150d-ee60-8a02-c5e9bd84ec89}

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

丢给AI简单分析下:

蓝屏码:0x139

子类型:Guard ICall Check Failure

可疑模块:steamxbox.sys

触发进程:steam.exe

机器开机约 11 分钟 后崩溃

栈上最后的非微软模块是 steamxbox.sys,而不是 ntoskrnl.exe 之类系统核心。

steamxbox.sys是Steam的XBox手柄增强驱动。问题就在这里了。

修复

参考了steamxbox.sys 导致蓝屏一则 - hky's Theater

下载微软的Autoruns,它算是一个全能的启动故障工具箱,会列出系统启动、登录以及部分系统组件启动时的自动运行项,以及非禁用驱动,还可以通过取消勾选来禁用某项,而不是立刻删除。

首先要进入安全模式,禁止Steam继续自启。进任务管理器修改下即可。

接着重启,进正常状态下系统跑一下系统修复指令:

1
2
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth

耐心等待修复完,继续重启,然后进Autoruns,在Drivers里面搜索steamxbox,取消勾选,并且重新开启Steam的开机自启。

禁用steamxbox驱动

卸载驱动

重启。

你会发现,Steam神奇地可以打开了,而且你外接的键鼠神奇地全部失效了。

用各种手段开启设备管理器,你会看到列表一堆黄色感叹号。

这Steam到底塞了什么驱动在XBox手柄里?

还好电脑设置了Sunshine默认开机自启。用平板串流连上,进入Steam设置-控制器,卸载“XBox扩展功能支持驱动”,然后重启电脑,即可。

后记

傻逼微软又给我下载最新的KB5083769安装了。真无敌了。