信息安全基礎技術
一、密碼學
1.加碼與解密
數據加密是指將明文信息采取數學方法進行函數轉換成密文,只有特定接收方才能將其解密還原成明文的過程。
數據加密主要涉及三要素:明文、密鑰、密文。
明文(Plain Text):被隱蔽的原始消息,通常用m表示;
密文(Cipher Text):隱蔽后的消息,通常用c表示;
密鑰(Key):加密和解密時使用的一組秘密信息,用來控制加密和解密算法的操作,通常用Ke和Kd表示;
發送者、接受者:在消息傳送過程中,主動提供消息的一方稱為發送者,得到消息的一方稱為接受者;
加密(Encryption):將明文通過數學算法轉換成密文的過程。
解密(Decryption) :是將密文還原成明文的過程。
加密可以采用密碼算法來實現,密碼算法從密鑰使用角度,可分為對稱密碼算法和非對稱密碼算法。
對稱密碼算法(也稱單鑰或私鑰密碼算法):發送和接收數據的雙方必須使用相同的密鑰對明文進行加密和解密運算,就是說加密和解密使用的是同一密鑰。
對稱密碼的優點:
◆效率高,算法簡單,系統開銷小
◆適合加密大量數據
◆明文長度與密文長度相等
對稱密碼的缺點:
◆需要以安全方式進行密鑰交換
◆密鑰管理復雜
典型對稱密碼與非對稱密碼
對稱密碼:
分組密碼:DES、AES、SM4
序列密碼:祖沖之序列密碼、RC4
非對稱密碼:
RSA、ECC、SM2、SM3
備注:粗體表示的算法為國家密碼管理局編制的商用算法
為了更好的利用對稱密碼算法、非對稱密碼算法兩者的優點,盡可能的消除兩者自身存在的缺陷,在現實生活中,多采用混合加密算法。混合加密系統是對稱密碼技術和非對稱密碼技術的結合。
2.哈希函數
對稱密碼和非對稱密碼算法主要解決的是信息的機密性問題,而實際系統和網絡還可能受到消息篡改等攻擊,如何確保信息的完整性,密碼學的解決方法之一是哈希函數。
哈希(Hash)函數(也稱為雜湊函數或單向散列函數)。哈希函數接受消息作為輸入,輸出一個稱為哈希值(也稱為散列值、消息摘要或指紋)的輸出。
哈希值可以看做是該輸入消息的指紋。
它的優點是:
◆輸入的消息即使僅改變一個比特的內容,輸出的哈希值都會發生變化。
◆我們可以通過哈希值是否發生改變來判斷消息是否被纂改。
3.數字簽名
除了保護信息的機密性、完整性,密碼學技術也可以解決信息的可鑒別性(真實性或認證性)和不可否認性。簡單地說,前者確認對方是否是本人的認證,后者防止對方否認自己曾經的行為。
簡單的說數字簽名具備防止偽造、否認的功能。
偽造攻擊的例子很多,如偽造郵件的發送者,在網絡傳輸數據中插入假信息,或者在文件中追加記錄等。
否認是指信息發送方事后否認他發送的信息和行為。
二、身份認證
1.身份認證基本方法
身份認證是在計算機網絡中確認操作者身份的過程
在分布式系統中有兩類主要認證:
◆用戶與主機間的認證
◆主機與主機之間的認證
身份認證技術不可避免地會用到加密技術,可分為:
◆基於對稱密鑰技術的身份認證(如Kerberos)
◆基於共公開密鑰的身份認證(如 CA)
用戶與主機之間的認證可以基於如下一個或幾個因素:
用戶所知道的東西:例如口令、密碼等,用戶擁有的東西,例如印章、智能卡(如信用卡等)。
用戶所具有的生物特征:例如指紋、聲音、視網膜、簽字、筆跡等。
2.數字證書和公鑰基礎設施
數字證書:
數字證書(又稱電子證書、公鑰證書或證書)是一段經認證權威機構(Certification Authority,CA)簽名的、包含擁有者身份信息和公開密鑰的數據體。
公鑰基礎設施:
公鑰基礎設施(Public Key Infrastructure,PKI)是一種遵循既定標准的公鑰管理平台,它能夠為所有網絡應用提供加密和數字簽名等密碼服務所必需的密鑰和證書管理體系。
認證權威機構:
認證權威機構(稱認證中心或認證機構,Certification Authority,CA),專門負責數字證書的產生、發放和管理,以保證數字證書真實可靠。
數字證書的定義
數字證書就是互聯網通訊中標志通訊各方身份信息的一串數字,提供了一種在lnternet上驗證通信實體身份的方式,其作用類似於司機的駕駛執照或日常生活中的身份證。
它是由一個由權威機構——CA機構,又稱為證書授權(Certificate Authority)中心發行的,人們可以在網上用它來識別對方的身份。
數字證書是一個經證書授權中心數字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。最簡單的證書包含一個公開密鑰、名稱以及證書授權中心的數字簽名,此外,數字證書只在特定的時間段內有效。
數字證書的內容
◆所有者公鑰
◆用戶或實體的身份發布者身份
◆由第三方信任機構簽名(certificate Authority)有限的有效期.
◆X.509定義該結構(ITU, IETF PKIX standards)、現在為v3.
數字證書的功能
數字證書通過運用對稱和非對稱密碼體制等密碼技術建立起一套嚴密的身份認證系統,從而保證:
◆信息除發送方和接收方外不被其它人竊取;(保密性)
◆信息在傳輸過程中不被篡改;(不可修改性)
數字證書可用於:發送安全電子郵件、訪問安全站點、網上證券交易、網上招標采購、網上辦公、網上保險、網上稅務、網上簽約和網上銀行等安全電子事務處理和安全電子交易活動。
PKI的定義
PKI(Public Key Infrastructure )即“公鑰基礎設施”,是一種遵循既定標准的密鑰管理平台,它能夠為所有網絡應用提供加密和數字簽名等密碼服務及所必需的密鑰和證書管理體系,簡單來說,PKI就是利用公鑰理論和技術建立的提供安全服務的基礎設施。
PKI技術是信息安全技術的核心,也是電子商務的關鍵和基礎技術。
PKI的功能
PKI技術采用證書管理公鑰,通過第三方的可信任機構--認證中心CA(Certificate Authority),把用戶的公鑰和用戶的其他標識信息(如名稱、e-mail、身份證號等)捆綁在一起,在Internet網上驗證用戶的身份。
認證權威機構CA的主要功能
(1)證書的簽發和管理:接受終端實體的證書申請,驗證審查用戶身份,生成數字證書,並負責數字證書的分發、發布、更新和撤銷。
(2)證書“黑名單”的管理:CA通過發布和維護證書作廢清單(Certificate Revocation List,CRL)將已作廢的證書放入“黑名單”,連同作廢原因一起發布到CRL,用戶可查詢自己或其他人的證書和下載黑名單信息。
(3)RA的設立、審查及管理:注冊權威機構(Registration Authority,RA)受CA委派,負責接收證書申請和審核的機構,用於減輕CA工作負擔。
3.常見身份認證應用舉例
◆靜態口令認證: 數字證
◆動態短信口令認證: 公鑰基礎設施
◆動態口令牌認證: 認證權威機構
靜態密碼方式
用戶的密碼是由用戶自己設定的。在網絡登錄時輸入正確的密碼,計算機就認為操作者就是合法用戶。
實際上,由於許多用戶為了防止忘記密碼,經常采用諸如生日、電話號碼等容易被猜測的字符串作為密碼,或者把密碼抄在紙上放在一個自認為安全的地方,這樣很容易造成密碼泄漏。
如果密碼是靜態的數據,在驗證過程中需要在計算機內存中和傳輸過程可能會被木馬程序或網絡中截獲。
因此,靜態密碼機制無論是使用還是部署都非常簡單,但從安全性上講,用戶名/密碼方式一種是不安全的身份認證方式。
動態短信密碼認證
短信密碼以手機短信形式請求包含6位隨機數的動態密碼,身份認證系統以短信形式發送隨機的6位密碼到客戶的手機上。客戶在登錄或者交易認證時候輸入此動態密碼,從而確保系統身份認證的安全性。(安全性、普及性、易收費、易維護)
動態口令牌認證
由於動態口令牌使用起來非常便捷,它被廣泛的應用在網上銀行、電子政務、電子商務等領域。
(1))USB Key認證
(2)生物識別技術
(3)雙因素認證
動態口令牌是客戶手持用來生成動態密碼的終端,主流的是基於時間同步方式的,每60秒變換一次動態口令,口令一次有效,它產生6位動態數字進行一次一密的方式認證。
但是由於基於時間同步方式的動態口令牌存在60秒的時間窗口,導致該密碼在這60秒內存在風險,現在已有基於事件同步的,雙向認證的動態口令牌。基於事件同步的動態口令牌是以用戶動作觸發的同步原則,真正做到了一次一密,並且由於是雙向認證,即:服務器驗證客戶端,並且客戶端也需要驗證服務器,從而達到了徹底杜絕木馬網站的目的。
USB Key認證
基於USB Key的身份認證方式采用軟硬件相結合、一次一密的強雙因子認證模式,很好地解決了安全性與易用性之間的矛盾。
USB Key是一種USB接口的硬件設備,它內置單片機或智能卡芯片,可以存儲用戶的密鑰或數字證書,利用USBKey內置的密碼算法實現對用戶身份的認證。
基於USB Key身份認證系統主要有兩種應用模式:
◆基於沖擊/響應(挑戰/應答)的認證模式;
◆基於PKI體系的認證模式,運用在電子政務、網上銀行。
生物識別技術
通過可測量的身體或行為等生物特征進行身份認證的一種技術。
生物特征分為身體特征和行為特征兩類。
◆身體特征包括:指紋、掌型、視網膜、虹膜、人體氣味、臉型、手的血管和DNA等;
◆行為特征包括:簽名、語音、行走步態等
雙因素認證方式
所謂雙因素就是將兩種認證方式結合起來,進一步加強認證的安全性。
目前使用最為廣泛的雙因素主要有:
◆動態口令牌+靜態密碼
◆USB KEY+靜態密碼
◆二層靜態密碼
三、訪問控制
1.訪問控制基本概念
訪問控制策略是主體對客體的操作行為集和約束條件集;簡單講,訪問控制策略是主體對客體的訪問規則集,這個規則集直接定義了主體對客體的作用行為和客體對主體的條件約束。
訪問控制策略體現了一種授權行為,也就是客體對主體的權限允許,這種允許不超越規則集。
主體:
◆一個提出請求或要求的實體,是動作的發起者,但不一定是動作的執行者。
◆可以對其它實體施加動作的主動實體,簡記為S。有時也稱為用戶(User)或訪問者(被授權使用計算機的人員),記為U。
◆用戶、計算機終端、應用服務程序、進程等。
客體:
◆接受其他實體訪問的被動實體,簡記為O。
◆信息、資源、對象、文件、記錄、硬件設施等。
◆一個客體可以包含另外一個客體。
訪問控制由兩個重要過程組成:
一、認證
檢驗主體的合法身份
二、授權
限制用戶對資源的訪問權限
區分身份認證與訪問控制
身份認證用於確認實體是它所聲明的,提供了關於某個實體身份的保證。
正確建立用戶的身份是認證服務的責任,而訪問控制則假定在通過監控器實施訪問控制前,用戶的身份就已經得到了驗證;因而,訪問控制的有效性取決於用戶的正確識別,同時也取決於監控器正確的控制。
2.訪問控制技術簡介
1.自主訪問控制(DAC)
自主訪問控制(Discretionary Access Control)根據主體的身份及允許訪問的權限進行決策,也稱自由訪問控制。
Linux、UNIX、Windows NT/SERVER版本的操作系統都提供自主訪問控制功能。
具體實現上,首先要對用戶的身份進行鑒別;然后就可以按照訪問控制列表所賦予用戶的權限允許和限制用戶使用客體的資源。
DAC一般采用以下三種機制來存放不同主體的訪問控制權限,從而完成對主體訪問權限的限制:
1.訪問控制矩陣
2.訪問控制列表
3.訪問控制能力列表
2.強制訪問控制
強制訪問控制(Mandatory Access Control,MAC)是指主體和客體都有一個固定的安全屬性,系統用該安全屬性來決定一個主體是否可以訪問某個客體。如果系統認為具有某一個安全屬性的主體不適合訪問某個客體,那么任何其他主體都無法使該主體具有訪問該客體的權利。
3.基於角色的訪問控制
基於角色的訪問控制(Role-based Access Control,RBAC)是基於“角色”的,明確區分權限和職責。例如,在一個公司內,財務主管、會計、出納、核算員等每一個崗位職責都可以看做“角色”。管理員負責將系統和數據的訪問權限(不同類別和級別)分別賦予承擔不同工作職責的用戶。
4.入網訪問控制
入網訪問控制為網絡訪問提供了第一層訪問控制。它控制哪些用戶能夠登錄到服務器並獲取網絡資源,控制准許用戶入網的時間和准許他們在哪台工作站入網。
用戶的入網訪問控制可分為三個步驟:
◆用戶名的識別與驗證
◆用戶口令的識別與驗證
◆用戶賬號的缺省限制檢查。
用戶名的識別與驗證
對網絡用戶的用戶名和口令進行驗證是防止非法訪問的第一道防線。為保證口令的安全性,用戶口令不能顯示在顯示屏上,口令長度應不少於6個字符,口令字符最好是數字、字母和其他字符的混合,用戶口令必須經過加密。用戶還可采用一次性用戶口令,也可用便攜式驗證器(如智能卡)來驗證用戶的身份。
用戶口令的識別與驗證
網絡管理員可以控制和限制普通用戶的賬號使用、訪問網絡的時間和方式。用戶賬號應只有系統管理員才能建立。用戶口令應是每用戶訪問網絡所必須提交的“證件”、用戶可以修改自己的口令,但系統管理員應該可以控制口令的以下幾個方面的限制:最小口令長度、強制修改口令的時間間隔、口令的唯一性、口令過期失效后允許入網的寬限次數。用戶名和口令驗證有效之后,再進一步履行用戶賬號的缺省限制檢查。
用戶賬號的缺省限制檢查
網絡應能控制用戶登錄入網的站點、限制用戶入網的時間、限制用戶入網的工作站數量。當用戶對交費網絡的訪問“資費”用盡時,網絡還應能對用戶的賬號加以限制,用戶此時應無法進入網絡訪問網絡資源。網絡應對所有用戶的訪問進行審計。如果多次輸入口令不正確,則認為是非法用戶的入侵,應給出報警信息。
5.權限控制
網絡的權限控制是針對網絡非法操作所提出的一種安全保護措施。用戶和用戶組被賦予一定的權限。網絡控制用戶和用戶組可以訪問哪些目錄、子目錄、文件和其他資源。可以指定用戶對這些文件、目錄、設備能夠執行哪些操作。
受托者指派和繼承權限屏蔽( irm)可作為兩種實現方式。
◆受托者指派控制用戶和用戶組如何使用網絡服務器的目錄、文件和設備。
◆繼承權限屏蔽相當於一個過濾器,可以限制子目錄從父目錄那里繼承哪些權限。
我們可以根據訪問權限將用戶分為以下幾類
◆特殊用戶(即系統管理員);
◆一般用戶,系統管理員根據他們的實際需要為他們分配操作權限;
◆審計用戶,負責網絡的安全控制與資源使用情況的審計。
用戶對網絡資源的訪問權限可以用訪問控制表來描述。
目錄級安全控制
網絡應允許控制用戶對目錄、文件、設備的訪問。
用戶在目錄一級指定的權限對所有文件和子目錄有效,用戶還可進一步指定對目錄下的子目錄和文件的權限。
對目錄和文件的訪問權限一般有八種:系統管理員權限、讀權限、寫權限、創建權限、刪除權限、修改權限、文件查找權限、訪問控制權限。
用戶對文件或目標的有效權限取決於以下兩個因素:用戶的受托者指派、用戶所在組的受托者指派、繼承權限屏蔽取消的用戶權限。
一個網絡管理員應當為用戶指定適當的訪問權限,這些訪問權限控制着用戶對服務器的訪問。
八種訪問權限的有效組合可以讓用戶有效地完成工作,同時又能有效地控制用戶對服務器資源的訪問,從而加強了網絡和服務器的安全性。
屬性安全控制
當用文件、目錄和網絡設備時,網絡系統管理員應給文件、目錄等指定訪問屬性。
屬性安全在權限安全的基礎上提供更進一步的安全性。
網絡上的資源都應預先標出一組安全屬性。用戶對網絡資源的訪問權限對應一張訪問控制表,用以表明用戶對網絡資源的訪問能力。
屬性設置可以覆蓋已經指定的任何受托者指派和有效權限。
屬性往往能控制以下幾個方面的權限:向某個文件寫數據、拷貝一個文件、刪除目錄或文件、查看目錄和文件、執行文件、隱含文件、共享、系統屬性等。
服務器安全控制
網絡允許在服務器控制台上執行一系列操作。用戶使用控制台可以裝載和卸載模塊,可以安裝和刪除軟件等操作。
網絡服務器的安全控制包括可以設置口令鎖定服務器控制台,以防止非法用戶修改、刪除重要信息或破壞數據;可以設定服務器登錄時間限制、非法訪問者檢測和關閉的時間間隔。
四、安全審計
日志是記錄的事件或統計數據,這些事件或統計數據能提供關於系統性能方面的信息。
審計是對日志記錄的分析,並以清晰的、能理解的方式表述系統信息。
審計使得系統分析員可以評審資源的使用模式,以便評價保護機制的有效性。
日志記錄的內容應該滿足以下原則:
◆日志應該記錄任何必要的事件,以檢測已知的攻擊模式;
◆日志應該記錄任何必要的事件,以檢測異常的攻擊模式;
◆日志應該記錄關於記錄系統連續可靠工作的信息。
每一條審計記錄至少應包含以下信息:
事件發生的日期、時間、事件類型、主題標識、執行結果(成功、失敗)、引起此事件的用戶的標識以及對每一個審計事件與該事件有關的審計信息。
審計是對訪問控制的必要補充,是訪問控制的一個重要內容。
審計會對用戶使用何種信息資源、使用的時間、以及如何使用(執行何種操作)進行記錄與監控。
審計的重要意義在於,比如客體的管理者即管理員有操作賦予權,他有可能濫用這一權利,這是無法在策略中加以約束的。必須對這些行為進行記錄,從而達到威懾和保證訪問控制正常實現的目的。
計算機安全審計(Audit)是指按照一定的安全策略,記錄歷史操作事件,並利用記錄進行分析,發現系統漏洞、入侵行為等,並改善系統性能和安全性的一系列過程。
安全審計可以分成被動式審計、主動式審計:
被動式審計就是簡單地記錄一些活動,並不做什么處理。
每一條審計記錄至少應包含以下信息:
主動式審計一般包括:結束一個登陸會話、拒絕一些主機的訪問(包括WEB站點,FTP服務器和電子郵件服務器)、跟蹤非法活動的源位置等行為。
安全審計的作用
(1)威懾和警告潛在的攻擊者和濫用授權的合法用戶。
(2)提供有價值的系統使用日志,幫助系統管理員及時發現系統入侵行為或潛在的系統漏洞。
(3)在發生故障后,可以幫助評估故障損失、重建事件和數據恢復。
(4)對系統控制、安全策略與規程中特定的改變做出評價和反饋,便於修訂決策和部署。