基本概念
網路安全通訊的基本屬性
-
機密性。只有傳送方與預定接收方能理解報文內容。
-
訊息完整性。傳送方與接收方希望確保訊息未被篡改,發生篡改一定會被檢測到。
-
可訪問性與可用性。可訪問性與可用性是網路資訊可被授權實體訪問並按需求使用的特性。
-
身份認證。傳送方與接收方希望確認彼此的真實身份。
網路安全是指網路系統的硬體、軟體及其系統中的資料受到保護,不因偶然的或者 惡意的原因遭受到破壞、更改、洩漏,系統連續可靠正常地執行,網路服務不中斷。
安全威脅
報文傳輸方面:竊聽 、插入、假冒、劫持等安全威脅。
網路攻擊:拒絕服務DoS以及分散式拒絕服務DDoS。
對映:在發起攻擊前先探路找出網路上在執行什麼服務,然後利用ping命令確定網路上的主機地址,最後使用埠掃描的方法依次嘗試與每個埠建立TCP連線。
嗅探:通常發生在共享式乙太網或者無線網路中,嗅探主機透過混雜模式網路介面卡,可以接收或記錄所有廣播介質上的分組/幀,可以讀取到所有未加密資料。
IP欺騙:由應用直接生成“原始”IP分組,設定分組的源IP為任意值,接收方無法判斷源地址是否真實,可能導致錯誤資料的接收或者隱藏身份網路安全攻擊。
資料加密
密碼技術是保障資訊保安的核心基礎,解決資料的機密性、完整性、不可否認性以及身份識別等問題均需要以密碼為基礎。密碼學包括密碼編碼學和密碼分析學兩部分。
密碼編碼:將密碼變化的客觀規律應用於編制密碼來保守通訊秘密。
密碼分析學:研究密碼變化客觀規律中的固有缺陷,並應用於破譯密碼以獲取通訊情報。
傳統密碼演算法
-
替代密碼
替代密碼是將明文字母表M中的每個字母用密文字母表C中的相應字母來代替,常見的加密模型有移位密碼、乘數密碼、仿射密碼等
凱撒密碼是移位密碼的一個典型應用。
-
換位密碼
又稱置換密碼,根據一定的規則重新排列明文,以便打破明文的結構特性。置換密碼的特點是保持明文的所有字元不變,只是利用置換打亂了明文字元的位置和次序。
對稱金鑰演算法
對稱金鑰加密系統又可分為分組密碼和流密碼。計算機網路常用的對稱金鑰加密為分組密碼。
分組密碼又稱塊密碼,是將明文訊息分成若干固定長度的訊息組,每組訊息進行單獨加密/解密。比較常見的分組密碼有DES、AES、IDEA等。
非對稱/公開金鑰演算法
對稱金鑰加密演算法經過多年的發展與改進,在防止暴力破解上做的已經非常完美了,但是仍然面臨一個最大的問題,就是金鑰分發問題。
不管使用的密碼系統有多強,如果密碼分析者能直接偷取到金鑰,則整個系統將變得毫無價值。但是金鑰總需要傳送給使用者(需要解密密文的一方)。如何既方便金鑰的分發,又確保密碼體系安全?非對稱金鑰密碼,或稱公開金鑰密碼(簡稱公鑰密碼),則便於解決金鑰分發問題。
一個公鑰,一對私鑰;私鑰加密,公鑰解密。
訊息完整性與數字簽名
報文/訊息完整性,也稱為報文/訊息認證(或報文鑑別),其主要目標是:
-
證明報文確實來自聲稱的傳送方;
-
驗證報文在傳輸過程中沒有被篡改;
-
預防報文的時間、順序被篡改;
-
預防報文持有期被篡改;
-
預防抵賴(如傳送方否認已傳送的訊息或接收方否認已接收的訊息)。
訊息完整性檢測方法
為了實現訊息完整性檢測,需要用到密碼雜湊函式H(m),表示對報文m進行雜湊化。
-
MD5
-
SHA-1
報文認證
訊息完整性檢測的一個重要目的就是要完成報文認證的任務。對報文m應用雜湊函式H,得到一個固定長度的雜湊碼,稱為報文摘要,記為H(m)。報文摘要可以作為報文m的數字指紋。
報文認證是使訊息的接受者能夠檢驗收到的訊息是否是真實的認證方法。報文(訊息)認證的目的有兩個:一是訊息源的認證,即驗證訊息的來源是真實的;另一個是訊息的認證,即驗證訊息在傳送過程中未被篡改。
-
簡單報文驗證
沒有達到對訊息來源認證的目的。
-
報文認證碼
沒法保證訊息在接收方沒有被篡改。
數字簽名
以上兩種報文認證方法均存在不足,沒辦法很好地完成報文認證的目的。亟待解決的問題有:傳送方不承認自己傳送過某一報文。接收方 自己偽造一份報文,並聲稱來自傳送方。某個使用者冒充另一個使用者接收和傳送報文。接收方對收到的資訊進行篡改。解決這些問題的有效技術手段是數字簽名。
數字簽名與訊息認證的區別:
訊息認證使接收方能驗證傳送方以及所發訊息內容是否被篡改過。當收發者沒有利害衝突時,這對於防止第三者的破壞來說是足夠了。但當接收者和傳送者之間有利害衝突時,就無法解決他們之間的糾紛,此時須藉助滿足要求的數字簽名技術。
數字簽名應滿足以下要求:
-
接收方能夠確認或證實傳送方的簽名,但不能偽造
-
傳送方發出簽名的訊息給接收方後,就不能再否認他所簽發的訊息
-
接收方對已收到的簽名訊息不能否認,即有收報認證
-
第三者可以確認收發雙方之間的訊息傳送,但不能偽造此過程
-
簡單數字簽名
數字簽名就是對用私有金鑰進行加密,而認證就是利用公開金鑰解密,所以報文加密技術是數字簽名的基礎。
-
簽名報文摘要
簡單數字簽名確實可以很好地達到資訊驗證的目的,但是由於數字簽名利用私有金鑰對整個報文m進行加密,造成加密演算法在報文很大時計算量很大,執行效率很低同時生成的擴充套件報文 是原始報文數量的兩倍多,這樣就造成接收方流量的極大浪費。
簽名報文摘要 是對報文m應用雜湊函式生成報文摘要,然後對報文摘要進行加密
身份認證
身份認證又稱身份鑑別,是一個實體經過計算機網路向另一個實體證明其身份的過程。例如一個人向某個電子郵件伺服器證明其身份。
金鑰分發中心與證書認證機構
金鑰分發中心
在對大量資訊進行加密時,對稱金鑰密碼因為其加密/解密效率高、速度快等特點,而比非對稱金鑰密碼更為有效。然而對稱金鑰的應用,需要在通訊方之間建立一個共享金鑰。如果一方需要和N方進行保密通訊,則需要建立N對共享金鑰。顯然,解決對稱金鑰的安全可靠分發,是成功利用對稱金鑰的關鍵。
對稱金鑰分發的典型解決方案是,通訊各方建立一個大家都信賴的金鑰分發中心(KDC),並且每一方和KDC之間都保持一個長期的共享金鑰。
證書認證機構
將公鑰與特定實體繫結,通常是由認證中心(CA)完成的。
CA有以下作用:
-
CA可以證實一個實體 (一個人、一臺路由器)的 真實身份
-
一旦CA驗證了某個實體的身份,CA會生成一個把其身份和實體的公鑰繫結起來的證書,其中包含該實體的公鑰及其全域性唯一的身份識別資訊(例如人的姓名或IP地址)等,並由CA對證書進行數字簽名。
防火牆與入侵檢測系統
概念
防火牆能夠隔離組織內網路與公共網際網路,允許某些分組透過,而阻止其他分組進入或離開內部網路的軟體、硬體或軟體硬體結合的一種設施。防火牆發揮作用的基本前提是,需要保證從外部達到內部和從內部到外部所有流量都經過防火牆,並且僅被授權的流量允許透過,防火牆能夠限制對授權流量的訪問。
防火牆分類
可分三類:無狀態分組過濾器、有狀態分組過濾器、應用閘道器。
-
無狀態分組過濾器
無狀態分組過濾器是典型的部署在內部網路和網路邊緣路由器上的防火牆。一個機構網路通常都會有至少一個將其內部網路與外部Internet相連的閘道器路由器。
通常基於以下引數進行決策分組是透過還是丟棄:
-
IP資料包的源IP地址和目的IP地址
-
TCP/UDP報文段的源埠號和目的埠號
-
ICMP報文型別
-
TCP報文段的SYN和ACK標誌位等。
-
-
有狀態分組過濾器
無狀態分組過濾器存在弊端,例如,不加區分的放行所有滿足條件的分組,假如某路由器的訪問控制列表允許來自外部的ACK=1且源埠為80的任何分組透過該過濾器到達內部網路。這樣的分組能夠被攻擊者利用進行拒絕服務攻擊或者繪製內部網路。 分組過濾器會使用連線表跟蹤每個TCP連線。
-
應用閘道器
前面的分組過濾器可以實現根據IP內容和TCP/UDP首部資訊進行粗粒度的過濾,但他們都無法鑑別使用者身份或針對授權使用者開放特定服務,因為有關使用者身份的資訊都是應用層資料,都不在TCP/UDP傳輸層資料頭部中。
入侵檢測系統IDS
防火牆在決定讓哪個分組經過防火牆時,分組過濾器檢查IP、TCP、UDP、ICMP首部欄位。為了檢測多種攻擊型別,則需要執行深度分組檢查,檢視首部欄位以外的部分,深入檢視分組攜帶的實際資料。
入侵監測系統(IDS)是當觀察到潛在的惡意流量時,能夠產生警告的裝置或系統,IDS不僅僅針對TCP/IP首部進行操作,而且會進行深度包檢測,並檢測多資料之間的相關性。IDS能夠檢測多種攻擊,例如,網路對映、埠掃描、TCP棧掃描、DoS拒絕服務攻擊等。
網路安全協議
前面介紹了網路安全基礎與典型防護措施,包括對稱金鑰、公開金鑰、資訊完整性驗證、身份認證、金鑰分發和證書系統、防火牆和入侵檢測等。現在考慮在網際網路中如何使用這些工具提供安全性保障。
安全電子郵件
作為一個網路應用,電子郵件對網路安全的需求有以下幾個方面:
-
機密性:傳輸過程中不被第三方閱讀到郵件內容
-
完整性:支援在郵件傳輸過程中不被篡改,若發生篡改,透過完整性驗證可以判斷出該郵件被篡改過。
-
身份認證性:電子郵件的傳送方不能被假冒,接收方能夠確認傳送方身份。
-
抗抵賴性:傳送方無法對傳送的郵件進行抵賴。接收方能夠預防傳送方抵賴自己傳送過的事實。
安全電子郵件標準是1991年提出的PGP標準。
安全套接字層SSL
安全套接字層(SSL)或傳輸層安全(TLS)是在傳輸層之上構建一個安全層,介於應用層和傳輸層 之間,類似於會話層。TLS是SSL的變體,差異不大。
SSL可提供機密性、完整性、身份認證等安全服務。HTTP協議使用SSL進行安全通訊時,稱為安全HTTP,簡記為HTTPS。所有基於TCP的網路都可以應用SSL,SSL提供了安全套接字介面,資料處理後再交付給TCP傳輸。
虛擬專用網VPN和IP安全協議IPSec
網路層解決安全問題可以認為是“全覆蓋”的解決,因此在網路層之上的所有傳輸層協議,包括一些應用都可以基於網路層的安全機制實現可靠通訊。最典型的網路層安全協議,就是使用最廣泛最有代表性的IP安全協議,一般被稱為IPSec,為網路層的資訊傳輸提供了安全性。IPSec能夠為任意兩個網路實體之間IP資料包的傳輸提供安全,可以提供機密性、身份鑑別、資料完整性驗證和防重放攻擊等服務。許多機構組織會使用IPSec建立執行在公共網路之上的虛擬專用網路VPN。
VPN簡介
在VPN之前先介紹一下專用網路PN。PN是基於專屬的網路裝置、鏈路或協議等建立的專門服務於特定組織機構的網路,例如,軍事網路等,不與公共網路互連,只在組織內部使用的網路。若要實現PN,可以自己構建專用物理鏈路或向通訊鏈路提供商租用鏈路,但是構建以及管理成本十分昂貴。
虛擬專用網路VPN透過建立在公共網路,例如Internet上的安全通道,實現遠端使用者、分支機構、業務夥伴等與機構總部網路的安全連線,從而構建針對特定組織機構的專用網路。VPN透過隧道技術、加密技術、金鑰管理、身份認證、和訪問控制等,實現與專用網路類似的功能,可以達到PN安全性的目的,同時成本相對低很多。VPN最重要的特點就是虛擬,連線總部網路和分支機構之間的安全通道實際上並不會獨佔網路資源,是一條邏輯上傳過公共網路的安全、穩定的通道。