- 信息安全精要:從概念到安全性評估
- (美)杰森·安德魯斯
- 2983字
- 2022-06-27 10:54:03
3.3 訪問控制模型
訪問控制模型是確定應該允許誰訪問哪些資源的一種方式。目前有許多種不同的訪問控制模型。這里介紹的是最常見的訪問控制模型,包括自主訪問控制、強制訪問控制、基于規則的訪問控制、基于角色的訪問控制、基于屬性的訪問控制和多級訪問控制。
3.3.1 自主訪問控制
在自主訪問控制(Discretionary Access Control,DAC)模型中,資源的所有者確定誰可以訪問資源,及其擁有的明確的訪問等級。你可以看到,大多數操作系統能夠執行自主訪問控制。如果你決定在微軟操作系統中創建網絡共享,那么你能夠控制其他人對系統的訪問。
3.3.2 強制訪問控制
在強制訪問控制(Mandatory Access Control,MAC)模型中,資源的所有者不能決定誰可以訪問資源。相反,不同的群組或個人有權設置對資源的訪問權限。你經常可以發現在政府組織中執行強制訪問控制。在這些組織中,訪問資源很大程度上取決于該資源所使用的敏感標簽(如機密或絕密),個人被允許訪問的敏感信息等級(可能僅是機密),以及個人實際上是否需要訪問資源(稱為最小權限原則)。
最小權限原則
最小權限原則規定,你應該只給一方執行功能所需的最低訪問等級。例如,組織銷售部門的人員完成工作,應該無須訪問組織人力資源系統中的數據。違反最小權限原則是當今許多安全問題的根源。
錯誤執行最小權限原則的最常見方式之一,是授予操作系統用戶賬戶的權限。尤其是在微軟操作系統中,你經常會發現臨時用戶正在文字處理器中創建文檔和發送電子郵件,該用戶被配置了管理訪問權限,使其能夠執行操作系統允許的任何任務。
正因為如此,每當超過權限的用戶打開包含惡意軟件或代碼的電子郵件附件,或預定將攻擊代碼推送到客戶端計算機的網站時,這些攻擊就會肆無忌憚地控制系統。攻擊者可以輕而易舉地關閉反惡意軟件工具,安裝附加攻擊工具,然后進一步完全破壞系統。
3.3.3 基于規則的訪問控制
基于規則的訪問控制(rule-based access control)允許根據系統管理員定義的一組規則進行訪問。如果規則匹配,那么將相應地允許或拒絕對資源的訪問。
路由器使用的ACL就是一個很好的示例。你可能會看到一個規則,允許端口C上從起點A到終點B的流量。兩個設備之間的任何其他流量都將被拒絕。
3.3.4 基于角色的訪問控制
基于角色的訪問控制(Role-Based Access Control,RBAC)模型允許基于個人角色所授予的訪問權限進行訪問。如果一名員工的唯一角色是將數據輸入應用程序中,那么基于角色的訪問控制將強制你只允許該員工訪問這個應用程序。
如果你的員工有一個更復雜的角色,可能是在線零售商的客服,可能需要其有權訪問客戶的支付狀態和信息、發貨狀態、歷史訂單和退貨信息。在這種情況下,基于角色的訪問控制將授予其相當多的訪問權限。你可以看到,在許多面向銷售或客服的大型應用程序中執行基于角色的訪問控制。
3.3.5 基于屬性的訪問控制
基于屬性的訪問控制(Attribute-Based Access Control,ABAC),是基于人員、資源或環境的特定屬性。你經常會發現在基礎設施系統上,如網絡或電信環境中的基礎設施系統上會執行這種模型。
主題屬性屬于個人。我們可以選擇屬性的任意數字,比如游樂場游樂設施中經典的“你必須這么高才能騎”的高度。主題屬性的另一個常見示例是驗證碼(CAPTCHA),又稱為“完全自動區分計算機和人類的圖靈測試(Completely Automated Public Turing Tests to Tell Humans and Computers Apart)”(見圖3-5)[2]。驗證碼控制訪問基于另一端的一方是否能通過機器(理論上)難以完成的測試。

圖3-5 旨在證實用戶是人的驗證碼
資源屬性屬于資源,如操作系統或應用程序。你將經常看到由資源屬性控制的訪問,這通常基于技術原因而不是安全原因。一些軟件只能在特定的操作系統上運行,而一些網站只能適用于某些瀏覽器。你可以通過要求某人使用特定的軟件或協議進行通信,將這種類型的訪問控制作為一種安全措施來運用。
環境屬性基于環境條件實現訪問控制。人們通常使用時間來控制對物理和邏輯資源的訪問。大樓門禁通常只允許訪客在營業時間進入。許多VPN連接都有時間限制,強制用戶每24小時重新連接一次,以防止用戶在刪除連接的授權后依然保持連接。
3.3.6 多級訪問控制
多級訪問控制(multilevel access control)模型結合了本節討論的幾種訪問控制模型。當簡易的訪問控制模型被認為不足以保護你控制訪問的信息時,就可以使用多級訪問控制。處理敏感數據的軍事和政府組織經常使用多級訪問控制模型對各種數據進行訪問控制,從核機密到受保護的健康信息。下面你將了解其中一些模型。
1. Bell-LaPadula模型
Bell-LaPadula模型結合了自主訪問控制和強制訪問控制,并且主要關注相關資源的機密性,換句話說,確保未經授權的人無法讀取。當你看到這兩個模型同時執行時,強制訪問控制優先于自主訪問控制,而且自主訪問控制在強制訪問控制權限允許的訪問范圍內運行。
例如,你的一項資源被列為機密,一個用戶擁有機密級許可;在強制訪問模式下,用戶將有權訪問該資源。但是,在自主訪問控制權限下,可能還有一層額外的強制訪問控制,因此如果資源所有者未授予用戶訪問權限,即使擁有自主訪問控制權,用戶也無法訪問。在Bell-LaPadula模型中,有兩個安全規則定義了信息流入和流出資源的方式。[3]
·簡單安全規則。授予個人的訪問等級必須至少與資源的等級一樣高,個人才能訪問。換句話說,個人不能讀取較高等級的資源,但可以讀取較低等級的資源。
·*屬性(或星屬性)。任何訪問資源的人都只能將其內容寫入(或復制)到同一等級或更高等級的另一個資源中。
你可以將這些屬性分別總結為“不向上讀”和“不向下寫”,如圖3-6所示。

圖3-6 Bell-LaPadula模型
簡而言之,這意味著當你處理機密信息時,你不能讀取高于你許可等級的任何內容,也不能將機密數據寫入任何更低等級的內容中。
2. Biba模型
Biba訪問控制模型主要關注保護數據的完整性,甚至以犧牲機密性為代價。這意味著阻止人們修改數據比不讓人們查看數據更為重要。該模型有兩個安全規則,與Bell-LaPadula模型中討論的規則完全相反。[4]
·簡單完整性規則。授予個人的訪問等級必須高于資源的等級。換句話說,對一個等級的訪問不會授予對較低等級的訪問權限。
·*完整性規則(或星完整性規則)。任何訪問資源的個體都只能將其內容寫入同一等級或更低等級的資源。
我們可以將這些規則分別概括為“不向下讀”和“不向上寫”,如圖3-7所示。這意味著將嚴格區分高完整性資產(意味著不能被更改)和低完整性資產。
當涉及信息保護時,這似乎完全違反直覺。但這些規則通過確保你的資源只能由具有高等級訪問權限的用戶寫入,但其不能訪問等級較低的資源,從而保護數據的完整性。假設一個組織同時執行低完整性進程和高完整性進程,前者收集用戶上傳的(可能是惡意的)PDF,后者掃描來自高機密等級系統的文檔。在Biba模型中,上傳進程無法將數據發送到掃描進程,因此無法破壞機密輸入。最重要的是,即使指向掃描進程,也無法訪問低等級數據。

圖3-7 Biba模型
3. Brewer&Nash模型
Brewer&Nash模型也稱為Chinese Wall模型,是一種旨在防止利益沖突的訪問控制模式。Brewer&Nash模型通常用于處理敏感數據的行業,如金融、醫療或法律行業。該模型考慮了三個主要的資源類別。[5]
·對象:屬于單個組織的資源,如文件或信息。
·公司組:屬于組織的所有對象。
·沖突類:與競爭方有關的所有對象組。
代表某一行業公司的商業律師事務所可能擁有與各種相互競爭的個人和公司有關的檔案。律師事務所的個體律師能夠訪問不同客戶的文件,這就導致其可能訪問到會產生利益沖突的機密數據。在Brewer&Nash模型中,律師能夠訪問資源和案件材料的等級將根據之前訪問的材料而動態變化(見圖3-8)。

圖3-8 Brewer&Nash模型
在示例中,律師查看客戶A的案件材料后,將不能夠訪問客戶B的信息或任何與當前客戶存在競爭的其他方的信息,以解決利益沖突。
- SASE原理、架構與實踐
- INSTANT Netcat Starter
- 走進新安全:讀懂網絡安全威脅、技術與新思想
- 代碼審計:企業級Web代碼安全架構
- 網絡安全三十六計:人人該懂的防黑客技巧
- 移動APT:威脅情報分析與數據防護
- Applied Network Security
- 局域網交換機安全
- 網絡空間安全:拒絕服務攻擊檢測與防御
- 黑客攻防與電腦安全從新手到高手(超值版)
- Practical Internet of Things Security
- ATT&CK與威脅獵殺實戰
- INSTANT Microsoft Forefront UAG Mobile Configuration Starter
- 一本書講透混合云安全
- 大數據時代的智慧城市與信息安全