1:“無法破解芯片?”
今年的hotchips 33 ,密歇根大學的Austin教授帶來MORPHEUS II。
上一個版本的MORPUHES 最早出來的時候,被稱作:“無法破解”的芯片,號稱580名專家13000個小時嘗試均告失敗。
但是世界上沒有絕對的事!
Austin教授說:“媒體上說芯片無法破解。我自己一般不會這么說,因為我認為它是可以破解的,但是這非常難破解!”
通常,當程序“調用”一個子程序時,它會在返回堆棧中存儲該子程序結束時程序應返回的地址,?這個返回地址就是攻擊者操縱執行所謂的緩沖區溢出或代碼注入的位置。
返回地址就是很多攻擊的來源。
在MORPHEUS之前就有很多手段,來保護返回地址的安全性,如一些控制流完整性的手段(CFI),這個本來也不稀奇。
MORPHEUS通過一個加密單元實現底層機器碼實現每50毫秒更改一次。通過加密后的更改這些底層代碼,使得每個時間段后,機器碼都會發生變化,同樣不同處理器運行也不一致。
這些返回地址,攻擊者找不到,或者找到了,下一次就發生了改變。
這樣,在時間上,代碼隨著時間變化,在空間上,代碼隨著不同機器變化,因此要想分析這些機器碼,就很困難。
代碼數據的自然識別系統每隔50毫秒生成一次,這意味著它可以阻止最強大的自動黑客工具。因此,即使黑客發現了一個漏洞,他們也利用不了該漏洞。當他們獲得了破解漏洞必要的信息時,就會發現代碼已發生了改變。
雖然宣傳的不錯,但是這種手段來抗攻擊,川劇“變臉”,每隔一段時間就“churn” 擾動,這種手段帶來了開銷。
雖然文章中說,開銷很少,但是我還是持懷疑態度。
另外,就是這個證明要靠懸賞。580名專家13000個小時的這些操作。
搞這么多操作,用在什么地方?
控制流完整性CFI搞了這么多年,在處理器領域也是,研究的多,應用的少。
雖是如此,但是Morphus II的改進,還是令人眼前一亮。
2:MORPHEUS II的進化
MORPHEUS II 和最初的不同,這個進化設計了這個RISC-V的微結構,基于Rocket Core,把處理器外部的所有輸入指令和數據都加密了,這個想法起碼挺不錯的,這就帶來了兩個好處。
第一點:所有指令和數據都是加密的。
? ? ? 加密的RAM和Disks,甚至,Cache內部也是加密的。包括I-Cache 和D-Cache。
? ? ? 也就是說,數據只有在處理器內部才是解密的,處理器外部所有的部分,全是密文。
第二點:所有的指針都是加密的。
對于抵抗攻擊來說,這個是一個非常好的做法,可以有效防止對攻擊者無法偽造/分析代碼/指針;
我比較看好這個基于RISC-V的微架構另一個潛在應用,就是云端虛擬化的隔離。
2:云端虛擬化的隔離
云端虛擬化業務,每個租戶對自身數據安全性都是無價之寶,
傳統的云端隔離通道主要有四種隔離手段:
1:計算CPU隔離
? ? ? Hypervisor 通過相互隔離的計算通道來控制虛擬機與主機資源的交互。從而防止用戶獲得對系統以及對其他租戶的讀,寫請求,實現多租戶之間的計算隔離。
2:內存DRAM隔離
? ? ?Hypervisor同樣負責隔離內存,確保虛擬機之間無法訪問對方的內存。當實例被釋放后,所有內存被Hypervisor清零,可以防止釋放的物理內存頁被其他用戶訪問;
3:磁盤SSD隔離
? ? ? 存儲隔離,目前的存儲隔離通過hypervisor截獲處理,保證虛擬機只能訪問虛擬機分配的物理磁盤空間,實現虛擬磁盤空間的安全隔離。
4:網絡NETWORK隔離
? ?? Hypervisor復雜虛擬網絡進行隔離,確保流量不被隨意轉發,虛擬機的網絡資源只能被對應的虛擬機來獲取。
目前所有的隔離全部依靠是Hypervisor。
如果租戶相信Hypervisor,那就依賴Hypervisor。
但是還是很多高安全業務,例如保險,證券等等也不完全信賴公有云的隔離。
所有,更安全的方式是單租戶獨享物理資源,這就是裸金屬云。
使用裸金屬云也更安全,不用和別人共享,可以做到物理隔離。
那么虛擬化的隔離只能依賴Hypervisor?
目前通過加密實現云端虛擬化的隔離是一個理想的手段,例如磁盤加密虛擬磁盤的隔離,加密數據其他任何人不能讀取內部的數據,除用戶自身外,任何其他人無法讀取和訪問其中的數據。
這種隔離方式,是一種更為安全隔離的方式。
這些技術對于云端虛擬化安全可以提升一個層次。
以前hypervisor,是一個軟件程序,計算CPU和內存DRAM目前看還不能加密。
由軟的hypervisor到硬CPU架構,通過CPU架構加密實現隔離,這個應該是不錯的想法,雖然還有很長的路要走。
從Morphous II來看,其架構上,可以實現,指令,數據全部加密,也就是說,內存和磁盤上存儲全是加密數據,這些加密數據可以和CPU處理架構綁定,這樣可以通過密碼手段實現整個虛擬化運行環境的隔離。
可以通過這個處理器RISC-V的微架構來保證,計算CPU內部和DRAM內部都是密文,只有在取指(IF)后,以及讀取數據(LOAD),數據才變成明文。
這個與“同態加密”技術對比來看,同態加密技術,目前效率還是比較低,還需要一段時間才能實用化。
而Morphous II 雖然沒有同態加密那么高大上,但是也算是CPU架構上的創新,有可能解決很大一部分問題。
? ?
這個工作也列出了下一代的Morpheus的方向。
其中包括,高安全隱私計算,基于加密和物理隔離的防護,以及在亞馬遜的AWS和微軟的Azure來部署。
從這點來看,Morpheus II終于從不?!皵_動”到找到方向。