恶意软件隔离与安全边界:比想象中更棘手的技术挑战

本文深入探讨Windows操作系统中的真实安全边界实现难题,分析内核补丁保护、内核模式代码签名等技术局限,揭示第三方沙箱方案的根本性缺陷与系统级安全架构的复杂性。

BlueHat:恶意软件、隔离与安全边界:比看起来更难

我是BlueHat的Mark Russinovich。
这是微软首次在BlueHat安全会议上使用内部演讲者,我很兴奋能成为其中一员。当我收到演讲邀请时,我立刻想到了所有想讨论的有趣话题。例如,现成软件甚至安全软件中的不安全现状——这是我之前博客写过的话题。另一个我觉得人们会感兴趣的话题是rootkit的现状及其演变趋势。基于管理程序的“超级工具包”(Hyperkits)及其被过度炒作的现象是我的热点关注之一,也列在我的清单上。

但最终,我选择了一个不那么炫目但我觉得更为重要的话题:讨论Windows中真正的安全边界是什么,以及实现它们有多困难。第三方很容易发布一个产品,声称能为Internet Explorer创建一个沙箱,并将其卖给那些希望获得更安全浏览体验的小众用户。然而,这些解决方案的安全性源于它们的小众地位。由于没有集成到操作系统中,它们无法创建一个万无一失的沙箱,而恶意软件作者针对的是大众用户,大众不会运行这些解决方案。

另一方面,Windows默认安装在每个Windows用户的桌面上,因此任何被称为安全解决方案的技术都必须符合最高标准。除非我们能保证恶意软件无法基于某种固定方法逃脱,否则我们不能说我们已经创建了一个安全沙箱。此外,虽然第三方可以设计针对“专业消费者”(积极参与安全管理的用户)的用户体验,但Windows必须努力提供尽可能透明的安全性。最后,Windows致力于应用程序兼容性,任何安全边界带来的好处必须远远超过因破坏兼容性而导致的成本。再次强调,第三方可以容忍破坏应用程序,因为他们的客户可能愿意承担这种成本。

底线是,Windows中有许多技术被人们视为安全边界,但实际上并不是。在我的演讲中,我涵盖了真正的Windows安全边界,然后回顾了诸如内核补丁保护、内核模式代码签名等技术,解释了为什么应用程序兼容性、用户体验或基本架构问题阻止它们成为安全边界。这应该会很有趣!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计