如何屏蔽 USB 存储设备
背景
关于 USB 存储设备的屏蔽, 网上提供了解决方案: 修改 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR 注册表路径 Start的值为 4, 便能实现屏蔽的功能。随着时间的推移,你会发现这并不能覆盖所有的 USB 存储设备。
过程
分析该问题, 首先得明确为什么更改 Start 值之后,能屏蔽 USB 设备的访问?
在 Windows 操作系统中,存在着 Usbstor.sys 驱动程序文件, 驱动程序负责与 USB 存储设备进行通信,使其能够被操作系统识别和访问。当我们把 Start 值改成 4 (Disabled) 之后, Windows 操作系统将无法识别和处理连接到计算机的 USB 存储设备,从而达到屏蔽的目的。
而为什么某些 USB 存储设备在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR Start 为 4 的情况下,还是会被 Windows 识别到呢?你猜的没错,它们并非依靠 usbstor.sys 驱动程序文件,在微软的 supported-usb-classes文档中有提到这个事情。

可以看到针对大容量存储设备, 除了 Usbstor.sys 还会有 Uaspstor.sys。这也可以在设备管理器上得到验证。

那接下来就可以依样画葫芦了, 既然注册表存在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR,那么也会存在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UASPStor 这时候只需要同样设置 Start 值即可。
结论
实现 USB 存储设备的屏蔽方法,设置以下注册表路径 Start 值为 4 (Disabled) 即可。至于解除屏蔽,设置为初始默认值 3 (Manual) 即可。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\UASPStor

浙公网安备 33010602011771号