偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

小心,Cache 側(cè)信道攻擊

安全 應(yīng)用安全
密碼是一種用來混淆的技術(shù),它將正常的(可識別的)信息轉(zhuǎn)變?yōu)闊o法識別的信息?,F(xiàn)階段用戶的隱私信息大多是依靠加密技術(shù)實現(xiàn),如登錄網(wǎng)站、電子郵箱、銀行取款等等。用戶信息的安全性依靠于加密算法的安全性。然而理論上的安全并不等同于物理實現(xiàn)上的安全。

密碼是一種用來混淆的技術(shù),它將正常的(可識別的)信息轉(zhuǎn)變?yōu)闊o法識別的信息。現(xiàn)階段用戶的隱私信息大多是依靠加密技術(shù)實現(xiàn),如登錄網(wǎng)站、電子郵箱、銀行取款等等。用戶信息的安全性依靠于加密算法的安全性。然而理論上的安全并不等同于物理實現(xiàn)上的安全。

側(cè)信道攻擊是利用密碼算法執(zhí)行過程中泄漏的與內(nèi)部運算緊密相關(guān)的多種物理狀態(tài)信息如聲光信息、功耗、電磁輻射以及運行時間等,再結(jié)合統(tǒng)計學(xué)手段等進行攻擊。近年來,側(cè)信道技術(shù)已經(jīng)逐漸地從設(shè)備外部深入到計算機內(nèi)部的CPU、高速緩存(Cache)、分支預(yù)測單元等等得到其中蘊含的敏感信息(如密鑰)。Cache攻擊是一種新型的側(cè)信道分析技術(shù),它可以跨平臺、跨CPU、突破安全邊界對目標設(shè)備進行攻擊,對現(xiàn)有安全防護造成極大的威脅。另外,由于Cache側(cè)信道攻擊可以利用cache共享實施攻擊,因此具有不易發(fā)現(xiàn)且極難防御的特點。

Cache是什么?

Cache的學(xué)名是中央處理單元高速緩沖存儲器,由靜態(tài)存儲芯片(SRAM)組成,容量比較小但速度比主存高得多, 接近于CPU的速度。主要由三大部分組成:

?Cache存儲體:存放由主存調(diào)入的指令與數(shù)據(jù)塊。

?地址轉(zhuǎn)換部件:建立目錄表以實現(xiàn)主存地址到緩存地址的轉(zhuǎn)換。

?替換部件:在緩存已滿時按一定策略進行數(shù)據(jù)塊替換,并修改地址轉(zhuǎn)換部件。

Cache的作用

馮.諾依曼體系結(jié)構(gòu)是現(xiàn)代計算機的基礎(chǔ),現(xiàn)在大多計算機仍是馮.諾依曼計算機的組織結(jié)構(gòu)。一個典型的馮諾依曼系統(tǒng)如圖1所示,包含下面幾大件:計算機由控制器、運算器、存儲器、輸入設(shè)備、輸出設(shè)備五部分組成。然而由于計算機技術(shù)發(fā)展,主存儲器速度比CPU處理速度慢得多,使得CPU的高速處理能力不能充分發(fā)揮,整個計算機系統(tǒng)的工作效率受到影響。為了緩和中央處理器和主存儲器之間速度不匹配的矛盾,計算機系統(tǒng)加入了Cache模塊,現(xiàn)代計算機CPU與內(nèi)存和Cache基本關(guān)系如圖2所示 。CPU在Cache中找到有用的數(shù)據(jù)被稱為命中,當Cache中沒有CPU所需的數(shù)據(jù)時(這時稱為未命中),CPU才訪問內(nèi)存。

圖1 馮諾依曼體系結(jié)構(gòu)

圖2 最簡單的高速緩存配置圖

Cache結(jié)構(gòu)

一般處理器的cache分三層,其架構(gòu)如下圖3所示,L1 Cache一般分為Data Cache(數(shù)據(jù)緩存)和Instruction Cache(指令緩存),為每個核單獨占有。L2 Cache一般是每個核心單獨占有,或者兩個核心共享。L3 Cache一般在多核CPU中是所有核心CPU共用。訪問時間關(guān)系為T-(內(nèi)存)>T--(L3)>T(L2)>T(L1)。

圖3 Intel cache架構(gòu)

Cache側(cè)信道攻擊原理

多核之間cache數(shù)據(jù)共享,而cache命中和失效對應(yīng)響應(yīng)時間有差別,攻擊者可以通過訪問時間的差異,推測cache中的信息,從而獲得隱私數(shù)據(jù)。根據(jù)采集信息不同,cache側(cè)信道攻擊可分為時序驅(qū)動攻擊、訪問驅(qū)動攻擊以及蹤跡驅(qū)動攻擊。時序驅(qū)動攻擊需要獲得目標攻擊系統(tǒng)詳細配置參數(shù),重建對照環(huán)境,利用統(tǒng)計分析方法,對照采集到的密碼算法一次加密/解密的整體時間,推測密鑰。蹤跡驅(qū)動攻擊需采集密碼算法執(zhí)行過程中所有cache訪問命中和失效序列,再結(jié)合明文或密文推測密鑰,一般通過功耗檢測手段進行,但該手段需要特殊的信息采集設(shè)備而且需要物理接觸密碼設(shè)備,實現(xiàn)起來比較復(fù)雜。訪問驅(qū)動攻擊通過采集加密或解密過程中訪問的cache組集合,再利用數(shù)學(xué)分析方法推測密鑰,可以遠程實現(xiàn),攻擊實現(xiàn)可行性較強。目前,cache側(cè)信道攻擊中訪問驅(qū)動攻擊實現(xiàn)最為簡單,影響范圍最大,以下將介紹其兩種主流的方法,Prime-probe方法和Flush-reload方法。

Prime-Probe(PP)方法

攻擊者首先在prime階段將特定cache組填充為自己的數(shù)據(jù),然后等待目標虛擬機在Trigger階段使用被填充的cache 組地址,一些數(shù)據(jù)將被驅(qū)逐出cache,在probe階段重新讀取數(shù)據(jù),驅(qū)逐的cache需要一個較長的讀取時間.因此,根據(jù)Probe 階段探測的cache重載時間,可以判斷目標虛擬機在響應(yīng)服務(wù)時使用Cache地址。其方法具體步驟如下:

步驟1. Prime: 攻擊者用預(yù)先準備的數(shù)據(jù)填充特定多個cache 組

步驟2. Trigger: 等待目標虛擬機響應(yīng)服務(wù)請求,將cache數(shù)據(jù)更新

步驟3. Probe: 重新讀取Prime 階段填充的數(shù)據(jù),測量并記錄各個cache 組讀取時間

其主要攻擊原理如圖4所示。

圖4 Prime-Probe方法

Flush-Reload(FR)方法

Flush-Reload(FR)方法是prime-probe方法的變種,基于共享內(nèi)存實現(xiàn),是一種跨內(nèi)核、跨虛擬機的Cache 探測方法。在Flush 階段,攻擊者將監(jiān)控的內(nèi)存塊從cache中驅(qū)逐出去,然后在Trigger階段等待目標用戶訪問共享內(nèi)存。在Reload階段,攻擊者重新加載監(jiān)控的共享內(nèi)存塊。如果在等待的期間,目標虛擬機訪問過的內(nèi)存塊需要重新加載,時間將會較短,因為這些數(shù)據(jù)已經(jīng)被緩存在cache中。根據(jù)加載時間長短,可判定目標虛擬機訪問過的數(shù)據(jù)。Flush-Reload具體步驟如下:

步驟1. Flush:將共享內(nèi)存中特定位置映射的cache數(shù)據(jù)驅(qū)逐

步驟2. Trigger:等待目標虛擬機響應(yīng)服務(wù)請求,更新Cache

步驟3. Reload:重新加載Flush階段驅(qū)逐的內(nèi)存塊,測量并記錄cache組的重載時間

其方法攻擊原理如圖5所示。

圖5 Flush-Reload方法

Cache側(cè)信道的攻擊發(fā)展

1998 年,Kesley 等人首次提出Cache 命中率可用于密鑰分析的思想,顛覆了傳統(tǒng)密鑰分析方法,引起了研究人員的廣泛關(guān)注。之后,研究人員以數(shù)據(jù)緩存、指令緩存作為研究對象,提出了多種可行的Cache 側(cè)信道攻擊方法,對算法安全性帶來了嚴重威脅。但大部分研究成果都是基于單機非虛擬化環(huán)境。直到2009年,Ristenpart等人首次提出在云環(huán)境中存在跨虛擬機cache側(cè)信道攻擊的安全威脅,并利用Prime-Probe 方法在Amazon EC2 云平臺中探測得到同駐虛擬機的Cache 負載狀態(tài)信息以及用戶擊鍵間隔時間信息等。2014年,Yarom提出第一個跨內(nèi)核的cache側(cè)信道攻擊Flush-reload。其利用Intel X86處理器系統(tǒng)共享內(nèi)存的漏洞,通過監(jiān)測內(nèi)存得到CPU處理的cache line。此種攻擊主要利用L3層cache實現(xiàn)攻擊,同時并不需要共享執(zhí)行core。2015年,Liu和Irazoqu使Prime-Probe攻擊可以應(yīng)用于跨內(nèi)核的cache側(cè)信道攻擊。2016年,Irazaqui提出第一個可以跨CPU的AMD平臺的cache攻擊。攻擊環(huán)境逐漸從單核轉(zhuǎn)為跨核,從微處理器轉(zhuǎn)到云環(huán)境。

攻擊實例

在2015CCS大會上,Yossef Oren等人利用不安全的網(wǎng)站鏈接,探測得到用戶的鼠標和網(wǎng)頁活動信息,甚至可以利用受害者的正在訪問的網(wǎng)頁信息。此種攻擊可移植性強,不用安裝惡意軟件,可行性較高,攻擊原理如圖6所示。

圖6 利用JavaScript的cache側(cè)信道攻擊原理

在Europe 2016 Blackhat上,Moritz Lipp等人演示了如何從cache中得到信息確定用戶正在輸入的字符,演示情況如圖7所示,用戶輸入字符,攻擊者可以很快獲得相應(yīng)的信息。

圖7 Moritz Lipp演示在智能手機上的cache 側(cè)信道攻擊

在USA 2016 Blackhat上,Taylor Hornby等人演示了如何從cache的側(cè)信道信息中得到其他用戶正在瀏覽的網(wǎng)頁,演示現(xiàn)場圖如圖8所示。

圖8 Taylor Hornby演示如何獲取受害者正在瀏覽的網(wǎng)頁

此外,伴隨著云服務(wù)越來越貼近生活,云用戶持續(xù)增多。云環(huán)境中同駐虛擬機cache資源共享也成為cache側(cè)信道攻擊的目標,近幾年針對云上安全的研究也逐漸增多。在CHES 2016,Inci,M.等人成功實現(xiàn)了在亞馬遜云上得到用戶RSA私鑰,現(xiàn)場如圖9所示。

圖9 Inci,M等人在CHES上講解攻擊原理

在2016 USENIX, Moritz Lipp等人上演示了如何在擁有trustzone安全環(huán)境的安卓手機上實施cache攻擊,得到精準的用戶信息,部分成果如圖10 所示。

圖10 利用cache模版?zhèn)刃诺拦舻玫接脩糨斎胄畔?/p>

在arXiv 2017 ,Schwarz,M等人在Malware Guard Extension: Using SGX to Conceal Cache Attacks一文中,利用SGX來隱藏cache攻擊(Intel聲稱的SGX可以消除側(cè)信道攻擊,并且推薦使用SGX保護加密計算),得到用戶的私鑰。一條跡的數(shù)據(jù)可以恢復(fù)96%的私鑰,11條跡可以恢復(fù)全部的私鑰,其攻擊原理如圖11所示。

圖11 在SGX可信執(zhí)行環(huán)境下的cache側(cè)信道攻擊原理

總結(jié)

Cache側(cè)信道攻擊方法嚴重威脅加密算法的安全性,而且隨著云服務(wù)技術(shù)的大規(guī)模應(yīng)用,虛擬化技術(shù)的普及,使得Cache側(cè)信道遠程攻擊更為隱蔽從而也更具攻擊力。Cache攻擊逐漸滲透到我們的日常應(yīng)用中,智能手機的可信環(huán)境在此種攻擊方法下也存在嚴重安全隱患。安全問題日益突出,用戶的隱私需要更加完善的安全措施來保護。希望更多地研究學(xué)者加入我們的隊伍中,為隱私保駕護航。

【本文為51CTO專欄作者“中國保密協(xié)會科學(xué)技術(shù)分會”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2021-03-09 10:12:39

側(cè)信道攻擊漏洞網(wǎng)絡(luò)攻擊

2021-01-11 10:28:10

漏洞側(cè)信道攻擊

2017-08-23 15:53:28

2022-06-19 21:59:11

頻率側(cè)信道攻擊加密密鑰

2022-03-10 12:16:14

側(cè)信道內(nèi)存攻擊網(wǎng)絡(luò)攻擊

2023-12-12 11:00:50

2020-07-21 07:00:00

側(cè)信道攻擊黑客網(wǎng)絡(luò)攻擊

2023-10-28 15:30:57

2022-05-19 11:29:14

計時攻擊SpringSecurity

2020-03-10 14:21:34

漏洞側(cè)信道攻擊

2021-05-05 20:15:25

側(cè)信道攻擊加密漏洞

2009-01-20 10:38:00

2015-07-20 10:19:14

2013-03-04 10:39:27

2017-01-16 09:20:32

2023-09-27 09:04:50

2016-11-17 14:35:13

2010-08-18 14:42:31

2018-06-13 08:01:54

2021-04-08 08:06:55

SAP應(yīng)用程序攻擊
點贊
收藏

51CTO技術(shù)棧公眾號