當前位置:
首頁 > 最新 > AWS上的「崩潰」和「幽靈」:安全性與性能

AWS上的「崩潰」和「幽靈」:安全性與性能

【IT168 資訊】 雖然「晶元門」事件已經過去了,但「崩潰」(Meltdown)和「幽靈」(Spectre)兩大安全漏洞的故事並沒有結束。即使亞馬遜網路服務(AWS)的響應顯示他們已經修補並保護了他們的基礎架構,但這不意味著您就可以什麼都不做。AWS的共享責任模式意味著您負責修補EC2實例上運行的操作系統。這裡有一些一般的規則要遵循:

1. 使用HVM虛擬化模式的最新AMI運行EC2實例;

2. 修補操作系統,以確保應用了Meltdown修復程序;

3. 更新到最新的EC2實例系列;

4. 運行最新的Linux內核,以確保您擁有PCID支持

這些漏洞存在於自2013年以來製造的所有Intel CPU中,允許惡意程序竊取通常被保護的信息,比如密碼、信用卡號等,而這些數據是由CPU處理的。這是由於CPU本身的缺陷,與Windows、Linux、Mac OSX或任何其他操作系統無關。CPU是硬體不能被修補,因此我們必須依賴於在這些CPU之上運行的系統的修復。

通常有兩類直接在CPU上運行的系統:一類是操作系統,如Linux或Windows。另一類是管理程序,如VMware ESXi、Xen或Amazon基於KVM的私有管理程序。如果在CPU上運行虛擬機管理程序,則會託管其他操作系統(如Linux和Windows)。

將補丁應用到第一層可以防止Spectre和Meltdown攻擊,對性能產生不同程度的影響。在虛擬機管理程序之上運行的虛擬機仍然需要進行修補,以保護在其操作系統中運行的進程免受攻擊。這些補丁本身也會應用潛在的性能影響。

自2010年以來,英特爾CPU(代號「Westmere」)支持了一項名為PCID的特性。在過去的7年中,Linux內核有些乏味並不被支持。安全。但從內核4.14開始,它得到了支持。

事實證明,PCID對於減輕KPTI補丁的一些性能影響是重要的,並且防止了一個應用程序在所有其他應用程序中殺死系統性能。您可以看到,內核維護了一個Translation Lookaside Buffer(TLB),這就像內核和用戶態內存頁面之間的映射索引。當系統調用通過用戶區/內核邊界時,在沒有PCID支持的處理器上運行的內核必須丟棄TLB並重新啟動,增加了執行頻繁操作所需的時間。

但是,所有現代的CPU和Linux內核都支持這個功能,這也並不意味著可以在AWS上使用它。

HVM、PV和實例

AWS的原始EC2實例全部運行在一個管理程序之上,為訪客操作系統提供半虛擬化介面,從而隱藏了底層CPU的一些功能,包括PCID功能。

更新的實例系列(以及一些較舊的系列)運行在一個更新的虛擬機管理程序上,該虛擬機管理程序提供了更多的底層功能。這個虛擬化模式被稱為「HVM」,代表「硬體虛擬機」。

儘管幾乎所有EC2實例系列(如t2、m3、c4)都可以在HVM模式下使用,但他們並不都暴露PCID功能,為了避免最差的性能損失,您需要PCID功能。

我們做了一些研究,並將EC2實例系列映射到虛擬化模式和CPU功能,以確定哪些組合受到的影響最小。如下表所示:

您可以看出,避免那些沒有PV實例類型提供PCID,以避免對性能造成最嚴重的影響。即使您選擇HVM作為您的虛擬化類型,某些實例系列仍不會公開PCID功能,因此您也應該避免使用這些功能。

hs1(或「高存儲」)實例類型可能最受影響;它是最常用的工作負載,需要大量的磁碟I/O系統調用,從而從崩潰補丁中帶來最高的性能開銷,並且它不支持PCID,這意味著您可能會受到兩次影響。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT168 的精彩文章:

小米Note2/5S曝光

TAG:IT168 |