Windows 10正式发布后,很多人会发现新系统的运行更稳定了,相对Windows 7和Windows 8/8.1来说,蓝屏死机的症状更少出现,这稳定的背后要归功于Windows 10预警机制和对系统内核的改进。预警机制实际上也是一种“判断”的技术,它根据现状预判断将可能发生的安全问题,并在问题出现之前进行解决。下面就让我们来了解一下它是如何运行的。
认识Windows 10的预警机制
为了更好保护系统的安全,微软在Windows 10中新增很多安全预警机制来防范常见的安全威胁。比如Windows 10企业版新增了全新Device Guard(设备卫士)旨在对全部尝试访问Windows 10设备及其网络体系的应用程序进行审查,从而彻底阻断零日攻击的出现。
小知识:什么是零日攻击?
零日攻击(Zero-day attack)是指Windows漏洞被发现后就立即被恶意利用的一种黑客攻击行为。我们日常使用操作系统和应用程序都是由成千上万(甚至几千万)的代码组成的,这些代码必然会存在编码漏洞。在实际编程的时候,系统和应用程序的开发商不可能对所有的代码进行严格的检查,而是在后期测试和用户实际使用后才会不断发现这些编程漏洞,接着开发商会以补丁的形式发布漏洞修复代码,这就是我们常说的系统和程序补丁。在开发商推出升级补丁之前,一些技术高超的黑客们通过反编译也会发现这些漏洞,这样黑客就会自己编写此漏洞的利用脚本,对系统或应用程序发动攻击。通常,从系统或应用程序新漏洞的发现到利用,不会超过24小时,因此形像地把这种攻击称为零日攻击(即不超过1天),而将被利用的新漏洞称为零日漏洞(图1)。
图1 零日攻击
因为零日漏洞是暂时未被用户或者服务商发现的新漏洞,因此零日攻击的危害非常大。正是因为零日攻击的危害巨大,因此在Wndows 10中新增了Device Guard来避免零日漏洞带来的危害。在Windows 10中当我们运行(或者木马、病毒等恶意程序在后台自动激活)某款程序的时候,Windows 10都会首先对程序进行可信度的检查,只有确保信任的程序可以被成功启动(不可信程序则会向用户发出通知)。这样即使操作系统或者应用程序存在零日漏洞被黑客攻击,黑客在试图使用其编写脚本向系统或者应用程序发起攻击时,这些恶意脚本就会被Device Guard拦截。Device Guard利用硬件技术与虚拟化机制将这一额外许可功能与Windows操作系统中的其他组件隔离开来,从而阻止零日攻击(图2)。
图2 Windows 10的Device Guard
此外,Device Guard还可以同杀毒、白名单乃至其他应用程序控制产品协同工作,从而为Windows 10提供全方位的保护功能。
系统内核的安全改进
使用Windows 7和Windows 8/8.1的用户可能都会遇到过系统蓝屏事件,比如在2014年微软发布KB2982791补丁后,很多安装该补丁的用户都遭遇启动蓝屏的故障(图3)。
图3 Windows 7和Windows 8/8.1用户安装系统补丁后引发的蓝屏
安装了微软推送的补丁还会导致系统蓝屏,这是很多用户始料未及的事情。为了避免类似事件的发生,在Windows 10中微软对系统内核进行了改进。比如在上述蓝屏事件中,蓝屏的原因是由于该补丁修改了内核字体缓存引擎引发的兼容性故障。在Windows 10中,微软为全系统默认开启了控制流防护(Control Flow Guard)功能,这个功能可以将内核模式字体引擎部分分离并放入隔离的用户模式环境中运行,这样对于内核模式的兼容故障,由于隔离模式存在就不会再导致蓝屏故障的出现,从而使系统的运行更为稳定。
当然系统补丁是修复Windows 10底层安全的重要措施,在Windows 10中如果遭遇无法自动安装补丁的情况。那么我们可以使用手动方法自行安装。只要依次点击任务栏的“消息按钮→所有设置→更新和安全→Windows更新→详细信息”,这样系统会检测到当前系统所有需要下载安装的更新(图4)。
图4 检测需要下载安装的更新
对于无法通过自动更新完成的系统更新,在上述窗口会自动显示。这里我们只要根据更新的编号到微软官网手动下载即可。比如笔者电脑上KB890830补丁就一直无法成功安装。现在启动IE浏览器访问,然后输入“KB890830”进行搜索即可找到该补丁的手动下载地址,点击“系统要求”查看是否适合自己的系统,如果正确则可以进行下载安装(图5)。
图5 下载安装相关补丁
此外,系统更新的安装顺序不对可能会导致一些兼容性故障的出现。如Windows 10用户安装了KB3087985更新之后,如果尚未安装最新的Internet Explorer累积安全更新的用户可能会遇到兼容性问题,Internet Explorer可能间歇性停止响应。因此为了避免兼容性问题,必须先安装更新3078071,而后安装更新3087985。如果在Windows 10安装了系统补丁导致一些兼容性故障,那么可以依次进入“控制面板→程序→卸载程序→已安装的更新”,选择导致故障的更新,然后卸载该更新更新,最后再按顺序重新安装所有必需的更新即可(图6)。