孫小雨,楊濤,胡曉勤
(四川大學計算機學院,成都 610065)
一種基于文件過濾驅動和TrueCrypt的文件系統保護方案
孫小雨,楊濤,胡曉勤
(四川大學計算機學院,成都610065)
隨著計算機的廣泛應用,大量的涉密數據都被存儲在存儲介質上面,所以我們對數據的安全性有了更高的要求,比起傳統的應用層的Hook技術來保護數據的安全,基于Windows內核層的文件過濾驅動技術具有更加底層并且更加穩定和高效。
本文將介紹一種基于Windows文件過濾驅動技術和TrueCrypt加密虛擬磁盤的方法來保護計算機的信息安全,比起傳統的透明加密技術來保護機密文件的方法,使用本文這種方法具有更加穩定,并且具有一定的防病毒的效果,因此,該方法是一個保護文件系統安全的一個創新方法,并且在實踐中得到了滿意的結果。
當前市場上比較流行的保障文件安全的方法主要以文件透明加解密技術為主要代表。透明加密技術是近年來針對企業數據保密需求應運而生的一種數據加密技術。所謂透明,是指對使用者來說是透明的,感覺不到加密存在,當使用者在打開或編輯指定文件時,系統將自動對加密的數據進行解密,讓使用者看到的是明文。保存數據的時候,系統自動對數據進行加密,保存的是密文。而沒有權限的人,無法讀取保密數據,從而達到數據保密的效果。但是文件透明加密技術有很多嚴重的缺點:(1)容易損壞文件。由于在加密的過程中如果發生了斷電或者系統故障那么文件就被永久性的損壞了,如果這份文件十分重要,這會給用戶以毀滅性的打擊。(2)文件透明加密技術由于對操作系統里面所有的規定文件都進行了加密,如果有權限的管理員想要對文件進行移植操作會變得十分困難,因為文件透明加密一般都是根據本機的硬件信息作為私鑰進行加密,所以對于本機進行文檔的瀏覽沒有問題,但是移植到其他的機器上的文件就不能夠被正常瀏覽,但是不方便有特殊需要時的必要的文件轉移,文件透明加密技術在這方面不靈活。(3)文件透明加密技術只能夠對本地的文件防止泄露,但是不具備抵御病毒和木馬的功能。
針對上面市場上主流的文件透明加密的種種缺點,本文采用的基于文件過濾驅動技術和TrueCrypt的加密虛擬磁盤的方式來進行保護用戶的機密文件,有效地解決了上述的問題,基于TrueCrypt成熟的磁盤加密技術,不會造成文件的損壞,基于Windows文件過濾驅動的重定向技術能夠有效地防止木馬病毒對計算機系統的破壞性,并且能夠增強對文件轉移的靈活性。
以Windows文件過濾驅動技術和TrueCrypt這個開源的磁盤加密軟件為主要技術組成一種全新的Windows系統下的文件保護系統以取代傳統的文件加密保護模式。
1.1文件過濾驅動技術
在Windows操作系統當中,文件系統驅動程序(FSD,File System Driver)是用來管理磁盤上的文件的,它負責存儲本地的數據,接收本地磁盤文件的打開、讀取、寫入、關閉等請求,通常這些請求來自用戶進程,通過I/O管理器發送到文件系統。
文件過濾型驅動程序 (FSFD,File System Filter Driver)是疊加在文件系統驅動程序上的過濾型驅動程序,FSFD是針對FSD而言的。它運行于操作系統的內核模式,在系統內核驅動中假如新的層,在不影響上層和下層接口的情況下,能夠截獲到所有的文件系統請求,從而不需要修改上層的軟件或下層的驅動程序,就可以加入新的功能。文件系統過濾驅動的目標是不活系統對文件的種種操作的行為,例如文件的創建、讀寫、改名,目錄的創建、打開、枚舉、改名、刪除等操作。并且可以選擇完成或者修改這些請求。正是由于這種能力,致使其應用在文件保護、文件透明加密、移動存儲控制、殺毒軟件、行為監控等諸多的安全方面。
文件過濾驅動在Windows系統中的位置如圖1所示,從圖中可以看出文件過濾驅動負責接收上層的IRP (I/O Request Packet)請求,處理后傳遞給下層對象。

圖1 文件過濾驅動位置
1.2TrueCrypt虛擬磁盤
TrueCrype磁盤加密是一款免費并且開源的軟件,它利用了目前普遍采用的虛擬磁盤技術和磁盤過濾技術來完成對數據的快速、自動加解密,所有存儲在TrueCrypt虛擬磁盤上的文件都被進行了透明的加密。在虛擬磁盤正確加載以后可以像訪問普通的磁盤分區一樣訪問它們,包括磁盤的格式化、創建文件夾、文件復制、文件粘貼、文件重命名等。進入TrueCrypt虛擬磁盤需要使用磁盤加密時候的密碼,在輸入了正確的密碼以后,就能夠解密加密的磁盤,就能夠正常的使用TrueCtypt的虛擬磁盤。
TrueCrypt擁有三種不同方式的加密磁盤:①對整個磁盤進行加密。該方法是對整個磁盤,包括磁盤上的操作系統進行了加密,因此,每次進入操作系統之前都會進行密碼的驗證,如果密碼驗證成功,那么就能夠進入系統,整個物理磁盤被TrueCrypt的磁盤過濾驅動透明解密,進而能夠進入操作系統。②對磁盤分區進行加密。該方法比較對整個磁盤進行加密更加靈活,該方法對單個邏輯分區或者幾個邏輯分區進行加密,這樣就可以不對系統所在的分區進行磁盤加密,開機就可以不進行開機密碼驗證。③使用文件虛擬加密磁盤,這種方法最為靈活并且最為方便。該方法用文件虛擬出來一個磁盤,并且對磁盤進行讀寫都是使用透明加密的方式,這樣對虛擬磁盤的各種操作,實際上是對這個虛擬磁盤文件進行操作。在不使用這個虛擬磁盤的時候,它以一個文件的形式存在,并且是加密的,不會被竊取信息。
2.1文件過濾驅動技術
文件過濾驅動部分的核心技術就是寫能夠對文件進行重定向的過濾驅動,需要把編寫帶有文件重定向功能的過濾驅動掛載到沒有被TrueCrypt加密的磁盤上,當開啟了文件重定向保護以后,就能夠對文件的讀寫進行重定向。具體實現如下:
(1)對普通的磁盤(除TrueCrypt加密盤)進行掛載文件重定向過濾驅動,并在TrueCrypt加密的磁盤設置一個tmp的隱藏文件夾,其他磁盤進行寫文件時候,將其進行復制到該目錄一個對應的目錄下,以后對其他磁盤進行寫操作實際上都是對該復制版的文件進行。當對文件進行讀取的時候,首先會判斷該文件在加密盤tmp文件夾下是否有對應的復制版本存在,如果有復制版本存在,就重新設置文件過濾驅動的IRP請求,讓文件系統對tmp文件夾中對應的文件進行訪問,如果tmp中沒有對應的文件,那么就不更改IRP請求,讓文件系統繼續訪問原來的文件,制造一個類似全局沙箱的文件系統。
(2)白名單的設置。對于一些大文件,如ISO、RMVB 和DLL等這些體積大,并且這些文件都是只讀性的文件,正常情況下不會對這些類型的文件進行寫入。因此,可以對這類文件類型設置成白名單,白名單的文件類型過濾驅動不會對其進行重定向處理,也不會進行復制操作,但是會禁止寫入操作。這樣就能夠減少系統重定向和文件復制造成的系統性能的損失。
(3)緩存文件自動清空。當關閉過濾驅動以后,加密磁盤的tmp文件夾中的緩存文件會清空,這樣下次開啟過濾驅動以后又會是一個新的環境,文件沒有被修改,達到了一個沙箱的保護目的。
2.2文件虛擬磁盤
使用TrueCrypt的文件虛擬磁盤功能,能夠使用文件進行虛擬出一個虛擬磁盤,并且對虛擬磁盤進行讀寫都是進行快速透明加密的,因此,對該虛擬磁盤進行讀寫的文件將會被加密,關閉虛擬磁盤以后,虛擬磁盤將消失,只剩下一個加密的磁盤文件,使用起來十分方便,此種類型的虛擬磁盤也比較符合本系統的需求。
2.3系統的整合
應用層Ring3對文件虛擬磁盤和過濾驅動進行整合。具體的操作流程如下:
(1)應用層客戶端輸入TrueCrypt加密磁盤的密碼,如果密碼驗證成功,開啟虛擬磁盤,并將虛擬磁盤對應的設備符號傳給過濾驅動。
(2)過濾驅動獲取虛擬磁盤的符號以后,在虛擬磁盤下面創建tmp文件夾,并去讀取文件類型白名單的文件類型,在Windows的內核中建立一個鏈表記錄白名單文件類型格式。
(3)開啟過濾驅動的文件重定向功能,開啟模擬沙箱功能,實現對非虛擬磁盤的重定向和防止寫入功能。系統的操作流程圖如圖2:

圖2 保護系統的操作流程
通過對該系統的性能進行了測試發現,在合理的進行了白名單設置,系統會損失15%左右的性能,但是能夠達到全局的虛擬沙箱的功能保護Windows系統免受病毒和木馬的破壞,并且提供的虛擬磁盤能夠滿足用戶對敏感文件的存儲功能。
使用這種方式實現的防泄密系統能夠具有更好的兼容性,并且實現了全局的保護,兼具了系統還原的功能和文件保護的功能。這種方案改變了傳統的透明加密系統對Windows系統防泄密和保護的壟斷,并且相比較透明加密這種純文件過濾驅動的方式,本方案采用了文件過濾驅動和磁盤過濾驅動兩種方式,取長補短,結合了兩種過濾驅動的優點,能夠更加靈活和更加高性能的保護了企業用戶的計算機安全。
[1]譚文,陳銘霖.Windows內核安全與驅動開發[M].北京:電子工業出版社,2015
[2](美)Jeffrey Richter.Windows核心編程.北京:機械工業出版社,2008
[3]張帆.Windows驅動開發詳解[M].北京:電子工業出版社,2008.
[4](韓)李承遠.逆向工程核心原理[M].北京:人民郵電出版社,2014.
楊濤,男,山東鄒城人,本科助理工程師,研究方向為電力系統信息通信新技術應用、信息安全等領域
胡曉勤,四川內江人,博士
In recent years,with the rapid development of computer network,the importance to computer information security is becoming more and more increasingly being emphasized.Especially the government and enterprise internal information is particularly important.But the traditional antivirus software and Trojan Avira software effect is not good,to Trojan and virus behavior analysis and the characteristic database often because innovation virus exists,because without the latest feature library and behavior cause effect is not good.So we use a new virtual disk file system filter driver of file redirection and TrueCrypt protected mode on the user's confidential documents based on protection.
A File System Protection Scheme Based on File Filter Driver and TrueCrypt
SUN Xiao-yu,YANG Tao,HU Xiao-qin
(College of Computer Science,Sichuan University,Chengdu 610065)
1007-1423(2016)03-0077-04
10.3969/j.issn.1007-1423.2016.03.018
孫小雨(1988-),男,山東棲霞人,碩士,研究方向為網絡信息安全
2015-12-15修改日期:2015-12-30
近幾年,隨著計算機網絡的高速發展,對于計算機信息安全的重要性越來越被強調,尤其是政府和企業的內部資料顯得尤為重要。但是傳統的的殺毒軟件和木馬查殺軟件的效果并不好,對木馬和病毒的行為分析和特征庫往往會因為創新性病毒的存在,因無最新的特征庫和行為導致效果并不好,故采用一種全新的基于文件過濾驅動的文件重定向和TrueCrypt的虛擬磁盤的保護方式來對用戶的機密文件進行保護。
信息安全;文件過濾驅動;重定向;TrueCrypt