999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

詳解Meltdown&Spectre攻擊

2018-11-09 01:16:28
網(wǎng)絡(luò)安全和信息化 2018年2期
關(guān)鍵詞:措施用戶

安全研究人員發(fā)現(xiàn)CPU芯片硬件層面執(zhí)行加速機(jī)制,也就是亂序執(zhí)行(Out-of-Orderexecution)和推測(cè)執(zhí)行(Speculative Execution),會(huì)引起 CPU緩存的污染,從而攻擊者可以發(fā)起基于cache的側(cè)信道攻擊偷取數(shù)據(jù)。目前主要涉及到兩種攻擊方法,分別為 Meltdown和 Spectre。Spectre涉及CVE編號(hào)CVE-2017-5753和CVE-2017-5715,而 Meltdown涉及 CVE編號(hào)CVE-2017-5754。

由于Meltdown和Spectre的攻擊是針對(duì)CPU硬件的缺陷進(jìn)行的攻擊,因此它們的攻擊范圍特別廣,存在于各種操作系統(tǒng)和云平臺(tái)上。近二十年的CPU/OS/VMM基本都受影響,包括從云端到桌面到移動(dòng),對(duì)業(yè)界產(chǎn)生巨大沖擊。

這一漏洞主要用于偷取隱私數(shù)據(jù),包括口令、證書和其他保密數(shù)據(jù),甚至完整的內(nèi)存鏡像。值得慶幸的是這些攻擊不能修改數(shù)據(jù)。影響范圍包括:

CPU處理器:近二十年的Intel、AMD、ARM等處理器都有影響,其中對(duì)Intel處理器的影響尤為嚴(yán)重;

操作系統(tǒng):Windows、Linux、Android、iOS 和macOS等;

虛擬機(jī)管理器:KVM、Xen等。

本文主要關(guān)注Intel CPU Meltdown和Spectre在不同場(chǎng)景下的攻擊及緩解措施,這些內(nèi)容對(duì)AMD/ARM的攻防也有重要的借鑒價(jià)值。這些漏洞雖然影響廣泛,但利用復(fù)雜,限制也很大。

攻擊的場(chǎng)景

Meltdown和Spectre具體有三個(gè)變種:

變種 1(V1)Spectre:繞過邊界檢查(CVE-2017-5753);

變種 2(V2)Spectre:分支預(yù)測(cè)注入(CVE-2017-5715);

變種 3(V3)Meltdown:亂序執(zhí)行的CPU緩存污染(CVE-2017-5754)。

典型的場(chǎng)景威脅:

1.對(duì)虛擬機(jī)管理器VMM的攻擊(A1):攻擊者在VMM管理的一個(gè)VM中,完全控制此VM,比如擁有這個(gè)VM Kernel級(jí)別的權(quán)限,可以直接與VMM進(jìn)行交互。攻擊者通過利用這些漏洞,可以獲取VMM的敏感數(shù)據(jù),或者獲取同一物理主機(jī)下的其他VM內(nèi)的數(shù)據(jù)。

2.對(duì)操作系統(tǒng)內(nèi)核的攻擊(A2):攻擊者是用戶空間的一個(gè)應(yīng)用程序,擁有任意的代碼執(zhí)行能力。攻擊者通過利用這些漏洞,可獲取內(nèi)核內(nèi)的敏感數(shù)據(jù),甚至包括內(nèi)核緩沖區(qū)的文件或網(wǎng)絡(luò)數(shù)據(jù)。

3.對(duì)用戶空間其他用戶數(shù)據(jù)的攻擊(A3):攻擊者是用戶空間的一個(gè)應(yīng)用程序,擁有任意的代碼執(zhí)行能力。攻擊者通過利用這些漏洞,獲取同一操作系統(tǒng)下的其他進(jìn)程的數(shù)據(jù),包括跨Docker的攻擊。

瀏覽器對(duì)用戶空間其他用戶數(shù)據(jù)的攻擊(A3w):攻擊者只能通過網(wǎng)站頁面影響瀏覽器發(fā)起攻擊,可通過利用JavaScript、或Web Assembly等機(jī)制。

V3c組合攻擊:如果將V3攻擊置于V1/V2的預(yù)測(cè)執(zhí)行路徑上,可以完成V3攻擊,但不會(huì)觸發(fā)Kernel能感知的頁面異常,我們稱之為V3c組合攻擊。V3c組合攻擊的發(fā)現(xiàn)意味著A2攻擊場(chǎng)景下,要抵抗V3攻擊,必須要打內(nèi)核補(bǔ)丁。

攻擊的防御與緩解

防護(hù)措施都是有成本的,防護(hù)方可根據(jù)自己的場(chǎng)景來選擇必要的防護(hù)措施。

公有云VMM的運(yùn)營者,應(yīng)該保障VMM不受惡意攻擊,即A1層面的防護(hù)是必須要做到的,特別是V2攻擊。使用Xen的廠商也要關(guān)注V3攻擊的防御。

圖1 加入LFENCE指令在判斷語句之后,防止后面的代碼執(zhí)行推測(cè)運(yùn)行機(jī)制

云上租戶可以根據(jù)自己的需求進(jìn)行防護(hù)。由于A2.V3防護(hù)的KPTI補(bǔ)丁有較為明顯的性能損耗,所以如果云上租戶在同一個(gè)VM內(nèi)部沒有數(shù)據(jù)敏感級(jí)別區(qū)隔,而且對(duì)性能要求較高,那么可以繼續(xù)使用原始內(nèi)核。如果云上租戶在同一個(gè)VM內(nèi)部有多級(jí)數(shù)據(jù)敏感區(qū)隔,而且可執(zhí)行代碼不固定,并能接受額外的性能損耗,那么推薦使用打了安全補(bǔ)丁的內(nèi)核。

對(duì)于普通PC用戶,最大的威脅來自于瀏覽器訪問惡意網(wǎng)址以及感染上惡意代碼。這些防護(hù)與傳統(tǒng)PC安全沒有太大的區(qū)別,及時(shí)升級(jí)即可。

緩解方案

1.邊界檢查繞過的緩解——V1的緩解

V1攻擊高度依賴于特殊的代碼片段(Gadget)。因此,簡單有效的軟件解決方案就是插入一個(gè)Barrier來阻止推測(cè)運(yùn)行機(jī)制在這段特殊代碼里面執(zhí)行。Barrier可以選用LFENCE指令。而MFENCE同樣可以,不過它的性能損失比LFENCE大,實(shí)例如圖1所示。

對(duì)于Linux系統(tǒng),禁用eBPF機(jī)制可以阻斷現(xiàn)有PoC攻擊,使得攻擊者無法通過eBPF接口注入V1 gadget到內(nèi)核空間,從而顯著提升Exploit的構(gòu)造難度。Intel的一個(gè)分析報(bào)告指出,可以作為V1攻擊的代碼片段在Linux內(nèi)核中很少。這樣使得攻擊者發(fā)起V1攻擊的可行性降低。

2.跳轉(zhuǎn)目標(biāo)注入攻擊的緩解——V2的緩解

對(duì)于跳轉(zhuǎn)目標(biāo)注入攻擊,有兩個(gè)可行的緩解方案。

RSB填充+BTB刷新。這是一個(gè)純軟件解決方案,其核心思想就是對(duì)跳轉(zhuǎn)目標(biāo)的Buffer,即RSB和BTB進(jìn)行清理,使得攻擊者注入的跳轉(zhuǎn)目標(biāo)不再有效。因?yàn)镽SB是一個(gè)32個(gè)槽的循環(huán)Buffer,因此只需要32個(gè)虛假的call指令就可以把整個(gè)RSB清理一遍。BTB的槽從1K到16K不等,而且從虛擬地址到BTB索引的映射函數(shù)f(x)還不公開,因此要清除BTB,需要首先使用逆向工程方法找到f(x),然后根據(jù)f(x)找到1K到16K的虛擬地址來對(duì)應(yīng)每個(gè)BTB的槽。最后發(fā)起1K到16K個(gè)虛假的call/jmp把所有BTB的槽清空(實(shí)例代碼如圖2所示)。需要指出,該方案的性能開銷很大。

微碼升級(jí)+系統(tǒng)軟件(VMM/Kernel)補(bǔ)丁。這個(gè)緩解方案需要CPU微碼升級(jí)和系統(tǒng)軟件(VMM/Kernel)更新。CPU微碼的升級(jí)提供了三個(gè)新的接口給系統(tǒng)軟件:

Indirect Branch Restricted Speculation(IBRS)。當(dāng)IBRS被設(shè)置上時(shí),高優(yōu)先級(jí)代碼不會(huì)使用低優(yōu)先級(jí)的跳轉(zhuǎn)地址。比如VMM不會(huì)使用任何VM提供的地址,Kernel也不會(huì)使用任何用戶進(jìn)程提供的地址。

Single Thread Indirect Branch Predictors(STIBP)。當(dāng)STIBP被設(shè)置上時(shí),同一物理CPU上的兩個(gè)HyperThreading邏輯內(nèi)核直接的跳轉(zhuǎn)地址不再共享。

Indirect Branch Predictor Barrier(IBPB)。當(dāng)IBPB被設(shè)置時(shí),之前的跳轉(zhuǎn)地址不會(huì)影響之后的跳轉(zhuǎn)預(yù)測(cè)。這個(gè)功能一般用于從高優(yōu)先級(jí)到低優(yōu)先級(jí)切換上下文的時(shí)候。比如VMM回到VM或Kernel回到用戶空間。

圖2 BTB Flushing,使用 1K或16K跳轉(zhuǎn)來清空BTB

這三個(gè)功能是否支持可以用CPUID加ax=0x7來檢測(cè)。返回結(jié)果中rdx的第26位表明這三個(gè)新功能是否支持。對(duì)系統(tǒng)軟件(VMM/Kernel)的更新,各個(gè)操作系統(tǒng)已經(jīng)發(fā)布了相關(guān)的補(bǔ)丁。

如果無法得到微碼升級(jí),可以考慮使用Retpoline指令替換技術(shù)進(jìn)行防御,替換掉容易被V2攻擊的間接跳轉(zhuǎn)和間接調(diào)用指令。

此外,類似于V1,Linux下關(guān)閉eBPF也可以有效的提升V2攻擊的難度。

3.Meltdown攻擊的緩解措施——V3的緩解

抵御Meltdown攻擊最有效的方式就是KAISER/KPTI。KAISER/KPTI方案中要求操作系統(tǒng)維護(hù)兩個(gè)頁表,一個(gè)頁表給用戶程序使用,一個(gè)給Kernel自己使用。并且確保程序所使用的頁表不會(huì)映射高優(yōu)先級(jí)的頁面,即不會(huì)映射Kernel的頁面。KAISER/KPTI方案最早提出時(shí)是為了側(cè)信道攻擊對(duì)內(nèi)核地址隨機(jī)化(KASLR)的影響,該方案恰巧也可以用來抵御Meltdown攻擊。

兩個(gè)頁表的切換,會(huì)導(dǎo)致CR3的重新加載,從而引起TLB刷新,進(jìn)而降低內(nèi)存的訪問速度。如果某些應(yīng)用場(chǎng)景需要大量的內(nèi)核和用戶空間切換(兩個(gè)頁表之間的切換),會(huì)造成較高的性能開銷。為了降低這些性能開銷,Kernel需要使用充分的利用PCID特性,把TLB的刷新降低。

結(jié)語

本文針對(duì)Meltdown和Spectre攻擊及其緩解措施進(jìn)行了總結(jié)。由于防護(hù)措施都是有成本的,本文給防護(hù)方提供一個(gè)指南,可以根據(jù)自己的場(chǎng)景來選擇必要的防護(hù)措施。本文也指出一些組合攻擊方式,比標(biāo)準(zhǔn)攻擊威脅更大。因此需要盡快部署相關(guān)防護(hù)措施。

猜你喜歡
措施用戶
放養(yǎng)雞疾病防治八措施
環(huán)境保護(hù)中水污染治理措施探討
高中數(shù)學(xué)解題中構(gòu)造法的應(yīng)用措施
20條穩(wěn)外資措施將出臺(tái)
中國外匯(2019年21期)2019-05-21 03:04:06
減少豬相互打斗的措施
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
夏季豬熱應(yīng)激及其防治措施
廣東飼料(2016年5期)2016-12-01 03:43:23
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
主站蜘蛛池模板: 国产乱子伦视频在线播放| 亚洲成a人在线观看| 国产精品亚洲va在线观看| 98精品全国免费观看视频| 都市激情亚洲综合久久| 中文字幕乱码二三区免费| 国产对白刺激真实精品91| 欧美午夜在线视频| 99一级毛片| 伊人精品成人久久综合| 欧洲高清无码在线| 亚洲综合激情另类专区| 国产色偷丝袜婷婷无码麻豆制服| 囯产av无码片毛片一级| 免费看黄片一区二区三区| 最新日韩AV网址在线观看| 国产97视频在线观看| 无码在线激情片| 国产日本欧美在线观看| 亚洲日韩精品无码专区97| 国产高潮视频在线观看| 国产一区二区影院| 一级毛片在线免费视频| 天天干伊人| 欧美a在线| 欧美精品一区在线看| 青青草欧美| 国产亚洲精久久久久久久91| 中国一级毛片免费观看| 亚洲国产欧美国产综合久久 | 永久免费AⅤ无码网站在线观看| 永久在线播放| 精品少妇人妻av无码久久| 少妇精品在线| 欧洲亚洲欧美国产日本高清| 自拍欧美亚洲| 日韩欧美中文字幕在线韩免费 | 精品一區二區久久久久久久網站| 99国产在线视频| 欧美激情成人网| 亚洲成人一区二区| 欧美日韩第二页| 女人18毛片一级毛片在线 | 国产97视频在线观看| 在线视频精品一区| 99偷拍视频精品一区二区| 欧美亚洲欧美| 波多野结衣一区二区三区四区视频| 日本在线国产| 国产女人18毛片水真多1| 日韩精品一区二区三区中文无码| 亚洲第一视频网| 26uuu国产精品视频| 日韩午夜伦| 国产亚洲欧美另类一区二区| 玖玖免费视频在线观看| 久久久久亚洲精品成人网| 天天色天天综合网| 九九视频免费看| 色天天综合| 久久人妻xunleige无码| 99re经典视频在线| 亚国产欧美在线人成| 97成人在线视频| 成人国产小视频| 国产成人精品男人的天堂下载 | av一区二区三区高清久久| 国产熟睡乱子伦视频网站| 亚洲精品桃花岛av在线| 国内精品视频在线| 久久综合色88| 国产精品第一区在线观看| 不卡无码h在线观看| 国产91久久久久久| 成人综合网址| 亚洲视频a| 亚洲欧美日韩视频一区| 欧美国产三级| 国产在线一区视频| 国产成人精品一区二区秒拍1o| 国产精品私拍99pans大尺度| 中文字幕在线播放不卡|