安全系統開發方法

kangyucheng發表於2018-01-02

第一節 安全開發方法的原則

a)機制經濟性(Economy of mechanism) 設計儘可能簡單,儘可能小

b)基於“許可” 的安全(Fail-safedefaults) 什麼條件下允許做什麼

c)完全的訪問仲裁 (Complete mediation)每個客體訪問都要檢查是否有許可權

d)開放型系統設計(Open design) 演算法不保密, 金鑰保密

e)許可權分析(Separation of privilege) 東西由兩人兩人以上來控制。兩人控制保險櫃

f)最小特權(Least privilege)

g)公共機制最小化(Least common mechanism)公共機制越多,被利用機會越多

h)使用者友好(Psychological acceptability)

第二節 安全核心的虛擬機器法、模擬法、新建法

改進/增強法:在現有作業系統的基礎上,對其核心和應用程式進行面向安全策略的分析,然後加入安全機制。經改造、開發後的安全系統基本上保持了原ISOS的使用者介面。

1.  虛擬機器法

在現有作業系統與硬體之間增加一個新的分層,作為安全核心,作業系統幾乎不變地作為虛擬機器。

優點:

- 安全核心的介面幾乎與原有硬體介面等價,作業系統本身並未意識到已被安全核心控制。

- 可以不變地支援現有的應用程式,且能很好地相容ISOS的將來版本。

缺點:

- 硬體特性對虛擬機器的實現非常關鍵,  要求原系統的硬體和結構支援虛擬機器

2.  模擬法

對現有作業系統的核心做面向安全策略的修改,然後在安全核心與原ISOS使用者介面介面中間再編寫一層模擬程式。

優點:

     -建立安全核心不必受現有應用程式的限制

     -自由定義ISOS模擬程式與安全核心間介面

缺點:

     -要求同時設計模擬程式和安全核心

     -要受頂層ISOS介面的限制

     -有些ISOS的介面功能不安全,無法模擬

     -有些介面功能安全,但模擬實現特別困難

3.  新建法

包括面向安全策略的安全核心在內,重新設計整個作業系統

優點:

可以任意建立所需的核心介面

可以定義作業系統的介面與核心實施的安全策略保持相容

可以保證核心設計的最小化和作業系統的執行效能

缺點:必須從頭開始,難度大,工作量也大.

第三節 基於標準某安全等級要求的安全作業系統的一般開發過程、設計和實現方法

設計與實現:

對一個現有作業系統的非安全版本進行安全性增強之前,首先得進行安全需求分析。也就是根據已有的作業系統版本及其所面臨的風險、明確哪些安全功能是原系統已具有的,哪些安全功能是要開發的。只有明確了安全需求,才能給出相應的安全策略。

建立安全模型有利於正確地評價模型與實際系統間的對應關係,幫助我們儘可能精確地描述系統安全相關功能。

此外,需要將模型與系統進行對應性分析,並考慮如何將模型用於系統開發之中,並說明所建安全模型與安全策略是一致的。

建立了安全模型,結合系統的特點在系統中設計和實現相應的安全機制。同時在設計了部分安全功能之後,便檢查它提供的安全性尺度。

設計目標: 使得開發後的安全作業系統具有最佳安全/開發代價比。



相關文章