acm-header
登录

ACM通信

实践

如何生活在一个后崩溃和幽灵的世界


业务办公室

图片来源:Andrij Borys Associates / Monkey Business Images

回到顶部

漏洞管理的世界正在迅速变化,以跟上需要补救的潜在威胁的复杂性。在未来的10到15年里,我们生活在这个世界上将会是什么样子?

1996年,Aleph One出版了《为了乐趣和利润砸栈》。1在接下来的十年里,砸烟囱是一种常见的剥削形式,安全部门花费了大量的精力来寻找防范措施。幽灵党(Spectre)和Meltdown漏洞可能会构成一个同样具有开创性的时刻,带来十年甚至更长时间的长期风险管理问题。事实上,最近发布了两个版本:SpectrePrime和MeltdownPrime,卡罗琳·特里佩尔、丹尼尔·拉斯蒂格和玛格丽特·马尔托诺西在最近的一篇论文中详细介绍了这两个版本。3.希望这只是第一步。

“幽灵党”(Spectre)和“熔毁”(Meltdown)造成了一个问题多于答案的风险格局。本文将介绍在公布这些漏洞时如何对它们进行分类,以及可用的实际防御措施。最终,这些漏洞呈现了一组独特的环境,但对于高盛的漏洞管理程序来说,这只是办公室里的另一天。

虽然这些漏洞在理论上很吸引人,但我们必须接受它们的实际影响。高盛是一家拥有约3.5万名员工的大型企业,作为其风险管理人员,我们必须对漏洞的公布做出迅速反应。此外,我们还必须继续管理未来10年可能出现的新变种或类似漏洞带来的风险。

我们是在2018年1月3日公开宣布这些漏洞时得知这些漏洞的。因为消息已经开始走漏,所以宣布的时间比原计划要早。这意味着许多供应商尚未发布补丁或准备有关影响、缓解策略和补丁可用时间的客户通信。供应商不能立即帮助了解这些漏洞。

当任何重大漏洞被释放时,第一个挑战是收集信息:哪些系统会受到影响,什么时候会有补丁可用,有什么补偿控制,以及漏洞是否正在被积极利用?最好能知道这个漏洞是否被过去以您的公司为目标的威胁行为者所利用。

Meltdown和Spectre尤其难以分类。很明显,某些处理器家族受到了影响,但整个范围可能更广。此外,我们的硬件和软件清单集中于操作系统、应用程序和整个计算机模型。它们的设置不是为了迅速透露处理器的品牌和型号。

给我们所有的机器打补丁会更简单,但是我们担心补丁可能会对性能造成重大影响。

最初,博客和文章中对打补丁对性能影响的估计五花八门,官方论文没有直接引用。2018年1月18日,Altaro.com的Eric Siron总结了这一观点,他说:“我们都看到了Meltdown补丁可能会对性能造成5%到30%的影响的估计。我们还没有看到一个可靠的数据集,表明在现实环境中会发生什么。”2这些范围在我们自己的补丁测试中得到了证实,一些系统的运行速度比其他系统更慢。此外,与其他首席信息安全官的圆桌会议也显示了类似的范围。

这些补丁有一个特别糟糕的风险权衡:高潜在性能影响,不完善的安全效益。通常情况下,补丁会修复漏洞。因为这些是基本的设计漏洞,更糟糕的是,在硬件设计漏洞,补丁的机会是有限的。他们没有修复潜在的漏洞,而是设置了一个迷宫来阻止对手利用它,但潜在的漏洞仍然存在。此外,我们对复杂漏洞的经验是,第一个补丁通常是有缺陷的,所以我们预计许多补丁会随着时间的期望而更新,这已经被证明是正确的。

虽然打补丁显然会有问题,但我们的快速分类显示了一些好消息。利用这些漏洞需要在受害机器上本地执行代码。这就需要考虑操作环境的哪些部分可能运行不受信任的代码:公共云中的管理程序、员工端点(如桌面和笔记本电脑)、移动设备,以及经常打开电子邮件附件的浏览器或应用程序。由于补丁可能会对性能产生重大影响,所以每一个决策都必须涉及风险权衡。

结论是台式机的风险最大,测试表明性能影响是可控的。因此,我们立即开始给所有的桌面打补丁。对于服务器,我们决定进一步调查,并做出更细致的、基于风险的决策。网络攻击的风险必须与补丁破坏或显著减慢系统运行速度的操作风险相平衡。

没有任何信息表明这些漏洞正在被积极利用,这是令人放心的。另一方面,由于漏洞的性质,利用漏洞很难被发现。如果我们知道某个漏洞正在被利用,即使该补丁破坏某些系统的风险很高,我们也会尝试发布补丁。有了这些漏洞,由于缺乏已知的漏洞,我们不得不花更多的时间来评估我们的服务器。

为了帮助进行风险评估,我们通过以下几个方面检查了我们的补丁策略和补偿控制:公共云、服务器、员工端点、浏览器和电子邮件。这些镜片还有助于向我们的企业领导层传达风险。

公共云。研究表明,利用Meltdown和Spectre的攻击可以针对公共云环境。在某些情况下,攻击者可能会破坏公共云提供商用于确保客户实例之间隔离的技术。如果恶意用户能够绕过管理程序或容器引擎控件,那么该用户就可以访问配置在同一硬件上的其他客户的数据。

因此,我们最直接的关注点是公共云提供商。公有云风险还可以进一步分解为实例到实例攻击和实例内攻击。

在实例到实例攻击中,客户可以攻击同一管理程序上的另一个客户。Meltdown是这次攻击最明显的诱因。理论上,攻击者只需购买公共云上的一个实例,然后攻击该硬件上的任何其他客户。幸运的是,包括Amazon、谷歌和microsoft在内的几家大型提供商收到了提前通知,并已经完成或接近完成了对其管理程序的第一轮补丁,以解决这些问题。此外,一些提供商告诉我们,他们在漏洞公布前几个月就已经打了补丁,没有任何明显的性能影响。

对于实例内攻击,攻击者必须在同一个实例上运行代码。这将需要访问系统或应用程序来利用该漏洞。目前还不清楚需要做些什么来完全抵御可能用于这次攻击的多种变体。公共云提供商实施的保护措施弥补了Meltdown漏洞,但Spectre变体需要多种缓解措施。谷歌发布了一种名为Retpoline的二进制修改技术,用来给系统打补丁,对抗Spectre变种2。与CPU补丁相比,这对性能的影响最小。对其他供应商的缓解措施包括芯片固件、管理程序补丁、操作系统补丁,甚至应用程序重写。

Spectre的修复更加复杂,因为客户和云提供商必须协同工作,这取决于所使用的云服务。我们的影响分析确定,在公共云中运行实例不会显著增加实例内的风险:本质上,内部服务器面临的风险是相同的。因此,我们对待它就像对待我们所有的服务器一样:通过做出个人的、基于风险的决定。

服务器。在高盛,服务器性能是至关重要的,所以我们必须小心地给我们的服务器打补丁。在金融服务中,许多关键应用程序只有在处理迅速完成的情况下才具有时间敏感性和有效性——例如,执行交易或大规模复杂风险计算的应用程序。这个补丁可能有非常现实的含义。如果每天晚上使用数十万个公共云处理器来执行复杂的风险计算,那么它们的处理速度将降低30%,此外还会带来操作风险,以及对健壮和实时风险管理的潜在担忧,我们的账单可能会看到显著的增长,以弥补损失的计算能力。

服务器补丁的问题就变成了了解公司成千上万的内部应用程序,并对它们做出基于风险的决定。对于某些应用程序,性能至关重要,运行不受信任的代码的可能性很低。在这种情况下,我们和其他大公司都决定不打补丁。对于这些应用程序,我们依赖于补偿控件以及它们不太可能运行不受信任的代码这一事实。对于其他应用程序,我们评估了更高的风险,并修补了它们的服务器。要进行这种基于风险的分析,公司必须了解其应用程序的行为(应用程序概要)和风险(基于风险的分类)。

端点。员工端点,例如台式机和笔记本电脑,在我们的分类过程中也是优先级很高的,因为它们可以通过Web和电子邮件访问Internet。这些是希望利用这些漏洞的威胁行为者可以试图传递恶意软件的关键渠道。

高盛终端的回应有两个关键主题:补丁和控制。因为用户端点比服务器更可能运行不受信任的代码,所以我们决定在除最特殊的情况外的所有情况下都打补丁。因此,当Windows、macOS和iOS设备可用时,我们迅速将补丁部署到它们上。由于担心潜在的终端用户性能影响,在将补丁推向整个企业之前,能够在一组独立的端点上运行可重复的自动化测试是非常有益的。

打补丁并不仅仅针对操作系统。我们还考虑了员工桌面组件的可用性,这些组件可能允许执行不受信任的代码(例如,打开业务相关文档的应用程序)。不幸的是,即使几个月过去了,许多应用程序仍然没有被它们的供应商修补。


Meltdown和Spectre尤其难以修补。很明显,某些处理器家族受到了影响,但整个范围可能更广。


我们的评估包括在端点上可用的更广泛的控制集,包括预防控制和检测控制。我们最感兴趣的是确定哪一层防御可以在降低风险中发挥作用。为了预防,我们检查了构建和应用程序白名单功能的配置强化,并得出结论,它们不需要任何更改。我们还在端点和收到的电子邮件上使用基于签名和基于启发式的恶意软件检测。当然,只有当漏洞公开时,基于签名的工具才会有价值。

重要的是,不仅要研究所有潜在的降低风险的选项,而且要有适当的控制基础块,以便在不断发展的环境中减轻广泛的威胁。

浏览器。该网站包含大量恶意网站,它们可能试图利用这些漏洞。即使是合法的网站也可能在不经意间发布恶意广告。或者,在水坑攻击的情况下,对手可以破坏已知公司员工访问过的网站,并使用它传递恶意代码。

在高盛,我们使用网络代理和服务对域名进行分类,以降低风险。我们的代理设置非常保守,屏蔽了与我们的业务无关或有潜在风险的所有类别的网页。这包括许多用来承载广告的服务器,所以我们已经有了合理数量的广告拦截。代理还会阻止可执行文件的下载。

此外,谷歌Chrome和Microsoft Edge具有站点隔离功能,可阻止恶意代码影响浏览器窗口中的多个选项卡。与打补丁一样,这并不是这些漏洞的完美缓解剂,但它确实提供了部分控制和另一层防御。由于这个特性甚至在一些补丁之前就已经准备好了,因此可以快速实现。虽然我们担心它会破坏许多内部或外部网站,但实际上问题很少。

更多针对浏览器的特定补丁会在最初漏洞披露后的几天到几周内发布。我们迅速推出了这些补丁。我们的数百名开发人员使用非标准浏览器来测试他们的应用程序,因此我们在用户端点上使用了应用程序白名单,以确保只使用受管理的浏览器,或批准和修补的异常。

浏览器插件也可以在不受信任的代码上执行。作为部分缓解措施,特定的插件可以锁定到一组白名单站点。很少有插件发布了补丁,所以这仍然是一个需要关注的领域。

一些公司还选择虚拟化浏览器,以将应用程序与操作系统隔离开来。浏览器既可以作为独立的应用程序虚拟化,也可以作为整个桌面操作系统虚拟化。如果任何关键任务的Web应用程序运行在遗留浏览器上或带有插件,那么虚拟化浏览器可以提供一种更受保护的机制来实现这一点。

电子邮件是不可信代码的另一个常见向量。它不太可能是利用这些漏洞的工具,因为大多数攻击载体包括缓存计时攻击,这是很难或不可能利用电子邮件。尽管如此,重要的是解决钓鱼攻击作为一种普遍利用的手段。包括高盛在内的大多数公司使用各种技术来阻止基于电子邮件的攻击。

最简单的技术是阻止某些类型的附件。如果您的企业支持它,这是一个相对便宜的控制,可以产生重大影响。不幸的是,许多企业依赖于能够共享office文档,例如PDF或Excel文件,这些文档可能包含宏或其他类型的代码。

当然,网络钓鱼邮件不一定包含附件。它们还可能包含指向恶意网站的链接。我们重写传入的url,以便出站调用必须经过一个中央控制点,在那里我们可以快速实现一个块。出站Web连接还必须通过前面描述的相同的基于代理的控件。

此外,我们在分层的方法中使用了基于签名的电子邮件拦截技术。然而,只要没有已知的漏洞,就不会部署已知的签名。这将是一个追踪未来的领域,当利用从研究概念证明到武器化。

“燃烧室”可能更有价值,它可以打开虚拟机中的附件,查找恶意行为。一些燃烧室供应商正在考虑运行未打补丁的虚拟机,并使用它们来检测这些漏洞的利用。

硬件修复。虽然补丁和控制是这里的重点,硬件修复也不是完全没有问题。英特尔在其第四季度财报电话会议上表示,硅芯片(直接针对Spectre和Meltdown)将于今年晚些时候开始上市。然而,与操作系统补丁类似,第一代硬件补丁可能无法完全解决这些漏洞。此外,组织机构用新芯片升级他们所有的硬件还需要数年时间。

回到顶部

这只是漏洞管理的又一天?

这些漏洞推动了高盛(Goldman Sachs)的漏洞管理进程,但它们并没有破坏它。我们习惯于在这个领域进行风险权衡:例如,你是否可以更快地打补丁以降低网络攻击的风险,即使这会增加操作故障的风险?

这些漏洞带来的风险是该场景的一个更具挑战性的版本。问题不仅在于补丁是否会破坏系统,还在于它们是否会对性能产生重大影响。这种风险必须以一种分布式的方式进行评估,因为它对每个应用程序都是独一无二的。与此同时,这些漏洞以及它们被利用的可能性有很多不确定性。因此,在操作风险和网络攻击风险都不明确的情况下,我们必须在两者之间进行平衡。

Meltdown和Spectre等漏洞的范围非常大,很难解决。对于像高盛这样拥有专门的威胁、漏洞管理和基础设施团队的组织来说,这是一个非常复杂的情况。对于没有专门的分类团队的中小型企业来说,导航可能会更加困难。我们在很大程度上依赖于供应商的协调来明确补丁的依赖,但有时仍然不得不在不太完美的答案下继续前进。

良好的网络卫生习惯仍然是基础——漏洞的性质不同,但管理它的框架和方法不变。在一个没有“幽灵党”(Spectre)和“Meltdown”(Meltdown)等多维漏洞的世界里,快速有效地对风险进行分类,并将降低风险的努力放在优先位置,对所有组织都至关重要。更多引人注目和复杂的漏洞肯定会随之而来,所以现在是吸取“幽灵党”和“Meltdown”教训的好时机,利用它们为下一场战斗做准备。

ACM队列的q戳相关文章
queue.acm.org

保护缠结网
Christoph Kern
https://queue.acm.org/detail.cfm?id=2663760

领先一步
弗拉德Gorelik
https://queue.acm.org/detail.cfm?id=1217266

理解软件打补丁
约瑟夫Dadzie
https://queue.acm.org/detail.cfm?id=1053343

回到顶部

参考文献

1.一。为了乐趣和利益而砸碎堆栈。Phrack 497 (1996);http://phrack.org/issues/49/14.html#article

2.赛伦,E. Spectre/Meltdown Hyper-V更新的实际性能影响。hyper - v博客,2018;https://www.altaro.com/hyper-v/meltdown-spectre-hyperv-performance/

3.Trippel, C., Lustig, D., Martonosi, M. Meltdown Prime和Spectre Prime:利用基于失效的一致性协议自动合成攻击,2018。arXiv: 1802.03802;https://arxiv.org/abs/1802.03802

回到顶部

作者

丰富的班尼特是高盛全球技术风险和信息安全团队的一员。

克雷格·卡拉汉是高盛全球技术风险和信息安全团队的一员。

斯泰西·琼斯是高盛全球技术风险和信息安全团队的一员。

马特·莱文是高盛全球技术风险和信息安全团队的一员。

美林米勒是高盛全球技术风险和信息安全团队的一员。

安迪Ozment是高盛全球技术风险和信息安全团队的一员。


版权归所有者/作者所有。
向所有者/作者请求(重新)发布许可

数字图书馆是由计算机协会出版的。版权所有©2018 ACM, Inc。


没有发现记录

登录为完全访问
»忘记密码? *创建ACM Web帐户
文章内容:
Baidu
map