來源:MIT
現代計算機處理器包含許多稱為內核的計算單元,它們共享相同的硬件資源。片上互連是使這些內核能夠相互通信的組件。但是,當多個內核上的程序同時運行時,當它們使用互連同時通過芯片發送數據時,它們有可能相互延遲。通過監視和測量這些延遲,惡意代理可以執行所謂的“側信道攻擊”,并重建存儲在程序中的秘密信息,例如加密密鑰或密碼。麻省理工學院(MIT)的研究人員對片上互連進行了逆向工程,以研究這種攻擊是如何實現的。根據他們的發現,建立了一個分析模型,用于分析流量如何在處理器上的核心之間流動,他們用它來設計和發起令人驚訝的有效的側信道攻擊。然后,他們開發了兩種緩解策略,使用戶能夠在不對計算機芯片進行任何物理更改的情況下提高安全性。“目前很多側信道防御都是臨時的——我們在這里看到了一點點泄漏,我們修補了它。我們希望我們采用這種分析模型的方法能夠推動更系統,更強大的防御措施,同時消除整類攻擊,“共同主要作者Miles Dai說。 Dai與共同主要作者Riccardo Paccagnella一起撰寫了這篇論文,他是伊利諾伊大學厄巴納 - 香檳分校的研究生;米格爾·戈麥斯-加西亞 '22;John McCalpin,德克薩斯先進計算中心的研究科學家;以及資深作者孟家妍,Homer A. Burnell電氣工程和計算機科學(EECS)職業發展助理教授,計算機科學與人工智能實驗室(CSAIL)的成員。該研究將在USENIX安全會議上發表。探測處理器現代處理器就像一個二維網格,多個內核以行和列的形式布局。每個內核都有自己的緩存來存儲數據,并且還有一個更大的緩存在整個處理器之間共享。當位于一個內核上的程序需要訪問另一個內核或共享緩存中的緩存中的數據時,它必須使用片上互連來發送此請求并檢索數據。雖然它是處理器的重要組成部分,但片上互連仍然沒有得到充分的研究,因為它很難被攻擊,Dai解釋說。當來自兩個核心的流量實際上相互干擾時,黑客需要發起攻擊,但是由于流量在互連中花費的時間很少,因此很難恰到好處地確定攻擊的時間。互連也很復雜,并且流量可以在核心之間采用多條路徑。為了研究流量如何在互連上流動,麻省理工學院的研究人員創建了程序,這些程序將有意訪問位于其本地核心外部的內存緩存。“通過測試不同的情況,嘗試不同的位置,并交換這些程序在處理器上的位置,我們可以了解互連上流量背后的規則,”Dai說。他們發現,這種互連就像一條高速公路,每個方向都有多條車道。當兩個流量發生沖突時,互連使用優先級仲裁策略來決定哪個流量流首先進入。更“重要”的請求優先,例如來自對計算機操作至關重要的程序的請求。利用這些信息,研究人員建立了一個處理器的分析模型,總結了流量如何在互連上流動。該模型顯示了哪些內核最容易受到側信道攻擊。如果可以通過許多不同的通道訪問核心,那么它就會更容易受到攻擊。攻擊者可以使用此信息來選擇要監視的最佳核心,以從受害者程序中竊取信息。“如果攻擊者了解互連的工作原理,他們就可以設置自己,以便通過互連爭用來觀察一些敏感代碼的執行。然后他們可以一點一點地提取一些秘密信息,比如加密密鑰,“Paccagnella解釋說。有效攻擊當研究人員使用這種模型發起側信道攻擊時,他們對攻擊的運作速度感到驚訝。他們能夠從兩個不同的受害者程序中恢復完整的加密密鑰。在研究了這些攻擊之后,他們使用他們的分析模型設計了兩種緩解機制。在第一種策略中,系統管理員將使用該模型來確定哪些內核最容易受到攻擊,然后將敏感軟件安排在較不易受攻擊的內核上運行。對于第二種緩解策略,管理員可以保留位于易受攻擊程序周圍的內核,并僅在這些內核上運行受信任的軟件。研究人員發現,這兩種緩解策略都能夠顯著降低側信道攻擊的準確性。Dai說,兩者都不需要用戶對物理硬件進行任何更改,因此緩解措施相對容易實現。最終,他們希望他們的工作能激發更多的研究人員研究片上互連的安全性,Paccagnella說。“我們希望這項工作能夠突出片上互連(計算機處理器中如此龐大的組件)仍然是一個被忽視的攻擊面。在未來,當我們構建具有更強隔離特性的系統時,我們不應該忽視互連,“他補充道。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。
電流變送器相關文章:電流變送器原理
電接點壓力表相關文章:電接點壓力表原理