(五)作業系統安全概念和設計思想

1.     訪問控制思想:1969年,B. W. Lampson首次運用了主體、客體和訪問控制矩陣的思想對訪問控制問題進行了抽象:在一個作業系統中,每一個實體元件都必須或者是主體,或者是客體,或者既是主體又是客體。

2.     主題與客體:訪問控制關注的物件要麼是主體,要麼是客體

客體(objects):客體是一個被動的實體。

在作業系統中,客體可以是按照一定格式儲存在一定記錄介質上的資料資訊(通常以檔案系統格式儲存資料),也可以是作業系統中的程序。圖書是保護物件,那麼他是客體

對一個客體的訪問隱含著對其包含資訊的訪問。檔案,IPC資源等就是客體,程序也可以是客體。

主體(subjects):是引起資訊在客體之間的流動的實體。

通常,這些實體是指人、程序或裝置等,一般是代表使用者執行操作的程序。如編輯一個檔案,編輯程序是存取檔案的主體,而檔案是客體。作業系統程序一般分為使用者程序和系統程序。程序想讀檔案,資訊需要進記憶體,由程序導致,因此程序是主體。

先分主題和客體,再討論程序什麼時候可以訪問客體。

3.     訪問控制矩陣:訪問之前先查表,有許可權可以訪問,沒許可權不可以訪問

4.     通用安全需求:

機密性(Confidentiality):是指不要洩露資訊(也包括資料的存在性)或資源。加密和訪問控制機制支援機密性。只關心資料有沒有洩露,關心有人像讀資料,讓不讓他讀

完整性(Integrity):是指對資料或資源的可信賴程度,它通常用於防止不當或未授權的修改。資料的完整性包括:資料的完整性和 來源的完整性。訪問控制支援完整性。關心資料是否可信,是不是恰當的人做恰當的修改

可追究性(Accountability):系統必須保證對資料的訪問和系統能力的使用的個人行為可追究性,並且提供審計它們的方法。涉及標識、鑑別和審計等。惡意使用者修改可以找到原因

可用性(Availability):是指使用所期望的資訊或資源的能力。安全相關的可用性方面是指有人蓄意造成資料的訪問拒絕或使得服務不可用。

5.     安全三要素

安全策略(Security Policy): Specifyingsecurity 規範安全性的定義

What is it supposed to do? 應該做什麼?

安全機制(Security Mechanism):Implementing security 實現安全性功能

How does it do it?             如何做?

安全保證(Security Assurance):Correctness of security 確保安全性正確

Does it really work?      效果如何?

6.     安全策略的型別

機密性策略 Confidentiality Policies(Militarysecurity policies)一般防止機密洩露,用於政府軍隊保密性策略。沒有對客體設定信任

完整性策略 Integrity Policies(Commercialsecurity policies)銀行帳戶資訊的完整性需求:帳戶資金。表明在多大程度上信任客體

7.     策略語言是描述安全策略的語言

高階策略語言:使用抽象的方法來表達對實體的策略約束。一個策略描述的是對系統中實體和行為的約束-constraints。高階策略語言是一種對策略進行無歧義的精確表達,它需要採用數學的或程式化的策略表示形式。

低階策略語言:根據系統中程式的輸入或呼叫選項來表達約束。

8.     引用監控器的概念:抽象機器,表達的是仲裁所有主題對課題的訪問,客體能不能被主體訪問要由訪問監控器決定。

9.     引用監控器:硬體和軟體的組合,負責執行系統的安全策略。安全相關的主體訪問安全相關的客體要被監控器監控與審計

10.  計算機之父是馮諾伊曼,告訴了我們計算機的體系結構,圖靈給出了計算機的理論模型。

11.  引用驗證機制的實現是由監控器實現:參考的實施監控的概念,列出了三項要求如下:a.要有自我保護能力b.必須一直相關c.引用機制足夠小,能夠被證明安全,安全檢查程式碼量足夠少。

12.  安全核心:是引用了監控器的驗證機制的所有軟體硬體組合,看成作業系統,引用監控器的具體實現,所有負責安全的程式碼的邏輯組合。

安全核心方法的根本:在一個大型作業系統中,由相對小的軟體部分負責安全性,且必須滿足對應RVM三個原則:完整性(Completeness): it must be impossible to bypass. 隔離性(Isolation) : it must be tamperproof.可驗證性(Verification):it must be shown to be properly implemented.

三個基本設計原則:採用最先進的軟體工程技術;功能簡化,核心介面要讓使用者可操作;儘可能減少核心中安全程式碼量。保護措施:審查程式碼,滲透測試,必要的證明;

13.  系統邊界與安全周界

系統邊界:在建立系統時候,有的東西屬於系統,有的東西不屬於系統

安全周界:系統分成兩部分,一部分是與安全相關,另一部分是與安全無關。

例如圖,外周界系統包含了印表機,周界裡面包含了系統程序等


14.  可信計算基:

系統裡面試試安全的所有硬體和軟體的組合,安全功能的組合。

訪問控制,類似引用分析,判斷你能做什麼。

標識鑑別:判斷你是誰

可信軟體:與安全相關,黑客攻擊會給系統帶來威脅,位於安全週期內,

不可信軟體:與安全無關,不敏感的訪問

15.安全體系結構:描述系統如何將系統組合在一起以滿足安全需求

•掌握如下安全概念:
–引用監控器
–安全核心及其設計原則
–可信計算基
–系統邊界和安全周界
–可信軟體與不可信軟體
•掌握如下重要設計思想:
–主體、客體和訪問控制矩陣
–安全策略與安全建模
–安全功能和安全保證
–安全體系結構