fbpx
维基百科

幽灵漏洞

幽灵(英語:Spectre)是一个存在于分支预测实现中的硬體缺陷及安全漏洞,含有预测执行功能的现代微处理器均受其影响[1][2]漏洞利用是基於時間的旁路攻擊,允许恶意进程獲得其他程序在映射内存中的資料内容。[3][4][5]Spectre是一系列的漏洞,基於攻擊行爲類型,賦予了两个通用漏洞披露ID,分别是CVE-2017-5753(bounds check bypass,边界检查绕过)和CVE-2017-5715(branch target injection,分支目标注入),於2018年1月隨同另一個也基於推測執行機制的、屬於重量級資訊安全漏洞的硬體缺陷「Meltdown」(熔燬)一同公佈。由於該缺陷是推測執行機制導致的,加上不同處理器架構對推測執行又有不同的實作方式,因此這個缺陷無法獲得根源上的修復而只能採取「見招拆招」式的方法防範,而且因機制所致,各種解決方案還有不可預料的效能下降。[6]

该漏洞的徽标,特征是手中的树枝(branch,有分支、分叉之意)

CVE-2017-5753依赖于運行中的即时编译(JIT)系統,用于Javascript的JIT引擎已被发现存在此漏洞。网站可以读取浏览器中存储的另一个网站的数据,或者浏览器本身的記憶體。對此Firefox 57.0.4(部分)及Chrome 64通过为每个网站分配专用的浏览器程序来阻擋此類攻擊[7][8];作業系統則是通過改寫的編譯器重新編譯以阻擋利用該漏洞進行攻擊的行爲。

針對CVE-2017-5715,除了軟體層面上進行修改以外,處理器也需要通過微指令更新來阻擋這類攻擊。[9][10][11]

隨著幽靈缺陷衍生的安全漏洞(攻擊手段變體,包括CVE-2018-3693、CVE-2018-3640、CVE-2018-3639等)被逐一發現,英特爾等CPU開發商不得不在修復既有缺陷的同時資助第三方資訊安全團隊繼續發掘潛在的缺陷以破財消災。[12]

历史 编辑

Spectre由Google Project Zero的Jann Horn独立发现,Paul Kocher英语Paul Kocher协同Daniel Genkin、Mike Hamburg、Moritz Lipp和Yuval Yarom也合作发现了此问题。微软漏洞研究(Microsoft Vulnerability Research)则将此问题的波及范围扩展到了浏览器JavaScript的JIT引擎[3][7]。2017年6月1日,受影响的硬體供应商知悉此问题。2018年1月3日,此漏洞与另一安全漏洞熔毁(英語:Meltdown)被一同公布[13]

细节 编辑

Spectre是一个可以迫使用户操作系统上的其他程序访问其程序電腦記憶體空间中任意位置的漏洞。

Spectre不是单个易于修复的漏洞,而是[14]一类[15]潜在漏洞的总和。它们都利用了一种现代微处理器为降低内存潜伏英语Memory latency、加快执行速度的常用方法“预测执行”的副作用。具体而言,Spectre着重于分支预测,这是预测执行的一部分。与同时披露的相关漏洞“熔毁”不同,Spectre不依赖单个处理器上記憶體管理及系统保护的特定功能,而是一个更为通用的漏洞。

白皮书的出发点是,对分支预测机制进行边信道定时攻击[16],它是现代微处理器乱序执行的一部分。虽然,处理器的文档保证在架构级别,预测错误所导致的任何后果都会在得到正确结果之后取消,然而预测执行仍然有可能留下副作用,例如已加载的缓存线。这些所谓的非功能性方面随后便可影响计算环境。如果这种副作用(包括但不限于内存访问时间)对恶意程序可见,并且能设法与受害行程所保存的敏感数据英语Information sensitivity产生关系,则这些副作用可能会使敏感数据可被识别。即使在架构级别,正式的安全设计能正常工作,这种情况仍然会发生;这种情况下,用于代码执行的、较低级的微架構优化仍然有可能泄漏对正常程序正确执行不是非常重要的某些信息。

Spectre论文展示了完成攻击的四个基本步骤:

  1. 首先,论文阐述了在现代处理器中的,恶意程序可以通过程序内部的运行操纵分支预测逻辑,使得分支预测命中或者失败的情况可以提前判断。
  2. 随后展示了,可以可靠地对缓存命中和未命中间的差异进行计时,因此,本来应该是简单的非功能差异,实际却可作为秘密信道,从无关信息中提取进程的内部工作信息。
  3. 然后,论文以一个简单的示例程序和一个在浏览器沙盒中运行的JavaScript片段为基础,将结果与返回导向编程攻击等原理进行综合;在这两种情况下,只需简单使用由普通编译器或现有浏览器中JavaScript引擎生成的代码,利用其中条件分支的预测执行,受害者进程的整个地址空间(即运行中程序的内容)都将可读。其基本思想是,在现有的代码中寻找预测执行可能涉及到不可访问数据的地方,操纵处理器,使得预测执行必须触及该数据的实际内容,然后对处理器的副作用计时,这时预取机制已经加载完成了一条缓存线,结果就是访问这条缓存线的数据速度会更快。
  4. 最后,本文将这种攻击一般化到受害进程的任何非功能状态上。紧接着讨论了甚至像总线仲裁延迟这样非常不明显的非功能性效应。

Spectre和Meltdown之间的根本区别在于,后者依赖于现代英特尔处理器的特定功能:CPU可能会被诱使预测执行到受保护的系统数据中,被迫进入并处理相关的安全异常。Spectre中的统计学特征更为明显:尽最大努力以某种方式调教处理器的分支预测机制,并使用现有库中可用(或不可用)的代码来实现基本相同的事。

或者换句话说,正如Meltdown论文所说的那样:“Meltdown在几个方面与Spectre攻击有所不同,其中值得注意的是,Spectre需要定制受害者进程的软件环境,但适用的CPU更加广泛,并且KAISER对其无效。”[17]

影响 编辑

截至2018年,几乎所有的计算机系统都受到Spectre的影响,包括台式机、笔记本电脑和移动设备。具体而言,Spectre已证明可以在主要的Intel、部分ARM的处理器上工作,特定情況下則在AMD架構下能運作[18][19]。英特尔正式回应了所报告的安全漏洞[20]。根据AMD的一份声明,Spectre第二个变种没有发生在AMD处理器上,且由于AMD架构之间存在差异,“风险接近于零”[21]

目前,Spectre只会造成用户级别的程序互相影响,但似乎这种攻击方式可以进一步开发。虽然比熔毁更难正确使用,但由于它的一般性,Spectre可能会更加难以抵御。原来的白皮书甚至推测,为了完全处理这个问题,可能需要对微处理器体系结构进行重大改变。

而且,对于云提供商而言,Spectre比Meltdown影响更大。Meltdown可使未经授权的应用程序读取特权内存,并获取运行在同一云服务器上进程的敏感数据,而Spectre可让恶意程序诱使虚拟机管理程序将数据传输到在其上运行的客户系统[22]

防御措施 编辑

由于Spectre是一整类的攻击,所以一个补丁很可能无法完全解决。虽然这个漏洞的一些特殊案例已经在处理,但专门介绍“Spectre”和“Meltdown”的网站也说:“Spectre不易修复,所以会长期困扰我们。”[3]微软 Windows 系列操作系统于2018年初发布了系统补丁,英特尔公司于事件发生阶段反复表示修复漏洞对性能影响不大,但微软测试表明若安裝Windows 7、Windows 8操作系统、並使用2015年或更早出厂的英特尔芯片,更新后會降低效能,也有说法是性能约下降30%,尤其是较旧的Haswell架构及之前芯片。但若是安装Windows 10并使用Skylake、Kaby Lake等之后更新版英特尔芯片,则性能下降状况并不明显。[23]

尽管如此,已有几个程序帮助保护家庭计算机和相关设备免于“Meltdown”和“Spectre”漏洞的攻击[24][25][26][27]

嵌入在网站中的JavaScript也可用于攻击[14]Chrome 64将默认包含针对此攻击的缓解措施,Chrome 63用户可以通过启用站点隔离功能(chrome://flags#enable-site-per-process)手动缓解攻击 (页面存档备份,存于互联网档案馆[28]。在Firefox 57.0.4中,Mozilla正在降低JavaScript计时器的精度,以帮助防止计时攻击,同时计划用于将来版本的时间模糊技术也在工作中[7][29]。此外,基于浏览器的漏洞利用可以通过禁用JavaScript(例如NoScript)防止。[來源請求]

2018年1月4日,Google在其安全博客上详细介绍了新技术“Retpoline”,该技术能够以微不足道的处理器开销克服Spectre漏洞。它涉及在编译器编译时让间接分支跳转到不同的目标,减少易受攻击的乱序执行发生[30][31]。虽然这项技术面向x86指令集开发,Google工程师认为该技术也可以用于其他处理器[32]。2019年2月,Google研究人员发表论文认为光靠软件不能完全避开Spectre漏洞,必须对CPU设计进行修改才能避免[33]

也有人提出[34],在有选择性刷新轉譯後備緩衝區(TLB)功能的处理器上,可以减少修补漏洞造成的性能损失。该特性在Intel 64架构下称为进程上下文标识符(PCID),而在Alpha下称为地址空间号码(ASN)。这是因为,选择性刷新可隔离进程,及对漏洞至关重要的轉譯後備緩衝區(TLB)行为,而不会不断刷新整个TLB,这是性能损失的主要原因。[35]

微指令韌體更新 编辑

對於幽靈的變體2——分支目標註入,除了軟體的規避阻擋措施外,還至少需要受影響的處理器獲得微指令更新或韌體修復程式。[36]受缺陷影響最大的英特爾已經為新近出貨和一些較老的處理器推出微碼更新[37][38],但是該措施通常需要主機板廠商的配合,以便將處理器廠商提供的微碼更新整合至其主機板的BIOS/UEFI韌體上,因此會出現一些較老的、早已不享有保固服務的主機板沒有獲得微指令更新的情況;而部分較老的處理器,也是未能獲得微碼更新。[39]對於一些主機板廠商未有發佈帶微碼更新韌體,但處理器廠商已經推出微碼更新修復程式的,有的使用者會嘗試以更改主機板韌體的方式安裝微碼更新。[40]

如果BIOS固件得不到更新,微碼更新也可以由Windows/Linux等作業系統進行。

英特爾在其新出貨的處理器上內建了對於阻擋利用該類缺陷進行攻擊的微碼更新,並在2018年下半年推出硬體層級上帶特權隔離措施和行程隔離的處理器產品;[41][42][43][44][45]ARM則是發佈了針對受影響處理器核心的韌體修復程式;[46]AMD儘管宣稱未受CVE-2017-5715的影響,但仍舊發佈了相應的微指令更新。[47]

其它 编辑

在Windows平臺上有軟體可偵測電腦硬體受Spectre、Meltdown影響的程度和修補狀態。[48][49][50]

参考文献 编辑

  1. ^ Greenberg, Andy. A Critical Intel Flaw Breaks Basic Security for Most Computers. 连线. January 3, 2018 [January 3, 2018]. (原始内容于January 3, 2018). 
  2. ^ Bright, Peter. Meltdown and Spectre: Here's what Intel, Apple, Microsoft, others are doing about it. Ars Technica. 2018-01-05 [2018-01-06]. (原始内容于2018-05-26). 
  3. ^ 3.0 3.1 3.2 Staff. . Graz University of Technology. 2018 [January 3, 2018]. (原始内容存档于2018-01-03). 
  4. ^ Metz, Cade; Perlroth, Nicole. Researchers Discover Two Major Flaws in the World’s Computers. 纽约时报. January 3, 2018 [January 3, 2018]. ISSN 0362-4331. (原始内容于January 3, 2018) (美国英语). 
  5. ^ Warren, Tom. Intel’s processors have a security bug and the fix could slow down PCs. The Verge. January 3, 2018 [January 3, 2018]. (原始内容于January 3, 2018). 
  6. ^ Ben Thomposn:「幽靈」與「熔毀」漏洞映射出了科技行業的現狀 (中文(臺灣)). 
  7. ^ 7.0 7.1 7.2 Mozilla Foundation Security Advisory 2018-01. [2018-01-06]. (原始内容于2018-03-14). 
  8. ^ https://www.theregister.co.uk/2018/01/04/intel_amd_arm_cpu_vulnerability/ Meltdown, Spectre: The password theft bugs at the heart of Intel CPUs (页面存档备份,存于互联网档案馆), the Register, 2018-01-04.
  9. ^ KB4091663:Intel 微指令更新. 微軟. [2018-06-20]. (原始内容于2018-06-29). 
  10. ^ 推出更新,以啟用防範 Spectre Variant 2 的緩和措施. 微軟. [2018-06-20]. (原始内容于2018-06-28). 
  11. ^ KB4090007:Intel 微指令更新. support.microsoft.com. [2018-06-20]. (原始内容于2018-06-29). 
  12. ^ New Spectre 1.1 and Spectre 1.2 CPU Flaws Disclosed. BleepingComputer. [2018-08-05]. (原始内容于2018-07-16) (美国英语). 
  13. ^ Gibbs, Samuel. Meltdown and Spectre: ‘worst ever’ CPU bugs affect virtually all computers. 衛報. 2018-01-04 [2018-01-06]. (原始内容于2018-01-06). 
  14. ^ 14.0 14.1 Spectre Attacks: Exploiting Speculative Execution (PDF). 2018. (原始内容 (PDF)于January 3, 2018). 
  15. ^ . 2018 [2018-01-06]. (原始内容存档于2018-01-04). 
  16. ^ . 2018 [2018-01-06]. (原始内容存档于2018-01-04). 
  17. ^ (PDF). 2018 [2018-01-06]. (原始内容 (PDF)存档于2018-01-04). 
  18. ^ Staff. . Graz University of Technology. 2018 [January 4, 2018]. (原始内容存档于2018-01-03) (英语). 
  19. ^ Busvine, Douglas; Nellis, Stephen. Security flaws put virtually all phones, computers at risk. Reuters. Thomson-Reuters. January 3, 2018 [January 3, 2018]. (原始内容于January 3, 2018). 
  20. ^ Staff. . Intel. January 3, 2018 [January 4, 2018]. (原始内容存档于2018-01-03). 
  21. ^ An Update on AMD Processor Security. 超威半导体. 2018 [January 4, 2018]. (原始内容于January 4, 2018). 
  22. ^ Fox-Brewster, Thomas. Massive Intel Vulnerabilities Just Landed -- And Every PC User On The Planet May Need To Update. Forbes. Forbes Media LLC. January 3, 2018 [January 3, 2018]. (原始内容于January 3, 2018). 
  23. ^ 安全漏洞作祟、微軟:更新會拖慢電腦. [2018-01-10]. (原始内容于2018-01-10). 
  24. ^ Metz, Cade; Chen, Brian X. What You Need to Do Because of Flaws in Computer Chips. The New York Times. January 4, 2018 [January 5, 2018]. (原始内容于2018-01-06). 
  25. ^ Pressman, Aaron. Why Your Web Browser May Be Most Vulnerable to Spectre and What to Do About It. Fortune (magazine). January 5, 2018 [January 5, 2018]. (原始内容于2018-01-10). 
  26. ^ Chacos, Brad. . PC World. January 4, 2018 [January 4, 2018]. (原始内容存档于2018-01-04). 
  27. ^ Elliot, Matt. Security - How to protect your PC against the Intel chip flaw - Here are the steps to take to keep your Windows laptop or PC safe from Meltdown and Spectre.. CNET. January 4, 2018 [January 4, 2018]. (原始内容于January 4, 2018). 
  28. ^ Google’s Mitigations Against CPU Speculative Execution Attack Methods. support.google.com. [January 4, 2018]. (原始内容于January 3, 2018) (英语). 
  29. ^ . Mozilla Security Blog. [January 4, 2018]. (原始内容存档于2018-01-04) (美国英语). 
  30. ^ . [2018-01-06]. (原始内容存档于2018-01-05). 
  31. ^ . tech.slashdot.org. [2018-01-06]. (原始内容存档于2018-04-08). 
  32. ^ Retpoline: a software construct for preventing branch-target-injection - Google Help. support.google.com. (原始内容于January 5, 2018). 
  33. ^ Mcilroy, Ross; Sevcik, Jaroslav; Tebbi, Tobias; Titzer, Ben L.; Verwaest, Toon. Spectre is here to stay: An analysis of side-channels and speculative execution. arXiv:1902.05178 [cs]. 2019-02-13 [2019-02-22]. (原始内容于2019-02-22). 
  34. ^ . How-To Geek. [2018-01-06]. (原始内容存档于2018-01-20). 
  35. ^ Meltdown 與 Spectre 的最新修補狀況如何了?如何評量效能降低程度?. TechNews 科技新報. [2018-06-20]. (原始内容于2018-06-20) (中文(臺灣)). 
  36. ^ US, Dell. . 戴爾. [2018-06-20]. (原始内容存档于2018-06-20) (中文(中国大陆)). 
  37. ^ microcode revision guidance (PDF). Intel. [2018-06-20]. (原始内容 (PDF)于2018-06-24). 
  38. ^ Intel 處理器微碼更新進度報告:修復至第六代 Core 處理器 Skylake,下一步將延伸至 Sandy Bridge. 2018-02-23 [2018-06-20]. (原始内容于2018-06-20) (中文(臺灣)). 
  39. ^ Intel 停止舊款處理器 Spectre 漏洞安全性更新. TechNews 科技新報. [2020-01-01]. (原始内容于2020-01-01) (中文(臺灣)). 
  40. ^ Intel 處理器微碼更新進度報告:Broadwell 與 Haswell 修正完畢釋出,附贈 UBU 更新微碼教學. 2018-03-01 [2018-06-20]. (原始内容于2018-06-20) (中文(臺灣)). 
  41. ^ Warren, Tom. Intel processors are being redesigned to protect against Spectre - New hardware coming later this year. The Verge. 2018-03-15 [2018-03-15]. (原始内容于2018-04-21). 
  42. ^ Shankland, Stephen. Intel will block Spectre attacks with new chips this year - Cascade Lake processors for servers, coming this year, will fight back against a new class of vulnerabilities, says CEO Brian Krzanich.. CNET. 2018-03-15 [2018-03-15]. (原始内容于2018-04-23). 
  43. ^ Coldewey, Devin. Intel announces hardware fixes for Spectre and Meltdown on upcoming chips. TechCrunch. 2018-03-15 [2018-03-28]. (原始内容于2018-04-12). 
  44. ^ 硬體修復最實在!Intel 下半年推出處理器將對 Meltdown 與 Spectre variant 2 免疫. 2018-03-16 [2018-06-20]. (原始内容于2018-06-20) (中文(臺灣)). 
  45. ^ Intel Cascade Lake 和新系列8th Gen Core将在硬件上修复Spectre #2和Meltdown漏洞. [2018-06-20]. (原始内容于2018-06-20). 
  46. ^ 关于Spectre和Meltdown的一则笑话【Intel,AMD & ARM】【2018开年巨献】. [2018-06-20]. (原始内容于2018-06-20). 
  47. ^ AMD 處理器安全性. AMD. [2018-06-20]. (原始内容于2018-06-20) (中文(繁體)). 
  48. ^ 你的電腦對 Meltdown 和 Spectre 免疫嗎?快下載 InSpectre 自我檢測. 2018-01-18 [2018-06-20]. (原始内容于2018-06-20) (中文(臺灣)). 
  49. ^ InSpectre - Spectre/Meltdown脆弱性に対する対応状況を確認できるWindows用ユーティリティ | ソフトアンテナブログ. www.softantenna.com. [2018-06-20]. (原始内容于2018-06-20) (日语). 
  50. ^ . www.grc.com. [2018-06-20]. (原始内容存档于2018-06-20) (英语). 

外部链接 编辑

  • Meltdown和Spectre漏洞的官方网站 (页面存档备份,存于互联网档案馆
  • Spectre论文 (页面存档备份,存于互联网档案馆
  • Google Project Zero write-up (页面存档备份,存于互联网档案馆
  • 网络安全实践指南—CPU熔断和幽灵漏洞防范指引 (页面存档备份,存于互联网档案馆(简体中文)

参见 编辑

  • 熔毁 (安全漏洞) - 英特尔微处理器中的硬件漏洞,允许未经授权的进程访问特权内存。
  • 行锤击英语Row hammer - 动态随机存取存储器中的意外副作用,导致存储单元之间发生电气相互作用。

幽灵漏洞, 此條目翻譯自其他語言維基百科, 需要相關領域的編者協助校對翻譯, 如果您精通本領域, 又能清楚地將來源語言翻譯為中文, 歡迎您協助校訂翻譯, 原文参见维基数据, 幽灵, 英語, spectre, 是一个存在于分支预测实现中的硬體缺陷及安全漏洞, 含有预测执行功能的现代微处理器均受其影响, 漏洞利用是基於時間的旁路攻擊, 允许恶意进程獲得其他程序在映射内存中的資料内容, spectre是一系列的漏洞, 基於攻擊行爲類型, 賦予了两个通用漏洞披露id, 分别是cve, 2017, 5753, bounds,. 此條目翻譯自其他語言維基百科 需要相關領域的編者協助校對翻譯 如果您精通本領域 又能清楚地將來源語言翻譯為中文 歡迎您協助校訂翻譯 原文参见维基数据 幽灵 英語 Spectre 是一个存在于分支预测实现中的硬體缺陷及安全漏洞 含有预测执行功能的现代微处理器均受其影响 1 2 漏洞利用是基於時間的旁路攻擊 允许恶意进程獲得其他程序在映射内存中的資料内容 3 4 5 Spectre是一系列的漏洞 基於攻擊行爲類型 賦予了两个通用漏洞披露ID 分别是CVE 2017 5753 bounds check bypass 边界检查绕过 和CVE 2017 5715 branch target injection 分支目标注入 於2018年1月隨同另一個也基於推測執行機制的 屬於重量級資訊安全漏洞的硬體缺陷 Meltdown 熔燬 一同公佈 由於該缺陷是推測執行機制導致的 加上不同處理器架構對推測執行又有不同的實作方式 因此這個缺陷無法獲得根源上的修復而只能採取 見招拆招 式的方法防範 而且因機制所致 各種解決方案還有不可預料的效能下降 6 该漏洞的徽标 特征是手中的树枝 branch 有分支 分叉之意 CVE 2017 5753依赖于運行中的即时编译 JIT 系統 用于Javascript的JIT引擎已被发现存在此漏洞 网站可以读取浏览器中存储的另一个网站的数据 或者浏览器本身的記憶體 對此Firefox 57 0 4 部分 及Chrome 64通过为每个网站分配专用的浏览器程序来阻擋此類攻擊 7 8 作業系統則是通過改寫的編譯器重新編譯以阻擋利用該漏洞進行攻擊的行爲 針對CVE 2017 5715 除了軟體層面上進行修改以外 處理器也需要通過微指令更新來阻擋這類攻擊 9 10 11 隨著幽靈缺陷衍生的安全漏洞 攻擊手段變體 包括CVE 2018 3693 CVE 2018 3640 CVE 2018 3639等 被逐一發現 英特爾等CPU開發商不得不在修復既有缺陷的同時資助第三方資訊安全團隊繼續發掘潛在的缺陷以破財消災 12 目录 1 历史 2 细节 3 影响 4 防御措施 4 1 微指令 韌體更新 4 2 其它 5 参考文献 6 外部链接 7 参见历史 编辑Spectre由Google Project Zero的Jann Horn独立发现 Paul Kocher 英语 Paul Kocher 协同Daniel Genkin Mike Hamburg Moritz Lipp和Yuval Yarom也合作发现了此问题 微软漏洞研究 Microsoft Vulnerability Research 则将此问题的波及范围扩展到了浏览器JavaScript的JIT引擎 3 7 2017年6月1日 受影响的硬體供应商知悉此问题 2018年1月3日 此漏洞与另一安全漏洞熔毁 英語 Meltdown 被一同公布 13 细节 编辑Spectre是一个可以迫使用户操作系统上的其他程序访问其程序電腦記憶體空间中任意位置的漏洞 Spectre不是单个易于修复的漏洞 而是 14 一类 15 潜在漏洞的总和 它们都利用了一种现代微处理器为降低内存潜伏 英语 Memory latency 加快执行速度的常用方法 预测执行 的副作用 具体而言 Spectre着重于分支预测 这是预测执行的一部分 与同时披露的相关漏洞 熔毁 不同 Spectre不依赖单个处理器上記憶體管理及系统保护的特定功能 而是一个更为通用的漏洞 白皮书的出发点是 对分支预测机制进行边信道定时攻击 16 它是现代微处理器乱序执行的一部分 虽然 处理器的文档保证在架构级别 预测错误所导致的任何后果都会在得到正确结果之后取消 然而预测执行仍然有可能留下副作用 例如已加载的缓存线 这些所谓的非功能性方面随后便可影响计算环境 如果这种副作用 包括但不限于内存访问时间 对恶意程序可见 并且能设法与受害行程所保存的敏感数据 英语 Information sensitivity 产生关系 则这些副作用可能会使敏感数据可被识别 即使在架构级别 正式的安全设计能正常工作 这种情况仍然会发生 这种情况下 用于代码执行的 较低级的微架構优化仍然有可能泄漏对正常程序正确执行不是非常重要的某些信息 Spectre论文展示了完成攻击的四个基本步骤 首先 论文阐述了在现代处理器中的 恶意程序可以通过程序内部的运行操纵分支预测逻辑 使得分支预测命中或者失败的情况可以提前判断 随后展示了 可以可靠地对缓存命中和未命中间的差异进行计时 因此 本来应该是简单的非功能差异 实际却可作为秘密信道 从无关信息中提取进程的内部工作信息 然后 论文以一个简单的示例程序和一个在浏览器沙盒中运行的JavaScript片段为基础 将结果与返回导向编程攻击等原理进行综合 在这两种情况下 只需简单使用由普通编译器或现有浏览器中JavaScript引擎生成的代码 利用其中条件分支的预测执行 受害者进程的整个地址空间 即运行中程序的内容 都将可读 其基本思想是 在现有的代码中寻找预测执行可能涉及到不可访问数据的地方 操纵处理器 使得预测执行必须触及该数据的实际内容 然后对处理器的副作用计时 这时预取机制已经加载完成了一条缓存线 结果就是访问这条缓存线的数据速度会更快 最后 本文将这种攻击一般化到受害进程的任何非功能状态上 紧接着讨论了甚至像总线仲裁延迟这样非常不明显的非功能性效应 Spectre和Meltdown之间的根本区别在于 后者依赖于现代英特尔处理器的特定功能 CPU可能会被诱使预测执行到受保护的系统数据中 被迫进入并处理相关的安全异常 Spectre中的统计学特征更为明显 尽最大努力以某种方式调教处理器的分支预测机制 并使用现有库中可用 或不可用 的代码来实现基本相同的事 或者换句话说 正如Meltdown论文所说的那样 Meltdown在几个方面与Spectre攻击有所不同 其中值得注意的是 Spectre需要定制受害者进程的软件环境 但适用的CPU更加广泛 并且KAISER对其无效 17 影响 编辑截至2018年 几乎所有的计算机系统都受到Spectre的影响 包括台式机 笔记本电脑和移动设备 具体而言 Spectre已证明可以在主要的Intel 部分ARM的处理器上工作 特定情況下則在AMD架構下能運作 18 19 英特尔正式回应了所报告的安全漏洞 20 根据AMD的一份声明 Spectre第二个变种没有发生在AMD处理器上 且由于AMD架构之间存在差异 风险接近于零 21 目前 Spectre只会造成用户级别的程序互相影响 但似乎这种攻击方式可以进一步开发 虽然比熔毁更难正确使用 但由于它的一般性 Spectre可能会更加难以抵御 原来的白皮书甚至推测 为了完全处理这个问题 可能需要对微处理器体系结构进行重大改变 而且 对于云提供商而言 Spectre比Meltdown影响更大 Meltdown可使未经授权的应用程序读取特权内存 并获取运行在同一云服务器上进程的敏感数据 而Spectre可让恶意程序诱使虚拟机管理程序将数据传输到在其上运行的客户系统 22 防御措施 编辑由于Spectre是一整类的攻击 所以一个补丁很可能无法完全解决 虽然这个漏洞的一些特殊案例已经在处理 但专门介绍 Spectre 和 Meltdown 的网站也说 Spectre不易修复 所以会长期困扰我们 3 微软 Windows 系列操作系统于2018年初发布了系统补丁 英特尔公司于事件发生阶段反复表示修复漏洞对性能影响不大 但微软测试表明若安裝Windows 7 Windows 8操作系统 並使用2015年或更早出厂的英特尔芯片 更新后會降低效能 也有说法是性能约下降30 尤其是较旧的Haswell架构及之前芯片 但若是安装Windows 10并使用Skylake Kaby Lake等之后更新版英特尔芯片 则性能下降状况并不明显 23 尽管如此 已有几个程序帮助保护家庭计算机和相关设备免于 Meltdown 和 Spectre 漏洞的攻击 24 25 26 27 嵌入在网站中的JavaScript也可用于攻击 14 Chrome 64将默认包含针对此攻击的缓解措施 Chrome 63用户可以通过启用站点隔离功能 chrome flags enable site per process 手动缓解攻击 页面存档备份 存于互联网档案馆 28 在Firefox 57 0 4中 Mozilla正在降低JavaScript计时器的精度 以帮助防止计时攻击 同时计划用于将来版本的时间模糊技术也在工作中 7 29 此外 基于浏览器的漏洞利用可以通过禁用JavaScript 例如NoScript 防止 來源請求 2018年1月4日 Google在其安全博客上详细介绍了新技术 Retpoline 该技术能够以微不足道的处理器开销克服Spectre漏洞 它涉及在编译器编译时让间接分支跳转到不同的目标 减少易受攻击的乱序执行发生 30 31 虽然这项技术面向x86指令集开发 Google工程师认为该技术也可以用于其他处理器 32 2019年2月 Google研究人员发表论文认为光靠软件不能完全避开Spectre漏洞 必须对CPU设计进行修改才能避免 33 也有人提出 34 在有选择性刷新轉譯後備緩衝區 TLB 功能的处理器上 可以减少修补漏洞造成的性能损失 该特性在Intel 64架构下称为进程上下文标识符 PCID 而在Alpha下称为地址空间号码 ASN 这是因为 选择性刷新可隔离进程 及对漏洞至关重要的轉譯後備緩衝區 TLB 行为 而不会不断刷新整个TLB 这是性能损失的主要原因 35 微指令 韌體更新 编辑 對於幽靈的變體2 分支目標註入 除了軟體的規避阻擋措施外 還至少需要受影響的處理器獲得微指令更新或韌體修復程式 36 受缺陷影響最大的英特爾已經為新近出貨和一些較老的處理器推出微碼更新 37 38 但是該措施通常需要主機板廠商的配合 以便將處理器廠商提供的微碼更新整合至其主機板的BIOS UEFI韌體上 因此會出現一些較老的 早已不享有保固服務的主機板沒有獲得微指令更新的情況 而部分較老的處理器 也是未能獲得微碼更新 39 對於一些主機板廠商未有發佈帶微碼更新韌體 但處理器廠商已經推出微碼更新修復程式的 有的使用者會嘗試以更改主機板韌體的方式安裝微碼更新 40 如果BIOS固件得不到更新 微碼更新也可以由Windows Linux等作業系統進行 英特爾在其新出貨的處理器上內建了對於阻擋利用該類缺陷進行攻擊的微碼更新 並在2018年下半年推出硬體層級上帶特權隔離措施和行程隔離的處理器產品 41 42 43 44 45 ARM則是發佈了針對受影響處理器核心的韌體修復程式 46 AMD儘管宣稱未受CVE 2017 5715的影響 但仍舊發佈了相應的微指令更新 47 其它 编辑 在Windows平臺上有軟體可偵測電腦硬體受Spectre Meltdown影響的程度和修補狀態 48 49 50 参考文献 编辑 Greenberg Andy A Critical Intel Flaw Breaks Basic Security for Most Computers 连线 January 3 2018 January 3 2018 原始内容存档于January 3 2018 Bright Peter Meltdown and Spectre Here s what Intel Apple Microsoft others are doing about it Ars Technica 2018 01 05 2018 01 06 原始内容存档于2018 05 26 3 0 3 1 3 2 Staff Meltdown and Spectre Graz University of Technology 2018 January 3 2018 原始内容存档于2018 01 03 Metz Cade Perlroth Nicole Researchers Discover Two Major Flaws in the World s Computers 纽约时报 January 3 2018 January 3 2018 ISSN 0362 4331 原始内容存档于January 3 2018 美国英语 Warren Tom Intel s processors have a security bug and the fix could slow down PCs The Verge January 3 2018 January 3 2018 原始内容存档于January 3 2018 Ben Thomposn 幽靈 與 熔毀 漏洞映射出了科技行業的現狀 中文 臺灣 7 0 7 1 7 2 Mozilla Foundation Security Advisory 2018 01 2018 01 06 原始内容存档于2018 03 14 https www theregister co uk 2018 01 04 intel amd arm cpu vulnerability Meltdown Spectre The password theft bugs at the heart of Intel CPUs 页面存档备份 存于互联网档案馆 the Register 2018 01 04 KB4091663 Intel 微指令更新 微軟 2018 06 20 原始内容存档于2018 06 29 推出更新 以啟用防範 Spectre Variant 2 的緩和措施 微軟 2018 06 20 原始内容存档于2018 06 28 KB4090007 Intel 微指令更新 support microsoft com 2018 06 20 原始内容存档于2018 06 29 New Spectre 1 1 and Spectre 1 2 CPU Flaws Disclosed BleepingComputer 2018 08 05 原始内容存档于2018 07 16 美国英语 Gibbs Samuel Meltdown and Spectre worst ever CPU bugs affect virtually all computers 衛報 2018 01 04 2018 01 06 原始内容存档于2018 01 06 14 0 14 1 Spectre Attacks Exploiting Speculative Execution PDF 2018 原始内容存档 PDF 于January 3 2018 Reading privileged memory with a side channel 2018 2018 01 06 原始内容存档于2018 01 04 Mitigations landing for new class of timing attack 2018 2018 01 06 原始内容存档于2018 01 04 Meltdown PDF 2018 2018 01 06 原始内容 PDF 存档于2018 01 04 Staff Meltdown and Spectre faq systems spectre Graz University of Technology 2018 January 4 2018 原始内容存档于2018 01 03 英语 Busvine Douglas Nellis Stephen Security flaws put virtually all phones computers at risk Reuters Thomson Reuters January 3 2018 January 3 2018 原始内容存档于January 3 2018 Staff Intel Responds To Security Research Findings Intel January 3 2018 January 4 2018 原始内容存档于2018 01 03 An Update on AMD Processor Security 超威半导体 2018 January 4 2018 原始内容存档于January 4 2018 Fox Brewster Thomas Massive Intel Vulnerabilities Just Landed And Every PC User On The Planet May Need To Update Forbes Forbes Media LLC January 3 2018 January 3 2018 原始内容存档于January 3 2018 安全漏洞作祟 微軟 更新會拖慢電腦 2018 01 10 原始内容存档于2018 01 10 Metz Cade Chen Brian X What You Need to Do Because of Flaws in Computer Chips The New York Times January 4 2018 January 5 2018 原始内容存档于2018 01 06 Pressman Aaron Why Your Web Browser May Be Most Vulnerable to Spectre and What to Do About It Fortune magazine January 5 2018 January 5 2018 原始内容存档于2018 01 10 Chacos Brad How to protect your PC from the major Meltdown and Spectre CPU flaws PC World January 4 2018 January 4 2018 原始内容存档于2018 01 04 Elliot Matt Security How to protect your PC against the Intel chip flaw Here are the steps to take to keep your Windows laptop or PC safe from Meltdown and Spectre CNET January 4 2018 January 4 2018 原始内容存档于January 4 2018 Google s Mitigations Against CPU Speculative Execution Attack Methods support google com January 4 2018 原始内容存档于January 3 2018 英语 Mitigations landing for new class of timing attack Mozilla Security Blog January 4 2018 原始内容存档于2018 01 04 美国英语 More details about mitigations for the CPU Speculative Execution issue 2018 01 06 原始内容存档于2018 01 05 Google Says CPU Patches Cause Negligible Impact On Performance With New Retpoline Technique Slashdot tech slashdot org 2018 01 06 原始内容存档于2018 04 08 Retpoline a software construct for preventing branch target injection Google Help support google com 原始内容存档于January 5 2018 Mcilroy Ross Sevcik Jaroslav Tebbi Tobias Titzer Ben L Verwaest Toon Spectre is here to stay An analysis of side channels and speculative execution arXiv 1902 05178 cs 2019 02 13 2019 02 22 原始内容存档于2019 02 22 How Will the Meltdown and Spectre Flaws Affect My PC How To Geek 2018 01 06 原始内容存档于2018 01 20 Meltdown 與 Spectre 的最新修補狀況如何了 如何評量效能降低程度 TechNews 科技新報 2018 06 20 原始内容存档于2018 06 20 中文 臺灣 US Dell 微处理器旁路攻击分析漏洞支持 戴爾 2018 06 20 原始内容存档于2018 06 20 中文 中国大陆 microcode revision guidance PDF Intel 2018 06 20 原始内容存档 PDF 于2018 06 24 Intel 處理器微碼更新進度報告 修復至第六代 Core 處理器 Skylake 下一步將延伸至 Sandy Bridge 2018 02 23 2018 06 20 原始内容存档于2018 06 20 中文 臺灣 Intel 停止舊款處理器 Spectre 漏洞安全性更新 TechNews 科技新報 2020 01 01 原始内容存档于2020 01 01 中文 臺灣 Intel 處理器微碼更新進度報告 Broadwell 與 Haswell 修正完畢釋出 附贈 UBU 更新微碼教學 2018 03 01 2018 06 20 原始内容存档于2018 06 20 中文 臺灣 Warren Tom Intel processors are being redesigned to protect against Spectre New hardware coming later this year The Verge 2018 03 15 2018 03 15 原始内容存档于2018 04 21 Shankland Stephen Intel will block Spectre attacks with new chips this year Cascade Lake processors for servers coming this year will fight back against a new class of vulnerabilities says CEO Brian Krzanich CNET 2018 03 15 2018 03 15 原始内容存档于2018 04 23 Coldewey Devin Intel announces hardware fixes for Spectre and Meltdown on upcoming chips TechCrunch 2018 03 15 2018 03 28 原始内容存档于2018 04 12 硬體修復最實在 Intel 下半年推出處理器將對 Meltdown 與 Spectre variant 2 免疫 2018 03 16 2018 06 20 原始内容存档于2018 06 20 中文 臺灣 Intel Cascade Lake 和新系列8th Gen Core将在硬件上修复Spectre 2和Meltdown漏洞 2018 06 20 原始内容存档于2018 06 20 关于Spectre和Meltdown的一则笑话 Intel AMD amp ARM 2018开年巨献 2018 06 20 原始内容存档于2018 06 20 AMD 處理器安全性 AMD 2018 06 20 原始内容存档于2018 06 20 中文 繁體 你的電腦對 Meltdown 和 Spectre 免疫嗎 快下載 InSpectre 自我檢測 2018 01 18 2018 06 20 原始内容存档于2018 06 20 中文 臺灣 InSpectre Spectre Meltdown脆弱性に対する対応状況を確認できるWindows用ユーティリティ ソフトアンテナブログ www softantenna com 2018 06 20 原始内容存档于2018 06 20 日语 GRC InSpectre www grc com 2018 06 20 原始内容存档于2018 06 20 英语 外部链接 编辑Meltdown和Spectre漏洞的官方网站 页面存档备份 存于互联网档案馆 Spectre论文 页面存档备份 存于互联网档案馆 Google Project Zero write up 页面存档备份 存于互联网档案馆 网络安全实践指南 CPU熔断和幽灵漏洞防范指引 页面存档备份 存于互联网档案馆 简体中文 参见 编辑熔毁 安全漏洞 英特尔微处理器中的硬件漏洞 允许未经授权的进程访问特权内存 行锤击 英语 Row hammer 动态随机存取存储器中的意外副作用 导致存储单元之间发生电气相互作用 取自 https zh wikipedia org w index php title 幽灵漏洞 amp oldid 78345074, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。