一種可配置的文件客體安全重用方法
【技術領域】
[0001]本發(fā)明涉及一種可配置的文件客體安全重用方法,屬于操作系統(tǒng)安全技術領域。
【背景技術】
[0002]現(xiàn)代操作系統(tǒng)采用的都是多用戶多任務的模式,操作系統(tǒng)統(tǒng)一管理所有的內存、磁盤等客體資源。當操作系統(tǒng)將上一個主體使用的客體資源釋放后,分配給下一個主體使用時,如果不做任何處理,則上一個主體對客體資源操作殘留的信息就可能被下一個主體看到,從而引起信息泄露。
[0003]客體安全重用是安全操作系統(tǒng)的重要內容,《GB/T20271-2006信息安全技術信息系統(tǒng)通用安全技術要求》中對客體安全重用的定義為:在對資源進行動態(tài)管理的系統(tǒng)中,客體資源(寄存器、內存、磁盤等記錄介質)中的剩余信息不應引起信息的泄漏。
[0004]在客體資源中,寄存器、內存屬于易失性介質,掉電后信息全部丟失,且現(xiàn)代操作系統(tǒng)對寄存器、內存的使用都做了限制與保護,發(fā)生信息泄露的概率較低。磁盤作為非易失性記錄介質,掉電后信息仍然存在,信息泄露風險大。當前主流操作系統(tǒng)在進行磁盤文件的刪除時,出于性能的考慮,僅僅是刪除文件的節(jié)點信息,回收文件占用的磁盤空間,而文件的內容并沒有真正刪除,很容易通過各種數(shù)據(jù)恢復軟件進行恢復。因此,要防止文件內容被恢復,必須對文件內容進行安全擦除。如果在文件刪除前對文件內容進行簡單的覆寫,則主流的數(shù)據(jù)恢復軟件無法進行數(shù)據(jù)恢復,但是,由于磁盤的剩磁效應,通過數(shù)據(jù)深度恢復技術和特殊的數(shù)據(jù)恢復設備,依然存在恢復被刪除文件內容的可能。當然,隨著覆寫次數(shù)的增多,恢復難度越來越大,恢復成本越來越高。目前對文件的覆寫方式主要有:全O覆寫,全I覆寫和隨機覆寫三種,對于高安全等級的應用場合,一般需要組合這三種覆寫方式進行多次覆與O
[0005]文件客體安全重用主要就是實現(xiàn)文件的安全擦除。目前,主流的實現(xiàn)文件安全擦除的方式主要有以下兩種:
I)手動擦除文件:一般提供安全刪除文件的工具程序。如windows系統(tǒng)中常見的文件粉碎機,Linux系統(tǒng)中常見的shrecUsrm等工具程序。這種方式需要用戶深度參與,安全性嚴重依賴于用戶行為,用戶工作量大,漏刪可能性高,不能滿足高安全等級的應用場景。
[0006]2)自動擦除文件:一般通過監(jiān)視文件刪除的過程,在刪除時自動進行文件內容的擦除。如專利CN201210149725.8提出的“一種安全操作系統(tǒng)中防止文件客體重用的方法”,但該方法實現(xiàn)復雜,沒有考慮文件截斷場景,且固定采用全O覆寫這樣一種文件覆寫方式,不能滿足不同安全等級的應用場景。
[0007]文件客體安全重用是為了防止文件客體在重用過程中的剩余信息泄露。不同行業(yè),不同應用場合對剩余信息保護有不同的要求。傳統(tǒng)的通過文件擦除工具進行文件安全擦除的方法對人的依賴性高,容易發(fā)生因人員疏忽等導致的剩余信息泄露,不能滿足高安全等級的應用場景;而另外一些通過系統(tǒng)自動擦除文件內容的方法,其文件擦除形式單一,不能夠依據(jù)不同安全等級進行靈活配置,且往往只考慮文件刪除的場景,沒有考慮文件截斷等其他可能造成文件剩余信息泄露的場景。
【發(fā)明內容】
[0008]為了解決上述技術問題,本發(fā)明提供了一種可配置的文件客體安全重用方法。
[0009]為了達到上述目的,本發(fā)明所采用的技術方案是:
一種可配置的文件客體安全重用方法,包括以下步驟:
步驟一,構建文件安全擦除規(guī)則庫;
所述文件安全擦除規(guī)則庫中包括若干規(guī)則,定義了對什么樣的文件進行安全擦除,以及如何進行安全擦除;
步驟二,在Linux內核層監(jiān)控文件操作,調用判定邏輯判斷是否需要進行文件安全擦除,并收集相應的文件信息;
步驟三,當需要進行文件安全擦除時,根據(jù)文件安全擦除規(guī)則庫,結合文件信息,執(zhí)行文件安全擦除動作。
[0010]所述文件安全擦除規(guī)則庫根據(jù)用戶配置文件進行構建,每個規(guī)則都有默認值,當用戶沒有顯式的定義時,系統(tǒng)自動采用默認值。
[0011]用戶通過交互接口可以實時查看文件安全擦除規(guī)則庫中的各種規(guī)則信息,也可以對文件安全擦除規(guī)則庫中的各種規(guī)則信息進行動態(tài)修改,修改完即時生效;用戶通過交互接口可以強制文件安全擦除規(guī)則庫重新從用戶配置文件中讀取規(guī)則,也可以將文件安全擦除規(guī)則庫的當前規(guī)則信息同步寫入到用戶配置文件。
[0012]所述文件安全擦除規(guī)則庫中包括待擦除文件大小規(guī)則、待擦除文件敏感等級規(guī)則以及文件覆寫方式規(guī)則。
[0013]文件覆寫方式支持全O覆寫、全I覆寫、隨機覆寫這三種方式的任意組合。
[0014]文件操作包括文件刪除和文件截斷;文件刪除包括文件即時刪除和文件延時刪除;文件截斷包括文件直接截斷和文件打開截斷。
[0015]收集的文件信息包括文件操作句柄、待刪除或待截斷文件的范圍。
[0016]通過在三類函數(shù)中調用判定邏輯判斷是否需要進行文件安全擦除;這三類函數(shù)分別為,do_un I inkat 函數(shù)、—f put 函數(shù)、vf s_truncat e 函數(shù) / do_sys_f truncate 函數(shù)。
[0017 ]文件安全擦除動作在Linux內核層執(zhí)行。
[0018]所述方法基于Linux VFS實現(xiàn)。
[0019]本發(fā)明所達到的有益效果:本發(fā)明不僅可以由用戶根據(jù)應用場景進行文件安全擦除規(guī)則的自由配置,同時既考慮了文件刪除情況,又考慮了文件截斷情況,而且實現(xiàn)方法與具體的文件系統(tǒng)類型無關;另外,該方法在Linux系統(tǒng)內核層實現(xiàn),對用戶透明,系統(tǒng)原有的與刪除、截斷操作相關的程序以及用戶程序對刪除、截斷等文件類的系統(tǒng)調用均無需進行任何更改;與現(xiàn)有方法相比,本方法通用性強,兼容性好,靈活性高,適合不同安全防護等級的場合。
【附圖說明】
[0020]圖1為本發(fā)明的結構圖。
[0021 ]圖2為Linux文件客體安全重用的判定流程圖。
[0022]圖3為安全擦除文件流程圖。
【具體實施方式】
[0023]下面結合附圖對本發(fā)明作進一步描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,而不能以此來限制本發(fā)明的保護范圍。
[0024]如圖1所示,一種可配置的文件客體安全重用方法,該方法基于LinuxVFS實現(xiàn),包括以下步驟:
步驟一,構建文件安全擦除規(guī)則庫。
[0025]文件安全擦除規(guī)則庫中包括若干規(guī)則,定義了對什么樣的文件進行安全擦除,以及如何進行安全擦除。系統(tǒng)啟動時,文件安全擦除規(guī)則庫根據(jù)用戶配置文件進行構建,每個規(guī)則都有默認值,當用戶沒有顯式的定義時,系統(tǒng)自動采用默認值。同時本發(fā)明提供了用戶交互接口,用戶通過交互接口可以實時查看文件安全擦除規(guī)則庫中的各種規(guī)則信息,也可以對文件安全擦除規(guī)則庫中的各種規(guī)則信息進行動態(tài)修改,修改完即時生效;用戶通過交互接口可以強制文件安全擦除規(guī)則庫重新從用戶配置文件中讀取規(guī)則,也可以將文件安全擦除規(guī)則庫的當前規(guī)則信息同步寫入到用戶配置文件。
[0026]文件安全擦除規(guī)則庫中包括待擦除文件大小規(guī)則、待擦除文件敏感等級規(guī)則以及文件覆寫方式規(guī)則,具體如下:
I)待擦除文件的最小長度,默認為I。
[0027]2)待擦除文件的最大長度,默認為-1,即不限制。
[0028]3)待擦除文件的最小敏感等級,范圍為sO?sl5,默認為sO,即所有。
[0029]4)文件覆寫方