第一章 計算機與網絡安全概念——讀書筆記

首先需要介紹幾個 標準(下文不會解釋,也可讀到再來看)

  • 美國國家標準與技術研究所(NIST):NIST是一個美國聯邦機構,負責處理與美國政府使用和促進美國私營部門創新有關的測量科學。
  • 互聯網協會(Internet Society,ISOC):它是一個具有全球組織和個人會員資格的專業會員協會。它在解決未來互聯網將面臨的問題方面發揮領導作用,並負責互聯網基礎設施便準的小組的組織機構。
  • ITU-T 國際電信聯盟(ITU):聯合國系統內的一個國際組織,任務是制定涵蓋所有電信領域的技術標準,ITU-T的標準稱爲建議書。
  • ISO 國際標準化組織:一個非政府組織,致力於促進標準化和相關活動的發展,促進商品和服務的國際交流,並以此促進智力、科學、技術和經濟活動領域的何做。
System.out.println("但行好事,莫問前程");
System.out.println("The combination of space, time, and strength that must be considered as the basic elements of this theory of defense makes this a fairly complicated matter. Consequently, it is not easy to find a fixed point of departure.");
System.out.println("防禦理論必須保證破解需要 空間、時間和精力");

計算機安全的概念

計算機安全的定義

**計算機安全:**對於一個自動化的信息系統,採取保護措施確保信息系統資源(包括硬件、軟件、固件、信息/數據和通信)的完整性、可用性和保密性。

計算機安全最核心的三個關鍵目標(稱爲CIA三元組)

  • 保密性(Confidentiality):包括 數據保密性(確保隱私不會泄露或者被非授權者泄露) 和 隱私性(確保個人可以控制或確定哪些信息可以被保存或者公開)。對信息的訪問和公開進行授權限制,保護個人隱私和祕密信息。保密性缺失:信息的非授權泄露。
  • 完整性(Integrity):包括 數據完整性(確保信息和程序只能用特定和授權的方式改變) 和 系統完整性(確保系統以一種正常方式來執行預定功能,不會被非授權操控)。防止對信息的不恰當修改或破壞,包括確保信息的不可否認性和真實性。完整性缺失: 對信息的的非授權修改和毀壞。
  • 可用性(Availablity):確保系統工作快速有效,對授權用戶不能拒絕服務。確保及時可靠的訪問和使用信息。可用性缺失:對信息和信息系統訪問的中斷。

除了CIA之外,還引入了兩個安全概念來呈現更完整的安全概念:

  • 真實性(Authenticity):一個實體是真實的、可被驗證的和可被信任的。(我能證明我是我,還能向你證明我是誰)。
  • 可追溯性(Accountability):要求實體的行爲可以唯一追溯到該實體。(支持不可否認性、組織、故障隔離、入侵檢測和預防、事後恢復,以及法律訴訟)。系統必須保留他們活動的記錄,以允許事後的審計分析,進而跟蹤安全事件或解決爭執。

根據前面列舉的三個要求,FIPS PUB 199定義了三個層次來安全泄露事件(保密性、完整性或可用性的缺失)對組織和個人的影響。(個人認爲這裏的內容只需要記得 這是由組織定義出來的一種標準。)
在這裏插入圖片描述

計算機安全的挑戰

  • 研究安全機制或算法時必須認真考慮各種各樣的攻擊,以與設計完全不同的方式來看問題往往可以攻擊成功。
  • 安全機制使用的算法和協議不止一個,而不同的位置和協議可能會導致加密算法變得沒有意義。
  • 入侵者的優勢就在於它只需要找個一個弱點就可以,而設計者必須找到並根除所有的弱點來獲取完全的安全。

OSI安全架構

OSI 開放系統互聯 Open System Interconnection
ITU-T推薦方案X.800,用來解決 “有效評價安全需求以及安全產品和政策”,即OSI安全框架。對安全人員來說,OSI安全框架是提供安全的一種組織方法

OSI安全架構關注 安全攻擊、安全機制 和 安全服務

  • 安全攻擊 : 任何危及信息系統安全的行爲
  • 安全機制 : 用來檢測、組織攻擊或者從攻擊狀態恢復到正常狀態的過程。(或者 實現該過程的設備)
  • 安全服務 : 加強數據處理系統和信息傳輸的安全性的一種處理過程或通信服務。目的在於 利用一種或多種安全機制進行反攻擊。

威脅 && 攻擊
在這裏插入圖片描述
威脅是脆弱性被利用而帶來的危險。
攻擊是有意違反安全服務和侵犯系統安全策略的智能行爲。

安全攻擊

被動攻擊:試圖獲取或利用系統的信息但並不影響系統資源
主動攻擊:試圖改變系統資源或影響系統運行

被動攻擊

特性:對傳輸進行竊聽和監測。
目標:獲得傳輸的信息。
包括兩種形式:

  • 信息內容泄露攻擊:數據信息被攻擊者截獲
  • 流量分析:一般針對於已經加密之後的信息,仍然可以獲得這些消息模式。攻擊者可以決定通信主機的身份和位置,可以觀察傳輸消息的頻率和長度。這些信息可以用於判斷通信的性質。

因此,處理被動攻擊的重點是 預防 而不是 監測

主動攻擊

特性:對數據流進行修改 或 僞造數據流
可以分爲4類:

  • 僞裝:某實體假裝別的實體。一般會包括其它形式的主動攻擊(路徑2有效)
  • 重放:攻擊者未經授權地將截獲的信息再次發送。(路徑1、2、3有效)
  • 消息修改:未經授權修改合法消息的一部分或延遲消息的傳輸或改變消息的順序以獲得非授權的效果。(路徑1、2有效)
  • 拒絕服務:阻止或禁止對通信設施的正常使用或管理(可能有具體目標) 另一種形式是破壞整個網絡、使網絡失效或使其過載來降低其性能。(路徑3有效)

主動攻擊 難以絕對地預防,但是容易檢測。 主動攻擊的重點 在於監測並從攻擊造成的破壞或延遲中恢復過來
在這裏插入圖片描述

安全服務

一種由系統提供的對系統資源進行特殊保護的處理或通信服務;安全服務通過安全機制來實現安全策略。
X.800 將安全服務分爲5類14個特定服務
在這裏插入圖片描述
認證 – 保證每個實體都是他們所聲稱的實體

  • 同等實體認證:主要用於連接的建立或數據傳輸階段。保證:一個實體沒有試圖進行僞裝或對以前的連接進行非授權重播。
  • 數據源認證:爲數據的來源提供確認(通信實體之間並沒有預先的交互)

訪問控制 – 識別或者認證後纔可以獲得響應的訪問權限

數據保密性 – 防止傳輸的數據遭到被動攻擊 以及 防止流量分析

  • 連接保密性
  • 無連接保密性
  • 選擇域保密性
  • 流量保密性

數據完整性 – 用於處理消息流、面向連接的完整性服務保證收到的消息和發出的消息一致。往往自動恢復機制是一種更有吸引力的選擇

  • 可恢復的服務
  • 無恢復的服務

不可否認性 – 防止發送方或接收方 否認傳輸或接收過某條消息。

  • 源不可否認性(源頭)
  • 宿不可否認性(宿主)

可用性服務 – 處理拒絕服務攻擊引起的安全問題,依賴於對系統資源的恰當管理和控制,依賴於訪問控制服務和其它安全服務。

安全機制

在這裏插入圖片描述
安全機制分爲兩類:

  • 在特定的協議層實現,如TCP或應用層協議
  • 不屬於任何協議層或安全服務

X800區分可逆和不可逆加密機制:

  • 可逆加密機制:一種單純的加密算法,數據可以加密和解密。
  • 不可逆加密機制:包括用於數字簽名和消息認證應用中的散列算法與消息認證碼。

基本安全設計準則

雖然沒有一種安全設計或實現技術能夠系統地摒除安全漏洞、組織所有非授權的行爲。雖然沒有這種萬無一失的技術,但是能有一些可被廣泛人可的設計準則直到保護機制的開發也是有益的。美國國家信息保障/空間防禦學術中心與美國國家安全局、美國國土安全部聯合倡議瞭如下安全設計準則:

  • 機制的經濟性:嵌入在硬件和軟件中的安全機制應設計得儘量簡單、短小。
  • 故障安全默認:訪問決策應基於允許而非拒絕(默認情況下是五訪問權限,保護方案覈實是否負荷允許訪問的條件)。
  • 完整的監察:必須檢查訪問控制機制中的每個訪問,系統不能依賴從換從中檢索到的訪問決策。
  • 開放的設計:安全機制的設計應該是開放的,而不是保密的。
  • 權限分離:定義爲需要多個權限屬性來訪問一個受限資源
  • 最小權限:意味着系統的每個進程和用戶應該以執行該任務所需的最小權限集來進行操作。(比如基於角色的訪問控制)
  • 最小共同機制:把不同用戶共享的功能設計得最小化,以便提供共同的安全性。
  • 心理接受度:安全機制在滿足授權訪問的用戶需求的同時,不應過度干預用戶的工作。
  • 隔離:公共部分與關鍵部分分離;各個用戶的進程和文件應彼此隔離;安全機制也應該被隔離。
  • 密封:基於面向對象的特定形式的隔離。(即類似於訪問控制關鍵字來限定訪問)
  • 模塊化:既指將安全功能作爲單獨的模塊開發,也指用於機制設計和實現的模塊化架構。
  • 分層:使用多個疊加的保護方法來保護信息系統的人員、技術和操作。(分層方法常用於在攻擊者與受保護的信息或服務之間設置多個障礙,這種技術通常稱爲:深度防禦)。
  • 最小意外:指程序或用戶接口讓用戶感到,對意外事故的處理響應最小化。

攻擊面與攻擊樹

在評估和分類安全威脅時很有用的兩個概念:攻擊面 和 攻擊樹

攻擊面

攻擊面 由系統中一系列可訪問且可利用的漏洞組成
可以分爲如下幾類:

  • 網絡攻擊面:此類攻擊面涉及的是企業網絡、廣域網或互聯網。(比如網絡協議的漏洞,比如進行拒絕服務攻擊、中斷通信鏈路、各種形式的入侵攻擊的漏洞)。
  • 軟件攻擊面:此類攻擊面涉及的是 應用程序、工具包或操作系統代碼。 (比如 Web服務器軟件)
  • 人類攻擊面:此類攻擊面涉及的是 由系統人員或外部人員造成的漏洞。如社會工程學、人爲錯誤和被信任的內部人員。

評估安全威脅的規模和嚴重性時,攻擊面分析是很有用的技術。對漏洞的系統分析能使開發人員和安全分析師直到系統中的哪些地方需要安全機制。

一旦明確一個攻擊面,設計者就可以想法設法的使攻擊面變小,增加攻擊者的攻擊難度。

攻擊面還提供設置測試、加強安全措施和修改服務或應用的優先權的依據。

攻擊樹

攻擊樹是 採用分支化、層次化表示來利用安全漏洞的可能技術集合的數據結構。

攻擊的目的 —— 造成安全事件,是攻擊樹的根節點,而那些攻擊者爲達到這一目的所採用的方法,被迭代增加地表示爲攻擊樹上的分支和子節點。

每個從根節點出發的路徑上的末端節點,即葉子節點,表示發動攻擊的不同方式。每個非葉子節點都是“與節點”或者“或節點”。

每條分支可以標記不同的值來表示攻擊的難度、成本或其他攻擊屬性,用以對不同的可選攻擊方式進行比較。

使用攻擊樹的動機:爲了更有效地利用關於攻擊模式的可用信息。

安全分析師可以利攻擊樹的這種結構化方式來歸檔安全攻擊,進而揭示其中的關鍵漏洞。攻擊樹還可用來指導系統和應用的設計,以及對抗策略的選擇和強度。

PIN : Personal Indetification Number 個人識別密碼

網絡安全模型

在這裏插入圖片描述
消息通過Internet服務從一方傳送到另一方,而作爲消息交換的主題,雙方都必須和對方合作以保證交換的可靠。雙方信息通過路由從源地址到目的地址,並協作使用通信協議(如TCP/IP),從而建立起一個邏輯信息通道。

所有提供安全的技術都包含以下兩部分:

  • 對發送消息的安全變換。如加密消息,將消息打亂,使其變得不可讀;基於消息內容,附加一段基於消息內容的編碼,用來驗證發送者的身份。
  • 被兩個主體共享且不被攻擊者知道的一些機密信息。如在傳輸之前用於加密消息、收到消息後用於解密消息的密鑰。

設計安全服務應包含如下4個方面的內容:

  • 設計一個算法,它執行與安全相關的變換。該算法應是攻擊者無法攻破的。
  • 產生算法所使用的祕密信息。
  • 設計分配和共享祕密信息的方法。
  • 指明通信雙方使用的協議,該協議利用安全算法和祕密信息實現安全服務。

攻擊者可以在計算機系統中加入程序,它利用系統的弱點影響應用程序和使用功能程序,如編輯程序和編譯程序。對程序的威脅主要有:

  • 信息訪問威脅:以非授權用戶的名義截獲或修改數據
  • 服務威脅:利用計算機中的服務缺陷禁止合法用戶使用這些服務。
    在這裏插入圖片描述
    入侵者:與己方有不同觀點,並深入己方進行他方觀念或技術的實施。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章