暢麗紅,裴煥斗,楊佩宗
1(中北大學 儀器與電子學院,太原 030051) 2(山西百信信息技術有限公司,太原 030006) E-mail:2538663822@qq.com
在信息技術高速發展的現代社會,網絡空間已然成為人們日常生活密不可分的重要部分和經濟社會正常運行的核心支撐,但信息安全隱患威脅著國計民生和社會穩定.長期以來,基于IP技術的防火墻、病毒查殺與入侵檢測等網絡安全技術已經很難應對當今層出不窮的攻擊手段.這些技術手段大多以防為主,只是讓系統處于被動防御的狀態,很難從根源與體系上解決計算機網絡的安全問題.
將可信計算機平臺從終端的可信繼續向網絡延伸,進一步建立可信網絡的主動防御已經成為當今重要的研究與發展方向[1].文獻[2]提出的基于可信的嵌入式終端依靠TCM芯片獲取自身身份及狀態信息,向可信網關進行平臺身份認證方法忽略了網絡訪問控制層存在的身份篡改問題;文獻[3]提出的基于IEEE 802.1x的TNC認證模型則只是在網絡訪問控制層加入可信防護手段,而忽略了嵌入式終端自身存在的問題,以及Linux系統存在的安全威脅.
本文針對以上兩種方法存在的問題提出了一種基于IEEE 802.1x協議的符合TNC要求的擴展協議,并在該協議的基礎上,設計了一套面向嵌入式系統的網絡認證模型,將傳統的網絡安全技術和可信計算技術相結合,發揮各自的優勢,實現從嵌入式的終端可信拓展到網絡的全部可信,實現對整個嵌入式網絡的雙重安全防護.
本文研究的身份認證模型適用于C/S架構網絡體系,其信息流程圖如圖1所示.當TNC客戶端有網絡訪問需求時,會向TNC認證服務器端提出連接請求,請求的報文中會包含客戶端的狀態信息,這些信息有一部分是由終端的PCR值表征的,TNC服務器會分析客戶端發來的數據,提取出當前客戶端的狀態,然后與服務器預期的數值進行比對,最后根據已下發的策略判斷客戶端是否能接入.
可信計算組織TCG(Trusted Computing Group)是由TC-PA(Trusted Computing Platform Alliance)在2001年發布了可信計算平臺標準規范后,于2003年改組為TCG.TCPA是由Intel和Microsoft等在1999年牽頭成立的組織,該組織主張從體系結構出發,增強系統穩定性與安全性.可信計算(Trusted Computing)本身是一種基于硬件加密技術的白名單認證方式,適用于各種硬件平臺.

圖1 認證模型信息流程圖Fig.1 Certification model information flow chart
TPM[4]是TCG推出的一款基于可信技術的SOC芯片,內部有RRNG以及各種國際通用加密引擎如AES、ECC、RSA等等,加密算法通用性強,有良好的可移植性.除數據加密以及數據散列運算等基本功能外,其最核心的作用在于對平臺進行完整性度量,如可信計算最廣泛的應用可信啟動就是在平臺完整性度量技術的基礎上實現的.
可信網絡連接(Trusted Network Connection,TNC)技術,由TCG負責網絡認證標準的研究開發;是可信賴的計算機制和網絡訪問控制機制的結合.在終端發起連接請求后,TNC服務器首先以口令認證的形式驗證使用者的身份,然后以證書認證的形式判斷平臺是否是預期的,最后對終端平臺的可信狀態進行度量,即讀取平臺相應PCR寄存器的值,若度量結果與預期值匹配,才允許終端接入網絡,否則拒絕其接入請求.
網絡訪問控制是一種以訪問權限控制為目標,基于預期行為規范的網絡接入與網絡資源訪問規則.訪問控制需要完成兩個任務:身份識別與權限分配,即在一定的系統環境下,對目標的行為合法性進行判斷.只有合規的用戶能訪問預期的網絡資源.
IEEE 802.1x協議是一種常用的局域網傳輸層協議,可以用來解決無線局域網內的用戶接入認證問題,本文的設計以802.1x為基礎并對其進行擴展,在報文中加入了嵌入式終端的完整性信息,且在過程中引入了終端的完整性認證.
TNC支持在不同網絡環境下收集和交換的數據的完整性,其完整性反映了網絡終端的安全狀態.TNC模型中有以下幾個主要角色,分別是:訪問請求者(AR)、策略決策點(PDP)、策略實現點(PEP)和元數據訪問(MAP). 若AR需要訪問主服務器,就必須先向策略服務器發出訪問請求;其次策略服務器驗證訪問者的帳戶,密碼和完整性;最后下發策略驗證判斷是否允許該終端接入網絡.

圖2 TNC體系架構圖Fig.2 TNC architecture diagram
TNC的體系結構如圖2所示,包括三個物理實體、三個網絡層次以及若干個模塊間的接口定義.三個實體分別為上面提到的AR、PEP和PDP.三個層次分別為度量層、評估層與接入層,其中度量層的物理實體對應于TPM本身,主要用于執行每個部分的完整性度量,并擴展和重置PCR; 評估層的相應物理實體是交換機和審計服務器,且制定的策略應兼容當前的通信協議,并對接入終端的完整性進行度量;對應于物理實體的接入層,用于接入終端設備和物理線路網絡.TNC還對層之間的交互執行了一系列規范,并可以通過TSPI接口函數直接調用相應的權限.
802.1x協議是一種傳統的局域網傳輸以及認證協議,雖然協議通過口令認證與證書認證的方式,實現了對端口開關訪問權限的控制,但在開放的網絡環境中存在局限性與不安全性,尤其是中間人攻擊的問題,很容易截獲認證信息并冒名訪問.
因此,提出一種兼容802.1x協議的TNC 認證模型,通過對終端進行用戶身份認證、平臺身份認證以及終端實時狀態的完整性認證,唯有終端在完全符合服務器的預期要求的情況下才能接入網絡,對于不合要求的終端,TNC服務僅接收EAPOL認證流數據包.

圖3 EAP-TNC結構圖Fig.3 EAP-TNC structure diagram
本設計中使用的EAP-TNC擴展結構如圖3所示,其中的數據包在傳統的802.1x基礎上,將其Data端數據進行擴展,加入Type 標識位與Type Data數據.Type data數據又分為1字節的Flag信息,其中包含TNC所規定的的預設數據與版本信息,后接終端完整性信息,最后是TNC待發送的數據.
終端發起接入請求時,在訪問過程中添加可信認證.即在常用的密碼認證用戶身份中,采用TPM來識別平臺和完整性證明[6].通過可信網絡連接標準中的EAP-TNC關聯擴展,實現可靠訪問終端認證,EAP-TNC的終端接入流程如圖4所示.
EAP-TNC認證的過程是分兩個步驟完成.步驟1主要完成雙向證書身份驗證和安全通道建設;步驟2主要完成完整性度量、完整性驗證及IP分配等工作.具體工作過程如下:
步驟1. 雙向證書身份驗證,建設安全通道.
AR首先發出EAPOL-Start請求幀認證啟動信息,PEP 接受其認證請求,返回確認信息,AR再次發送用戶名信息,PEP在數據庫中檢索用戶名,確認后再次發送反饋信息和公鑰,利用公鑰檢查AR,并用PEP加密傳輸證書,從而確認AR平臺的身份,然后進行密鑰協商,新生成一個臨時的傳輸密鑰,并將密鑰以AR的公鑰加密發送給AR,至此,臨時安全信道建立完成.

圖4 EAP-TNC的終端接入流程圖Fig.4 EAP-TNC terminal access flow chart
步驟2. 在臨時安全通道中發送終端的完整性驗證請求,終端將協議的PCR值信息發送到安全通道中的PDP,PDP通過解析并與策略進行匹配,通過后由DHCP服務器為AR分配IP地址,并通知 PDP 打開其邏輯端口,實現AR與主服務器通信,完成可信通道的建立[7].詳細步驟分為以下11步:
1)AR通過EAPOL-Start信息發送連接請求;
2)PEP請求AR通過EAP-Reques發送相應的應用程序用戶名;
3)AR接到請求并響應,通過響應幀信息發送給PEP;
4)PEP 將接收到的 EAPOL 消息段轉為EAP-RADIUS 消息;
5)PDP→AR:certAIK(PDP),{NPDP,NAR}SKPDP,完成用戶名的合法性校驗后,PDP將自己的公鑰證書及私鑰加密挑戰信息發送給AR;AR→PDP:{certAIK(NAR){NPDP′,NAR,Krand,NAR,PDP}SNAR}PUBK,AR驗證PDP的證書信息,確認服務器的身份,然后向PDP發出證書并用PDP的公鑰進行加密,并進行簽名;
6)PDP→AR:CR={MD5((pwd)Krand),PAES,EAPID}}PRIK,PDP 用其私鑰解密,產生P-AES密鑰,同時發出挑戰請求并用私鑰加密后一起發送給AR[8];
7)AR→PDP:CR={MD5(cr,pwd),EAPID+1}AES,AR將其 password 用 P-AES 加密并用 MD5 進行散列,回發給PDP同時響應PDP的挑戰請求;
8)PDP認證通過后,請求完成AR平臺的完整性度量,并用自己的私鑰進行簽名;
9)AR解密,將完整性度量信息發送給PDP;
10)PDP對平臺進行完整性校驗,與下發策略進行匹配,通過驗證后通知PEP打開相應的邏輯端口,將授權信息下發至AR.
11)PEP轉發信息給AR,告訴AR允許接入,調用DHCP分配AR的IP[9].
為了防止實際的嵌入式網絡通信系統受到非法設備的接入篡改、終端通信信息被竊取,本實驗中將設置兩個控制變量,分別是非法U盤的接入與嵌入式終端的配置修改,觀察兩個控制變量修改下的嵌入式設備請求接入時主控服務器的統計日志,以及終端的接入情況,證明本設計是否可以判斷接入終端的合法性.實驗環境配置如表1所示.
客戶端采用WPA_Supplicant進行網絡連接,Supplicant是802.1X/WPA的客戶端組件.實現在通信中的散列采用MD5算法,非對稱密鑰采用RSA算法,對稱密鑰采用AES算法.服務端采用FreeRADIUS和支持EAP-TNC的FreeRADIUS-EAP-TNC-Patch源代碼包.準備工作完成之后進入到/etc/raddb路徑下對表1中的文件進行配置,根據第三節分析的TNC協議要求修改FreeRADIUS的配置文件Radiusd.conf、EAP的配置文件EAP.conf以及終端的配置文件Clients.conf.交換機上創建vlan2與vlan3,vlan2設置為正常vlan,vlan3為異常vlan,使能AAA認證,采用RADIUS認證方式,優先級為1,RADIUS地址設置為TNC服務器地址.
實際測試結果如表2所示.測試結果記錄了4種TNC客戶端狀態下TNC服務器的反饋情況.
圖5是四種終端接入的服務端日志截圖,其中(a)、(b)、(c)、(d)分別對應了表2中序號為1、2、3、4的4種狀態與結果.

圖5 四種終端接入的服務端日志截圖Fig.5 four terminal access server-side log screenshots
論文完成了基于802.1x的嵌入式平臺身份驗證TNC認證方案的設計,并針對該方案設計了測試實驗,測試結果表明,該方案可以有效地完成對嵌入式平臺的身份認證與平臺狀態認證.TP1500采用我國自主研發龍芯3B1500處理器,國產中標麒麟操作系統,其本身已具備較高的安全可靠性,再對本文的研究成果加以利用,更加保障了嵌入式網絡信息的安全傳輸.在接下來的研究工作中,將嘗試使用TCM芯片代替TPM芯片,加密算法替換成國密算法,在完成設備身份驗證的基礎上實現整個網絡的自主可控.
[1] Zhang Huan-guo,Chen Lu,Zhang Li-qiang.Study on trusted network connection[J].Journal of Computers,2010,33(4):706-717.
[2] Ruida Information Security Industry Co.,Ltd.An embedded platform authentication trusted network connection method and system:China,CN201410210874.X [P].2014-9-10.
[3] Li Chun-ya.Research and implementation of trusted network con
nection authentication model based on 802.1X [D].Xi′an:Xi′an University of Electronic Science and Technology,2010.
[4] Trusted Computing Group.TPM main part 1 design principles specificationversion 1.2 Revision 116[EB/OL].http://www.trustedcomputinggroup.org,2013.
[5] MOON SangJae.Universally composable secure TNC model and EAP-TNC protocol in IF-T[J].Science China(Information Sciences),2010,53(3):465-482.
[6] Feng Deng-guo,Qin Yu.A certificate-based proof protocol based on TCM [J].Science in China:Information Science,2010,40(2):189-199.
[7] Luo An-an,Lin Chuang,Wang Yuan-zhuo,et al.Free quantitative analysis and protocol improvement of trusted network connection[J].Journal of Computers,2009,32(5):887-898.
[8] Zhang Qian-ying,Feng Deng-guo,Zhao Shi-jun.Design and formal analysis of TCM key migration protocol[J].Journal of Software,2015,26(9):2396-2417.
[9] Li Xiao-jiang,Mei Luan-fang,Shi Jun-fang,et al.Design of embedded trusted terminal system based on TCM[J].Computer Engineering and Design,2010,31(4):733-735+808.
附中文參考文獻:
[1] 張煥國,陳 璐,張立強.可信網絡連接研究[J].計算機學報,2010,33(4):706-717.
[2] 瑞達信息安全產業股份有限公司.一種嵌入式平臺身份驗證可信網絡連接方法和系統:中國,CN201410210874.X[P].2014-9-10.
[3] 李春雅.基于802.1X的可信網絡連接認證模型研究和實現[D].西安:西安電子科技大學,2010.
[6] 馮登國,秦 宇.一種基于TCM的屬性證明協議[J].中國科學:信息科學,2010,40(2):189-199.
[7] 羅安安,林 闖,王元卓,等.可信網絡連接的安全量化分析與協議改進[J].計算機學報,2009,32(5):887-898.
[8] 張倩穎,馮登國,趙世軍.TCM密鑰遷移協議設計及形式化分析[J].軟件學報,2015,26(9):2396-2417.
[9] 李小將,梅欒芳,師俊芳,等.基于TCM的嵌入式可信終端系統設計[J].計算機工程與設計,2010,31(4):733-735+808.