要确认Windows电脑是否被插入过USB存储设备,需结合事件查看器查近30天插拔记录、注册表查历史接入设备信息、SafeUSB实现长期实时监控。

要确认某台Windows电脑是否被插入过U盘、移动硬盘等USB存储设备,或需要长期追踪外接行为,必须同时启用实时监控与日志留存机制。系统自带功能只能回溯近30天插拔事件,且不记录用户身份;若需完整审计链条(谁在何时插了什么设备、做了哪些文件操作),必须部署专用工具并完成服务注册与策略配置。
用事件查看器查近期插拔记录
这一步适合快速验证最近是否有USB设备接入,无需安装任何软件,但日志默认只保留30天,且无法区分具体用户账号。
按下 Win + R,输入 eventvwr.msc 并回车,打开事件查看器。
在左侧导航栏依次展开:Windows 日志 → 系统。
点击右侧“筛选当前日志”,在“事件来源”中输入 Kernel-PnP,并在“包括事件ID”框中填入 2003, 2004, 2100,点击确定。
筛选结果中,事件ID为2003表示设备已连接,2004表示设备已弹出,2100表示设备已安全移除;每条记录的时间戳精确到秒,双击可查看设备实例路径(如USB\VID_0781&PID_5581\)和硬件ID。
用注册表定位所有曾接入的USB存储设备
该方法能查出所有曾经连过的U盘、移动硬盘,哪怕设备已被格式化、重命名甚至物理销毁,其厂商名、型号、序列号仍永久保留在注册表中。
按 Win + R 输入 regedit,以管理员权限运行注册表编辑器。
在地址栏粘贴完整路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR,按回车跳转。
展开该路径下的每个子项,文件夹名格式为 Disk&Ven_XXX&Prod_YYY&Rev_ZZZ&Ser_WWW,其中 Ven 是厂商缩写(如 SanDisk)、Prod 是产品名、Ser 是序列号——这是设备唯一指纹。
逐个点击子项,在右侧窗格查找名为 FriendlyName 的字符串值,其数据即为系统识别出的设备名称,例如 “Kingston DataTraveler 3.0”。【注意:FriendlyName 可被设备固件伪造,仅作辅助参考;序列号 Ser 才是真实依据】
用SafeUSB实现开机自启式实时监控
SafeUSB 是轻量级开源工具,专为记录USB设备连接而设计,支持服务化部署、自动日志归档、设备信任白名单管理,适合IT人员在单机或小规模环境中落地。
第一步:将 SafeUSB 压缩包解压至 C:\SafeUSB(必须在C盘根目录,否则服务无法注册);手动在该目录下创建名为 log 的空文件夹。
第二步:以管理员身份运行命令提示符,执行:safeusb.exe -install;该命令会自动完成初始化并注册 Windows 服务。
第三步:打开“服务”管理器(services.msc),找到 SafeUSB Service,右键选择“属性”,将“启动类型”设为 自动(延迟启动),然后点击“启动”按钮。
第四步:插入待信任的U盘,在命令提示符中执行:safeusb.exe -add;执行成功后,该设备的VID/PID将写入白名单,后续插入不再触发日志记录(如需全量记录则跳过此步)。
日志文件默认保存在 C:\SafeUSB\log\usb_events.log,每行包含时间戳、设备名、动作(connect/disconnect)、实例ID,可用记事本或Excel直接打开查看。


















