艾 俊, 吳秋新
(北京信息科技大學 計算機學院,北京 100192)
自ARPA 網問世以來, 計算機網絡在技術上、規模上和應用領域上得到了飛速發展。互聯網的應用大大地改善了人們的工作和生活方式,但網絡用戶也不得不面臨大量的網絡安全問題,如惡意攻擊、計算機病毒、垃圾郵件和不健康信息等。互聯網的安全性受到了越來越多的關注,如何構建一個安全可信可控的互聯網絡成為人們關注和研究的焦點。這里提出了一種基于中國自主知識產權的TCM芯片的可信網絡接入認證模型,試圖控制作為網絡中不安全因素的源頭的終端的接入,從而實現網絡的可信可控。
目前業界對可信網絡有不同的理解, 有的認為是基于認證的可信、有的認為是基于現有安全技術的整合、有的認為是網絡的內容可信、有的認為是網絡本身的可信、有的認為是網絡上提供服務的可信等, 然而對可信網絡的目的都有統一的認識:提高網絡和服務的安全性, 使整個人類在信息社會中受益。可信網絡可以提高網絡的性能, 簡化因不信任帶來的監控、防范等系統的開銷, 提高系統的整體性能[1]。同時, 動態行為的信任可以提供比身份信任更細粒度的安全保障。因此認為一個可信的網絡應該是網絡和用戶的行為及其結果總是可預期與可管理的, 能夠做到行為狀態可監測、行為結果可評估、異常行為可管理[2]。
TNC是TCG的TNC工作組制定的標準,是一套開放的標準網絡接入控制架構[3]。TNC架構包括了開放的終端完整性架構和一套確保安全互操作的標準。它的體系結構如圖1所示。

圖1 TNC架構
TNC架構在縱向分為三個層次,從下到上為:網絡訪問層,用于支持傳統的網絡連接技術; 完整性評價層,負責評估所有請求訪問網絡的實體的完整性; 完整性度量層,收集和校驗訪問請求者的完整性相關信息的組件[4]。
TNC架構圖中的三列代表TNC結構中的三個實體:訪問請求者、策略實施點和策略決定點[5]。
在每個實體中又有若干個組件。需要指出的是,TNC結構并沒有排斥其他網絡訪問控制或安全技術所使用的組件。在系統中實現訪問控制的組件并不僅是TNC結構中所定義的組件。
訪問請求者實體中的組件有:①發起網絡請求NAR;②TNC客戶TNCC;③完整性測量收集器(IMC)[6]。
策略實施點包含如下的組件:策略實施點(PEP)[7],通常為網關或防火墻。
策略決定點實體的組件有: ①網絡訪問授權(NAA);②TNC 服務器(TNCS);③完整性測量鑒別器(IMV)。
可信網絡連接的建立過程如下:
在建立網絡連接之前。TNC 客戶端需要準備好所需要的完整性信息,交給IMC。在一個擁有TPM的終端里面,也就是將網絡策略所需信息經散列后存入PCRs ,TPM 服務端需要預先制定完整性的要求,并交給IMV[8]。
① 向PEP發起訪問請求,這個策略執行者通常是一個網絡接入網關;
② PEP將訪問請求描述發往網絡訪問授權者;
③ 假設授權被允許了,網絡訪問授權者將請求發往TNC服務端;
④ TNC服務端開始對客戶端的授權驗證;
⑤ TNC客戶端告訴IMC開始了一個新的網絡連接,這個網絡連接需要一個完整性握手協議。IMC返回所需信息。TNC服務端將這些信息交給IMV;
⑥ 在這個過程里面, TNC客戶端和TNC服務端需要交換一次或多次數據,直到TNC服務器端滿意為止;
⑦ 當TNC服務器完成了對客戶端的完整性握手,它將發送一個推薦信給NAA,要求允許訪問。這里需要特別注意,如果還有另外的安全考慮,此時NAA 仍舊可以不允許網絡訪問者的訪問;
⑧ NAA傳遞訪問決定給PEP ,PEP將最終執行這個決定,來控制NA的訪問。
終端平臺中已嵌入TCM 芯片,所謂TCM芯片是以中國自主研發的密碼算法和引擎為基礎,使用SoC技術和工藝,構建在主板上的一個安全芯片[9]。同時實現了支持其上層應用的TSM組件。安全芯片能夠安全存儲終端的完整性測量值,在認證過程中,以加密方式將完整性測量值傳送到內網認證服務器。
提出的認證模型中有三個實體:訪問請求者、決策執行者、可信決策者。如圖2所示。

圖2 基于TCM芯片的可信網絡接入認證模型
上圖中模型的設計以TNC架構的三層模型為指導,縱向上分為四層,分別為:網絡訪問層、完整性評價層、完整性度量層、系統恢復層。
各層的主要功能描述如下:
① 網絡訪問層主要實現接入主機與服務器的之間的數據交換,建立兩者之間的數據通道,為上層提供發送與接收數據的接口;
② 完整性評價層不僅作為完整性度量層與網絡訪問層之間的中介,還是決定和實現訪問授權的重要功能單元,服務器端的接入決策器根據度量層返回的結果決定對接入主機的訪問授權,然后將訪問決策傳送給接入主機上的接入控制器,接入主機上的接入控制器根據服務器作出的訪問決策實現接入控制;
③ 完整性度量層是完整性評價層和系統恢復層的中介,主要完成完整性信息收集和度量的功能;
④ 系統恢復層通過還原卡或類似Ghost的軟件實現方法實現系統恢復到上次可信狀態。
步驟1 開始網絡連接,TNC 客戶端需要準備好所需要的完整性信息,交給IMC;
步驟2 客戶端的網絡訪問點模塊檢查TCM芯片中的上次可信度量信息,若信息表明客戶端處于一個不可信的狀態,則網絡訪問點禁止網絡連接請求,客戶端將通過系統恢復層恢復到上次可信狀態。否則開始進行接入認證;服務器的網絡授權點模塊同樣在啟動時檢測服務器主機的運行狀態,以決定服務器主機的網絡連接狀態;
步驟3 客戶端上的網絡訪問點向策略實施點發起網絡訪問請求,這個策略實施點通常是一個網絡接入網關;
步驟4 接收到連接請求后,策略實施點將訪問請求描述發往網絡訪問授權者;
步驟5 假設授權被允許了, 網絡訪問授權者通知上層的TNC服務端有網絡接入請求到來。
服務器端的網絡授權點要求客戶端進行身份認證和完整性校驗,并通知上層的決策器有網絡接入請求到來;
步驟6 TNC服務端開始對客戶端的授權驗證;
步驟7 TNC客戶端告訴完整性收集者開始了一個新的網絡連接,需要進行身份認證和完整性校驗,并通過PTS服務接口獲取TCM芯片的平臺證書和PIK證書作為客戶端的身份信息。完整性收集者返回所需信息。這個網絡連接需要一個完整性握手協議。TNC服務端將這些信息交給完整性驗證者;
步驟8 策略實施點把獲得的身份認證和完整性信息通過服務器的公鑰加密,發送給決策器,進行認證授權。在這個過程里面, TNC客戶端和TNC服務端需要交換一次或多次數據,直到TNC 服務器端滿意為止;
步驟9 服務器端的狀態度量器,根據決策器接收到的客戶端身份認證和完整性信息進行狀態度量,決定是否授權網絡訪問,并將客戶端的身份信息作為注冊信息保存在本地列表中;
步驟10 服務器端的接入決策器將接入決策發送給客戶機的接入控制器;
步驟11 接入控制器根據接收到的接入決策對網絡請求發起者做出允許接入網絡、允許接入受限子網或拒絕接入決定。如:客戶端平臺由于種種原因(如長時間停機,斷網等),殺毒軟件病毒特征庫沒有及時更新,一些系統漏洞也沒有打上補丁。這樣在完整性驗證的時候,服務端根據完整性信息判斷出這個平臺漏洞補丁狀態,病毒特征庫版本非最新狀態,服務端這時將做出接入受限子網的決定,客戶端可以進行平臺更新。或客戶端平臺由于病毒或木馬的入侵,系統一些關鍵部位受到損壞(硬件的非法改動),服務端可以根據完整性信息判斷出平臺的受損情況,服務端做出的評估將是拒絕接入,客戶端可以通過系統恢復層恢復到上次可信狀態。
3.4.1 完整性度量過程
可信網絡連接的可信建立在完整性度量值的匹配基礎上,可信網絡連接度量的主要步驟和參與實體:
(1)參考度量生成
合法源(例如生產商)創建組件的完整性度量參考值,這個參考度量值來自生產廠家或可信第三方,是最原始的度量值,代表了未被修改的系統組件最初的狀態。這些度量值通過下一步的收集之后由參考度量值列表(RIMM)數據庫發布,為策略庫提供靜態參考度量值,在以后的TNC 服務器端對請求訪問方進行驗證時提供服務。
(2)運行狀態度量
在系統運行中,若一方請求接入網絡獲得服務,帶有TCM和相應存儲設備的請求方對其平臺組件(硬件、固件、軟件和應用程序設置)進行完整性度量,這個度量值反映了請求訪問網絡方當前的狀態信息。
通過PTS 服務由IMC 對運行度量值進行收集,并在同策略決策方IMV的通信中向其進行報告,IMV在確認請求方身份(這個過程是通過不可遷移密鑰實現的)后對接收的度量值根據策略進行分析,然后作出決策決定是否接受請求方訪問網絡的請求。并將該決定交由策略執行點進行執行。
3.4.2 信任鏈的傳遞
可信度量依據的是信任鏈傳遞的思想,可信鏈傳遞是從系統啟動開始,從TCM可信信任根出發,如果每次系統的控制權轉移,信任都能夠被傳遞下來,則認為整個系統可信,在終端專用硬件可信的基礎上進行信任鏈傳遞,達到網絡連接的可信[9]。
信任鏈傳遞示意如圖3所示。

圖3 信任鏈傳遞
以安全BIOS 和TCM 安全芯片作為可度量的核心信任源(CRTM),為最初的信任根,然后構建一條信任鏈,即從信任根開始到硬件平臺、到操作系統、再到應用,一級度量認證一級,一級信任一 級[10]。從而把這種信任擴展到整個計算機系統。然后通過對網絡驅動進行度量,通過后將平臺的控制權交給驅動,然后由驅動對平臺信任服務(PTS)進行度量,通過后控制權轉移到PTS 服務,然后由PTS 服務對網絡連接進行度量操作,系統的信任就這樣傳遞下來,從而達到網絡連接的可信。
基于TCM標準的可信計算平臺,借鑒TCG的TNC規范,提出了一種可信網絡接入認證模型,該模型采用先評估再接入認證的方法,即客戶端首先對自己進行評估,只有在認為自己可信的情形下才向策略決定點申請接入請求,這樣做到有問題早發現,提高了整個模型的執行效率。并詳細闡述了整個接入認證的詳細步驟及消息流程。此模型在TNC三層模型上增加了一層系統恢復層,服務端不再簡單的將客戶端踢出網絡,而是做出一個柔性的策略,允許客戶端進入受限網絡進行更新或客戶端通過系統恢復層修復系統,給用戶一種可接受的處理模式,主動升級和被動恢復是可信網絡的需要,也是每個可信計算平臺的需要,主被動相結合進一步增強了網絡的健壯性。最后闡述了實現該模型使用的關鍵技術可信度量和信任鏈傳遞。該模型的正確實現需要安全增強操作系統以及相應的服務處理組件等技術的支持。
[1] 林闖,彭雪海.可信網絡研究[J].計算機學報,2005,28(05):751-758.
[2] 張新剛,劉妍.可信計算與可信網絡[J].信息安全與通信保密,2006(11):85-87.
[3] Trusted Computing Group. TCG Trusted Network Connect TNC Architecture for Interoperability. Specification v1.1 rev2[EB/OL].(2006-05-01).[2009-10-28].http://www.trustedco mputinggroup.org.
[4] Trusted Computing Group. TNC IF-TNCCS Specification v1.0[EB/OL].(2006-05-01).[2009-10-28].http://www.trustedcomput inggroup.org May 2006.
[5] Trusted Computing Group. TNC IF-T Specification v1.0[EB/OL] .(2006-05-01).[2009-10-28].http://www.trustedcomputinggroup org May 2006.
[6] Trusted Computing Group. TNC IF-IMC Specification v1.1 [EB/OL].(2006-05-01).[2009-10-28].http://www.trustedcomputinggroup org May 2006.
[7] Trusted Computing Group. TNC IF-PEP Specification v1.0[EB/OL] .(2006-05-01).[2009-10-28].http://www.trustedcomputinggroup org May 2006.
[8] Trusted Computing Group. TNC IF-IMV Specification v1.1 [EB/OL].(2006-05-01).[2009-10-28].http://www.trustedcomputinggroup org May 2006.
[9] 國家密碼管理局.可信計算密碼支撐平臺功能與接口規范[EB/OL].(2007-12-11)[2009-08-21].http://www.tjgmj.gov.cn/uploadfil e/2009 1228/20091228222134200.pdf.
[10] 朱慧君,李子臣.可信密碼支撐平臺的功能及原理[J].通信技術,2009,42(06):115-117.