Windows NT系统的Ctrl-Alt-Delete解锁设计


Ctrl-Alt-Delete组合键是一个安全注意键(Secure Attention Key),其主要作用就是为了防止恶意程序通过伪造系统登陆界面的方式盗取用户的用户名和密码。

Secure Attention Key直接与操作系统内核相关联——
与硬件间接交互的操作系统内核可以检测是否安全注意键被按下。按下时,内核即开始受信登录处理流程。

换言之,Secure Attention Key可看作是一个操作系统的「保留键」,当用户在已解锁的任意界面按下Ctrl-Alt-Delete等Secure Attention Key的时候,系统就会以最高优先级弹出一个遮罩全屏的菜单,其中包含:锁定/切换用户/注销/更改密码/任务管理器;或选择终止全部进程,从而遮挡/终止这个通过伪造登陆界面的恶意软件的进程,并进行可信登陆流程处理。(整个过程和任务管理器类似,拥有几乎最高的CPU优先级,所以在系统失去响应的情况下也可以成功执行)

假设一个伪造登陆界面的恶意软件要求用户按Ctrl-Alt-Delete或其他Secure Attention Key进行登陆,那么系统会弹出真正的系统组件从而让用户意识到这是一个伪造的登陆界面,从而避免引发安全问题;如果恶意软件伪造的登陆界面没有要求用户按Ctrl-Alt-Delete登陆,那么已经养成了按Ctrl-Alt-Delete登陆习惯的用户会起疑心。

在早期的Windows NT Workstation/NT Server中,微软普遍采用Ctrl-Alt-Delete这套安全注意键以避免可能的安全性问题,微软在Windows 2000后便在个人计算机上取消了这种登陆方式(自然可以选择在组策略中打开),目前Windows Server系列还是普遍默认通过按Ctrl-Alt-Delete进行登陆操作。

Windows的默认Secure Attention Key是Ctrl-Alt-Delete,Linux下可以可以使用loadkeys等工具自定义Secure Attention Key。

微软的工程师们一方面从内核下手、一方面从人的使用习惯,确保了系统的登录安全,又不失简洁美感。


文章作者: sfc9982
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 sfc9982 !
  目录