摘 要:本文在簡要介紹靜態數據的完整性保護及PDRR模型的基礎上,提出了基于PDRR模型的靜態數據完整性保護解決方案。
關鍵詞:靜態數據;數據完整性;PDRR模型
作者簡介:楊泓,女,四川人 ,1970年6月8日,工作單位:沈陽市汽車工程學校,沈陽理工大學信息科學與技術學院研究生。
[中圖分類號]:TP37 [文獻標識碼]:A
[文章編號]:1002-2139(2012)-02-0236-01
1、數據完整性保護
在計算機網絡系統中,數據通常有兩種狀態:存儲狀態和傳輸狀態。長期以來,數據傳輸時的完整性得到了人們更多的關心。筆者認為,不論是在存儲狀態,還是在傳輸狀態,數據既容易遭到人為的主動攻擊,又容易遭受非人為的異常變化。與傳輸狀態相比,處于存儲狀態的數據的完整性更應受到關注,這主要有三方面的原因:一是存儲狀態的數據既有用戶數據又有系統數據,而傳輸狀態的數據則基本上是用戶數據;二是系統的工作主要依賴存儲狀態的數據,而不是傳輸狀態的數據;三是存儲狀態的數據少有系統級的完整性保護,而傳輸狀態的數據則由網絡的傳輸機制提供了一定程度上的完整性保護。
存儲狀態可以看成是靜態,而傳輸狀態則可以認為是動態。下面主要討論處于存儲狀態——即靜態——的數據的完整性保護。
為保證數據的完整性,可以采取多種措施,包括管理的和技術的。一般的系統都采用系統“準入”(即口令機制等)和資源訪問控制兩種措施。這兩種措施能對數據的完整性起到很好的保護作用,尤其是能對人為的主動攻擊起到積極的防御作用。但是,也應該意識到,不論是從管理上講,還是從技術上講,要想絕對避免數據的完整性遭到破壞是不可能的。在這種情況下,我們應該做的也是能夠做的,就是要找到一種辦法能夠對數據的完整性進行檢測,一旦發現數據遭到破壞,能夠馬上恢復其本來面目。這也是我們最后的武器。
數據校驗技術就是這一要求的產物。根據數據校驗技術,可以對要保護的數據按照一定的規則產生一些校驗碼,并且把這些校驗碼記錄下來。以后,在任何時候,我們可以按照同樣的規則生成新的校驗碼,并與原來的校驗碼做比較。根據比較結果,即新校驗碼和原來的校驗碼是否一致,我們就能夠知道數據是否發生了變化并且采取相應的措施。這一工作也叫做完整性檢查。
數據校驗的方法很多,不管采用何種方法都必須至少保證兩點:校驗碼對數據的變化比較敏感,即校驗碼會隨數據塊的不同而不同;根據校驗碼很難還原出原始數據。
2、PDRR模型
PDRR模型是目前得到較多認可的一個安全保障模型。在這個模型中,網絡的安全保障系統被分成四個部分:防護(Protection)、檢測(Detection)、響應(Response)和恢復(Recovery)。
從工作機制上看,這四個部分是一個順次發生的過程:首先采取各種措施對需要保護的對象進行安全防護,然后利用相應的檢測手段對安全保護對象進行安全跟蹤和檢測以隨時了解其安全狀態。如果發現現安全保護對象的安全狀態發生改變,特別是由安全變為不安全,則馬上采取應急措施對其進行處理,直至恢復安全保護對象的安全狀態。
PDRR模型如圖1所示。按照這個模型,信息網絡的安全建設是這樣的一個有機的過程:在信息網絡安全政策的指導下,通過風險評估,明確需要防護的信息資源、網絡基礎設施和資產等,明確要防護的內容及其主次等,然后利用入侵檢測系統來發現外界的攻擊和入侵,對已經發生的入侵,進行應急響應和恢復。
圖1PDRR模型
PDRR模型是一個比較具有普遍意義的安全模型,因此利用它也可以解決數據的完整性保護問題。
3、靜態數據完整性保護方案
根據PDRR模型,對處于存儲狀態的數據的完整性保護可以采取如下方案:
(1)以文件為單位確定保護對象并做好記錄;
(2)對每一個保護對象進行某種哈希運算,并記錄其哈希值;
(3)對每一個保護對象進行備份;
(4)對每一個保護對象進行訪問檢測,記錄其被修改的情況;
(5)在以后的任何合適的時候對每一個保護對象再做相同的哈希運算,并用新的哈希值與原來的哈希值做比較:如果一致,則不必做任何處理;否則:如果是正常修改,則用新的哈希值取代原來的哈希值并啟動備份系統;否則,啟動恢復系統。
3.1、數據結構
為了實現上述方案,必須記錄和利用一些相關信息。為此,可以設計四張表:一張為保護對象記錄表,一張為對象校驗碼記錄表,第三張為對象備份記錄表,第四張為對象訪問記錄表。
保護對象認定子系統用來認定需要保護的對象。
對象校驗碼記錄表用來記錄各保護對象的哈希運算結果,即校驗碼。
對象備份記錄表用來記錄各保護對象的備份情況。
對象訪問記錄表用來記錄進程或用戶對各保護對象的訪問情況,主要是保護對象被進程或 用戶修改的情況,即進程或用戶對保護對象的寫操作。
3.2、系統模型
完整性保護系統可以由以下功能模塊構成:
(1)保護對象認定模塊;
(2)對象備份模塊;
(3)對象恢復模塊;
(4)對象校驗碼生成模塊;
(5)對象完整性檢測模塊;
(6)對象訪問檢測模塊。
對象認定、備份和校驗碼生成構成保護對象認定子系統;
完整性檢測、備份、校驗碼生成和恢復構成對象完整性檢測子系統;
訪問檢測單獨構成對象訪問檢測子系統。
因此,整個系統由三個子系統構成,這三個子系統的工作相對獨立:保護對象認定子系統可以在任何需要的時候由人工啟動;完整性檢測子系統既可以在任何需要的時候由人工啟動,也可以由系統在系統啟動的時候自動啟動;訪問檢測子系統則應由系統在系統啟動的時候自動啟動。需要指出的是,保護系統用到的數據——包括各種表格以及保護對象的備份——應該放在安全的地方。
4、總結
以上討論的是基于PDRR模型的靜態數據的完整性保護方案。對于靜態數據,除了完整性需要得到有效的保護外,有些時候其機密性也是一個不容忽視的問題。
為了同時保證靜態數據的完整性和機密性,可以先對保護對象進行加密處理,然后同樣按照上述方式對其完整性進行保護。為此,保護系統只需要增加相應的加密/解密子系統即可。
參考文獻:
[1]張千里,陳光英.《網絡安全新技術》.北京:人民郵電出版社,2003年
[2]李克洪,王大玲,董曉梅.《實用密碼學與計算機數據安全》.沈陽:東北大學出版社,1997年
[3]袁津生,吳硯農.《計算機網絡安全基礎》.北京:人民郵電出版社,2002年