一、模型定義與目標
- 提出背景:1977年由Ken Biba提出,是首個完整性安全模型,與BLP模型形成對偶(BLP關注機密性,Biba關注完整性)。
- 核心目標:防止低完整性信息污染高完整性信息,避免未授權的篡改或破壞。
二、關鍵概念
-
完整性級別(Integrity Level)
- 為主體(用戶/進程)和客體(文件/數據)分配的等級,用于衡量信息的可信度和重要性。
- 例如:完整(High Integrity)> 中級完整(Medium Integrity)> 低級完整(Low Integrity)> 無保護(No Integrity)。
- 特性:完整性級別越高,信息可信度越高,越需保護其不被篡改。
-
主體與客體
- 主體:主動實體(如用戶、進程),其完整性級別代表處理信息的可信度。
- 客體:被動實體(如文件、數據庫),其完整性級別代表信息的質量或重要性。
三、安全策略(核心規則)
- 嚴格完整性策略(BLP對偶規則)
- 禁止下讀(No Read Down):主體只能讀取完整性級別≥自身的客體(防止低可信主體讀取高可信信息,避免污染)。
- 禁止上寫(No Write Up):主體只能向完整性級別≤自身的客體寫入(防止低可信主體修改高可信信息)。
- 例:中級完整級主體可讀取同級或高級完整級客體,但只能向同級或低級完整級客體寫入。
- 其他策略(擴展模型)
- 主體低水標策略:主體讀取低完整性客體后,自身完整性級別降為客體級別(防止主體因依賴低可信信息而被降級)。
- 客體低水標策略:主體向高完整性客體寫入時,客體完整性級別降為主體級別(限制低可信主體對高可信客體的污染)。
- 低水標完整性審計策略:任意讀寫,寫完主客體均降級。
- 環策略:允許主體讀取任意級別客體,但寫入仍需滿足“向上寫”(適用于信任主體能正確處理低級別信息的場景)。
Biba強制訪問策略 | 具體要求 |
---|---|
嚴格完整性策略 | 禁止下讀,禁止上寫 |
主體低水標策略 | 禁止上寫,任意讀,讀完主體降級 |
客體低水標策略 | 禁止下讀,任意寫,寫完客體降級 |
低水標完整性審計策略 | 任意讀寫,讀寫后主客體降級 |
環策略 | 禁止上寫,任意讀 |
四、與BLP模型的對比
維度 | BLP模型(機密性) | Biba模型(完整性) |
---|---|---|
核心目標 | 防止高密級信息流向低密級主體(保密) | 防止低完整性信息污染高完整性客體(防篡改) |
訪問規則 | 不上讀(高密級信息不可讀)、不下寫(低密級不可寫高) | 不下讀(防止污染高質量主體)、不上寫(防止污染高質量客體) |
信息流向控制 | 單向禁止高→低(機密性保護) | 單向禁止低→高(完整性保護) |
與其他模型結合實現更全面的安全防護。