U 盘相关的三个动作经常被当成同一件事:插上去弹出来的那个窗口、在资源管理器里双击打开、右下角的安全删除硬件。三者的机制不一样,要防的东西也不一样,把它们分开看才知道该关哪个。
三个动作分别是什么
| 触发时机 | 关掉之后的变化 | 和中毒的关系 | |
|---|---|---|---|
| 自动运行 Autorun | 插入时读盘上的 autorun.inf 并按它写的方式启动程序 | 插入不再自己拉起程序 | 这是以前风险最高的入口 |
| 自动播放 AutoPlay | 插入时弹提示问你要不要打开、怎么打开 | 需要自己进此电脑双击 | 不执行盘上代码,主要是便利项 |
| 安全弹出 | 手动卸载卷并把缓存里的写入落盘 | 直接拔时可能丢正在写的文件 | 与中毒无关,管的是数据完整性 |
第一行现在基本不构成威胁。Windows 从 Vista 之后就不再默认执行 U 盘上 autorun.inf 指定的程序,早年“一插就中”的那批病毒靠的正是这个默认行为。如今 U 盘传播的主路径换成了诱导你自己双击一个看起来正常的文档或者安装包,不是自动运行。所以看到“已阻止自动运行”不必担心少了防护,本来就该阻止。
第二行才是多数人感知到的那个“弹出来”。它在系统里叫自动播放,对每一种设备可以单独选“每次询问”“打开文件夹查看文件”“不执行操作”。把可移动驱动器改成“每次询问”或者干脆“不执行操作”,插入后就不会有窗口自己跳出来。这一项不是安全措施而是习惯选项,但少一次弹窗就少一次随手双击的机会。
第三行和病毒无关。安全弹出的作用是把还在缓存里的写入落到盘上,并让系统认为这个卷不再被占用。现在的系统在可移动磁盘上默认用“快速删除”策略,不写缓存,理论上复制完了直接拔也不会丢数据;但如果这台机器改过“更好的性能”,或者文件还在进度条里,直接拔就会丢。实际习惯只有两条:进度没走完不拔,走完再等两三秒拔。
想确认自动播放关到了哪一档
先看设置:在设置的应用或蓝牙和其他设备里找自动播放,控制面板里则是硬件和声音下的自动播放,两处同一个开关。公司发的机器可能被组策略锁定而显灰,那就不是自己能改的。想查当前策略值可以用命令行:
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDriveTypeAutoRun
没有这一项也是一个常见结果,说明系统用默认行为。有值时,十进制 181(十六进制 B5)对应的是不自动运行可移动设备那一类默认设定;改注册表前先记下当前的数值,方便改回。
三个动作的优先级其实很清楚:真正要防的是双击打开来路不明的 U 盘文件,自动播放只是少一个诱惑,安全弹出管的是别丢文件而不是别中毒。