?

基于硬件事務內存的安全增強機制

2016-02-15 03:18劉宇濤陳海波
中國教育網絡 2016年6期
關鍵詞:加解密明文事務

文/劉宇濤 陳海波

基于硬件事務內存的安全增強機制

文/劉宇濤陳海波

陳海波

上海交通大學教授,CCF杰出會員、ACM/IEEE高級會員,主要研究方向為系統軟件、系統結構與系統安全。多次擔任SOSP、ISCA、Oakland、EuroSys、FAST、PPoPP、Usenix ATC等國際著名學術會議PC members,APSys 2014、2014年全國體系結構學術年會等PC Co-Chairs,APSys 2011、SOSP 2017的大會共同主席,以及ACM APSys的Steering Committee Co-Chair,在SOSP、OSDI、EuroSys、Usenix ATC、FAST、PPoPP、ISCA、MICRO、HPCA、Usenix Security、CCS等發表多篇學術論文,獲得EuroSys 2015、APSys 2013與ICPP 2007的最佳論文獎、HPCA 2014的最佳論文提名獎與2011年全國優秀博士學位論文獎,入選國家萬人計劃“青年拔尖人才”以及2015年CCF青年科學家獎。

近些年,在學術界和工業界出現了一些利用非安全相關的硬件特性來增強系統安全的機制。在本文中,我們主要介紹其中的兩個工作,它們都是基于硬件事務內存特性,其中一個用于增強虛擬機自省技術,另外一個用于防止私鑰泄露。

事務內存(Transactional Memory),是在程序并發控制領域提出的一套完整的解決方案。傳統的基于“鎖”的程序并發控制面臨了包括低可擴展性、死鎖、活鎖在內的一系列問題,而事務內存,作為樂觀并發控制(Optimistic Concurrency Control,OCC)的一種解決方案,假設在大多情況下,并發的事務不會相互影響,只有在實際發生沖突的情況下才會發生事務的回滾。因此在事務間數據沖突較少的場景中,基于事務內存的程序并發控制能夠獲得更好的性能。在過去的近二十年中,事務內存都是通過軟件來實現的。2014年,Intel在其第四代Core處理器(代號Haswell)上裝配了硬件支持的事務同步擴展(Transactional Synchronization Extensions,TSX)機制,其中一套軟件接口Restricted Transactiona lMemory(RTM),成為市面上首個為程序員提供的硬件事務內存指令集。RTM在處理器緩存中為事務維護了內存地址的讀寫集合,從而在多核之間的緩存一致性協議中實現了一套不同事務訪問數據的沖突檢測機制。和軟件事務內存相比,RTM提供了更好的性能,但是也由于硬件的局限性,造成了其功能上的一些缺陷。比如某些系統事件(如中斷,系統調用等)會無條件中止(abort)執行中的事務;另外,RTM維護的讀寫集合也是有限的,在我們的測試中,RTM維護了4M的讀集合和32K的寫集合,當事務中的數據超過了讀寫結合的大小,事務同樣會被中止。

TxIntro是一個利用RTM來增強虛擬機自省技術的機制。虛擬機自省,即在虛擬機外部對虛擬機的狀態進行分析,從而達到更高的隔離性和安全性。但是當前的虛擬機自省技術存在三個問題:第一,沒有一套機制可以及時地觸發虛擬機自??;第二,在虛擬機自省過程中需要暫停虛擬機,造成性能下降;第三,即使暫停了虛擬機,仍然會發生數據讀取不一致的現象。針對這些問題,TxIntro將一些關鍵數據結構(如系統調用表)放入RTM的讀集合中,任意對其的惡意修改都會及時觸發虛擬機自省。另外,它將自省過程置于事務之中,這樣即使不暫停虛擬機,也能防止虛擬機自省過程中數據讀取的不一致,因為如果虛擬機在該過程中對相關數據進行了修改,RTM就會中止這個事務,使其重新執行。除此之外,為了解決RTM的局限性,TxIntro提出了兩個創新的優化技術,從而大幅度減小了虛擬機自省過程中事務內存的讀寫集合。TxIntro被用于虛擬機Rootkit的檢測,它使得虛擬機自省技術滿足了及時性、同步性和一致性,并最小化了對虛擬機的性能影響。

Mimosa是一個利用RTM防止秘鑰泄露的系統。在傳統的加解密過程中,秘鑰會被加載到內存中,任何系統中存在的內存泄露的漏洞,或者其它類似于冷啟動(coldboot)的攻擊都可能竊取秘鑰。Mimosa借鑒了含羞草一旦被觸碰就會合上葉子保護自己的這一特點,提出一套利用事務內存特性保護秘鑰的方法。具體的做法如下:最初秘鑰被加密存儲在內存中,當需要利用它加解密數據時,先創建一個事務,在該事務中解密該秘鑰,獲得秘鑰的明文,之后的加解密操作都在這個事務中完成,并在事務結束之前清除內存中秘鑰的明文。如果在事務執行過程中有其它進程(包括內核進程)讀取該秘鑰的明文,則會中止該事務,由于該事務尚未被提交,因此其它進程無法獲得秘鑰的明文信息,從而防止了秘鑰的泄露。為了克服RTM的限制,Mimosa系統做了大量的性能調節的工作,使得整套機制能夠順利完成??偟膩碚f,Mimosa的原理就是利用事務內存的特性,在秘鑰被無關進程訪問時清除它,從而防止其泄露。

計算機在發展過程中會引入越來越多的硬件特性,其中的很多并非安全相關,比如RTM,其初衷在于提高程序并發控制的性能。但是如果能有效地利用這些硬件的特性,就能夠在現有的硬件資源中進一步提高系統的安全等級。

猜你喜歡
加解密明文事務
河湖事務
奇怪的處罰
PDF中隱私數據的保護方法
電子取證中常見數據加解密理論與方法研究
奇怪的處罰
四部委明文反對垃圾焚燒低價競爭
網絡數據傳輸的加解密系統研究
基于優先級的多版本兩階段鎖并發控制協議
移動實時環境下的數據一致性研究
常用關系數據庫并發控制的比較研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合