跳轉到內容

安全架構與設計/安全模型

來自 Wikibooks,開放世界中的開放書籍

安全模型

[編輯 | 編輯原始碼]
  • 安全策略是一份檔案,它清晰簡潔地表達了保護機制的實現方式。它聲明瞭我們期望系統執行的安全保障。
  • 安全模型是安全策略的規範。
    • 它描述了受策略約束的實體。
    • 它說明了構成策略的規則。
  • 存在各種型別的安全模型。
    • 模型可以捕獲機密性(Bell-LaPadula)或完整性(Biba、Clark-Wilson)的策略。
    • 一些模型適用於靜態策略的環境(Bell-LaPadula),另一些模型則考慮訪問許可權的動態變化(中國牆)。
    • 安全模型可以是非正式的(Clark-Wilson)、半正式的或正式的(Bell-LaPadula、Harrison-Ruzzo-Ullman)。
  • 模型與策略
    • 安全模型透過指定強制執行安全策略所需的明確資料結構和技術,將策略的抽象目標對映到資訊系統術語。安全模型通常用數學和分析思想表示,然後對映到系統規範,最後由程式設計師透過程式設計程式碼實現。
    • 例如,如果安全策略規定主體需要被授權才能訪問物件,安全模型將提供數學關係和公式來解釋 x 只能透過概述的特定方法訪問 y。
    • 安全策略概述了目標,而不考慮如何實現它們。模型是一個框架,它賦予策略形式,並解決特定情況下的安全訪問問題。

格模型

[編輯 | 編輯原始碼]
  • 格是一種數學結構,建立在群的概念之上。
  • 格是一種數學結構,具有
    • 一組元素
    • 一個偏序關係
    • 任何兩個元素必須具有唯一的最小上界和最大下界的性質
  • 安全格模型結合了多級和多邊安全
  • 格元素是安全標籤,包含安全級別和一組類別

狀態機模型

[編輯 | 編輯原始碼]
  • 在狀態機模型中,捕獲機器的狀態以驗證系統的安全性。
  • 給定狀態包含所有當前許可權和所有當前主體訪問物件的情況。如果主體只能透過與安全策略一致的方式訪問物件,則系統是安全的。
  • 該模型用於描述系統對不同輸入的行為。它提供了表示集合(主體、物件)和序列的數學結構。當物件接受輸入時,這會修改狀態變數,從而過渡到不同的狀態。
  • 實施提示
    • 開發人員必須定義狀態變數是什麼以及在哪裡。
    • 開發人員必須為每個狀態變數定義一個安全狀態。
    • 定義和識別允許的狀態轉換函式。
    • 應測試狀態轉換函式,以驗證整個 m/c 狀態不會受到威脅,並且系統的完整性得到維護。

非干擾模型

[編輯 | 編輯原始碼]
  • 該模型確保在更高安全級別上發生的任何操作都不會影響或干擾在較低級別上發生的任何操作。
  • 它不關心資料的流動,而是關心主體對系統狀態的瞭解。因此,如果更高安全級別的實體執行操作,它不能更改較低級別實體的狀態。
  • 該模型還解決了推斷攻擊問題,這種攻擊發生在某人訪問某種資訊並可以推斷(猜測)他無權知曉的資訊時。


Bell-LaPadula 機密性模型

[編輯 | 編輯原始碼]
  • 它是第一個具有多級安全策略的數學模型,用於定義安全狀態機的概念和訪問模型,並概述了訪問規則。
  • 它是一個狀態機模型,強制執行訪問模型的機密性方面。
  • 該模型側重於確保具有不同安全級別(絕密、秘密、機密)的主體透過擁有必要的安全許可、知情權和正式的訪問批准(在訪問不同分類級別的物件(絕密、秘密、機密)之前)來進行適當的身份驗證。
  • Bell-Lapadula 模型的規則
    • 簡單安全規則(不可向上讀取規則):它規定,給定安全級別的主體不能讀取駐留在更高安全級別的資料。
    • 星形屬性規則(不可向下寫入規則):它規定,給定安全級別的主體不能將資訊寫入較低安全級別。
  • 強星形屬性規則:它規定具有讀寫能力的主體只能在同一安全級別上執行這些功能,不能更高也不能更低。
  • 平靜原則:主體和物件在例項化(建立)後不能改變其安全級別。
  • 所有 MAC 系統都基於 Bell-Lapadula 模型,因為它具有多級安全性。
  • 由美國政府設計,主要由政府機構採用

Biba 完整性模型

[編輯 | 編輯原始碼]
  • 它是繼 Bell-LaPadula 模型之後開發的。
  • 它解決了資料的完整性問題,而 Bell-LaPadula 則解決了機密性問題。
  • 它使用完整性級別的格,而 Bell-LaPadula 使用安全級別的格。
  • 它也是一個資訊流模型,與 Bell-LaPadula 類似,因為它們最關心資料從一個級別流向另一個級別。
  • Biba 模型的規則
    • 簡單完整性規則(不可向下讀取):它規定主體不能從較低完整性級別讀取資料。
    • 星形完整性規則(不可向上寫入):它規定主體不能將資料寫入更高完整性級別的物件。
    • 呼叫屬性:它規定主體不能呼叫更高完整性級別的主體。

Clark-Wilson 完整性模型

[編輯 | 編輯原始碼]
  • 它是繼 Biba 之後開發的,解決了資訊的完整性問題。
  • 該模型將資料分為兩個部分:需要高度保護的稱為受約束資料項 (CDI) 的主體,以及不需要高保護級別的稱為不受約束資料項 (UDI) 的主體。
  • 元件
    • 主體(使用者):是活動的代理。
    • 轉換過程(TP):例如讀取、寫入、修改等軟體過程,代表主體(使用者)執行所需的操作。
    • 受約束資料項 (CDI):只能由 TP 修改的資料。
    • 不受約束資料項 (UDI):主體可以透過基本讀取/寫入操作來操作的資料。
    • 完整性驗證過程 (IVP):定期執行的程式,用於檢查 CDI 與外部現實的一致性。這些完整性規則通常由供應商定義。
  • Clark-Wilson 模型的完整性目標
    • 防止未經授權的使用者進行修改(由 Biba 模型解決)。
    • 職責分離防止授權使用者進行不當修改。
    • 格式良好的事務:保持內部和外部一致性,即一系列操作,這些操作旨在將資料從一個一致狀態轉移到另一個一致狀態。

訪問控制矩陣

[編輯 | 編輯原始碼]
  • 該模型解決訪問控制問題。
  • 通常用於作業系統和應用程式。

資訊流模型

[編輯 | 編輯原始碼]
  • 在此模型中,資料被認為儲存在獨立的離散區隔中。
  • 資訊根據兩個因素進行分隔。
    • 分類和
    • 知情需求
  • 主體安全級別必須高於客體的分類級別,並且主體安全配置檔案必須包含客體標籤中列出的類別之一,以強制執行知情需求。
  • 例如
    • Bell-Lapadula 模型阻止資訊從較高源級別流向較低源級別。
    • Biba 模型阻止資訊從較低完整性級別流向較高完整性級別。

隱蔽通道

  • 隱蔽通道是實體以未授權方式接收資訊的方式。
  • 它是安全機制無法控制的資訊流。
  • 它是一種未經授權的通訊路徑,未受到系統保護,因為它是開發系統時未被發現的。
  • 隱蔽通道型別
    • 隱蔽時序:在此通道中,一個程序透過調節其對系統資源的使用來向另一個程序傳遞資訊。
    • 隱蔽儲存:在此通道中,一個程序將資料寫入儲存位置,而另一個程序直接或間接地讀取它。

Graham—Denning 模型

[編輯 | 編輯原始碼]
  • 此模型定義了一組基本許可權,這些許可權指的是特定主體可以在物件上執行的命令。
  • 它提出了八項基本保護許可權,或這些型別功能應如何安全進行的規則。
    • 如何安全地建立物件。
    • 如何安全地建立主體。
    • 如何安全地刪除物件。
    • 如何安全地刪除主體。
    • 如何提供讀取訪問許可權。
    • 如何提供授予訪問許可權。
    • 如何提供刪除訪問許可權。
    • 如何提供傳輸訪問許可權。

Harrison—Ruzzo—Ullman 模型

[編輯 | 編輯原始碼]
  • HRU 安全模型(Harrison、Ruzzo、Ullman 模型)是一種作業系統級別的計算機安全模型,它處理系統中訪問許可權的完整性。該系統基於有限數量的可用程式來編輯主體 s 對物件 o 的訪問許可權的想法。
  • 該模型還討論了使用演算法證明系統安全性的可能性和侷限性。

Brewer—Nash(中國牆)

[編輯 | 編輯原始碼]
  • 此模型提供訪問控制,這些訪問控制可以根據使用者的先前操作動態變化。
  • 此模型的主要目標是透過使用者訪問嘗試來防止利益衝突。
  • 它基於資訊流模型,其中資訊不能以導致利益衝突的方式在主體和物件之間流動。
  • 該模型指出,主體可以寫入物件,當且僅當主體不能讀取來自不同資料集的另一個物件。
華夏公益教科書