關(guān)于瑞術(shù)
黨建活動(dòng)
|
網(wǎng)絡(luò)可信身份認(rèn)證 二維碼
發(fā)表時(shí)間:2020-11-20 10:00 摘 要 身份認(rèn)證技術(shù)是依靠軟件進(jìn)行身份認(rèn)證,具有無(wú)法抵御旁路攻擊、容易被木馬/病毒攻擊、無(wú)權(quán)限的客戶端非法接入的問(wèn)題??删C合利用UEFI技術(shù)和可信計(jì)算技術(shù),在用戶客戶端進(jìn)入操作系統(tǒng)前,實(shí)現(xiàn)用戶客戶端可信身份認(rèn)證和安全接入控制,提高網(wǎng)絡(luò)的安全性。 關(guān)鍵詞:UEFI;可信計(jì)算;身份認(rèn)證;接入控制 0?引?言 1?傳統(tǒng)身份認(rèn)證技術(shù)的缺陷 2?UEFI與可信技術(shù)的結(jié)合應(yīng)用分析 3?系統(tǒng)組成 4?遠(yuǎn)程身份認(rèn)證流程 5?安全性分析 0 引?言 身份認(rèn)證技術(shù)作為信息安全防護(hù)的常用技術(shù)手段,已廣泛應(yīng)用于各類信息系統(tǒng),確保接入用戶的數(shù)字與物理身份相符合,防止非法接入。隨著新技術(shù)的發(fā)展,各種攻擊手段呈現(xiàn)多元化,對(duì)于身份認(rèn)證技術(shù)也帶來(lái)新的挑戰(zhàn)。 1 傳統(tǒng)身份認(rèn)證技術(shù)的缺陷 傳統(tǒng)身份認(rèn)證技術(shù)大多基于操作系統(tǒng)在軟件層面實(shí)現(xiàn),通過(guò)身份認(rèn)證軟件和數(shù)字證書(shū),實(shí)現(xiàn)用戶的身份認(rèn)證。由于其依賴操作系統(tǒng)的特點(diǎn),傳統(tǒng)身份認(rèn)證技術(shù)存在以下局限和缺點(diǎn): (1)傳統(tǒng)的身份認(rèn)證技術(shù)缺乏在用戶客戶端平臺(tái)硬件啟動(dòng)階段對(duì)客戶端進(jìn)行身份認(rèn)證,存在非授權(quán)客戶端平臺(tái)接入網(wǎng)絡(luò)的現(xiàn)象,為用戶網(wǎng)絡(luò)帶來(lái)潛在威脅。 (2)傳統(tǒng)的身份認(rèn)證技術(shù)依賴于操作系統(tǒng),采用數(shù)字證書(shū)的軟件認(rèn)證方式,容易受到病毒、木馬、身份仿冒等惡意攻擊,且存在被旁路繞過(guò)的風(fēng)險(xiǎn)。 針對(duì)上述問(wèn)題,將客戶端平臺(tái)身份認(rèn)證進(jìn)一步前置,在客戶端硬件平臺(tái)上電啟動(dòng)伊始,通過(guò)網(wǎng)絡(luò)對(duì)其進(jìn)行可信身份認(rèn)證,只有身份合法的用戶平臺(tái)可以接入網(wǎng)絡(luò),實(shí)現(xiàn)客戶端的安全準(zhǔn)入控制,從而提高網(wǎng)絡(luò)的安全性。 2 UEFI與可信技術(shù)的結(jié)合應(yīng)用分析 UEFI技術(shù)是一種基于標(biāo)準(zhǔn)接口的計(jì)算機(jī)固件技術(shù),具有跨平臺(tái)、功能擴(kuò)展方便的特點(diǎn)。同時(shí),UEFI BIOS內(nèi)置了完善的網(wǎng)絡(luò)協(xié)議棧,支持UDP、TCP、FTP等網(wǎng)絡(luò)協(xié)議,可以在啟動(dòng)階段提供完善的網(wǎng)絡(luò)應(yīng)用。除此之外,UEFI BIOS還支持啟動(dòng)階段從硬盤等存儲(chǔ)器件中獲取相關(guān)文件資源,這就為身份認(rèn)證在底層實(shí)現(xiàn)和在啟動(dòng)階段實(shí)現(xiàn)提供了基礎(chǔ)。同時(shí),利用可信計(jì)算的可信密碼模塊(Trusted Cryptography Module,TCM),能夠?yàn)槠脚_(tái)提供加密和認(rèn)證功能。 綜上所述,結(jié)合運(yùn)用UEFI技術(shù)和可信技術(shù),能夠在啟動(dòng)階段,利用UEFI BIOS和操作系統(tǒng)之間的隔離性,在系統(tǒng)啟動(dòng)操作系統(tǒng)前,與認(rèn)證服務(wù)器相互配合,實(shí)現(xiàn)設(shè)備的遠(yuǎn)程入網(wǎng)身份認(rèn)證,同時(shí)利用TCM的加密功能,確保認(rèn)證數(shù)據(jù)的傳輸安全。因此,研究基于UEFI的網(wǎng)絡(luò)可信身份認(rèn)證,能有效確保客戶端平臺(tái)的入網(wǎng)可控,同時(shí)擺脫認(rèn)證過(guò)程對(duì)操作系統(tǒng)的依賴,避免木馬、病毒等惡意軟件的攻擊。 3 系統(tǒng)組成 基于UEFI的遠(yuǎn)程可信身份認(rèn)證方案系統(tǒng)架構(gòu)如圖1所示。 圖1 基于UEFI的遠(yuǎn)程可信身份認(rèn)證方案系統(tǒng)架構(gòu) 系統(tǒng)由用戶客戶端平臺(tái)和服務(wù)器端平臺(tái)構(gòu)成。客戶端平臺(tái)在啟動(dòng)過(guò)程中,由UEFI固件收集平臺(tái)信息,通過(guò)TCM模塊,結(jié)合加密、認(rèn)證功能,請(qǐng)求進(jìn)行身份認(rèn)證。服務(wù)器端平臺(tái)對(duì)認(rèn)證數(shù)據(jù)進(jìn)行合法性判別,并將身份認(rèn)證結(jié)果反饋給客戶端,在啟動(dòng)階段完成遠(yuǎn)程身份認(rèn)證、入網(wǎng)控制。 客戶端平臺(tái)UEFI可信增強(qiáng)設(shè)計(jì)包括四個(gè)部分。 (1)認(rèn)證發(fā)起。 當(dāng)客戶端平臺(tái)開(kāi)機(jī)啟動(dòng)時(shí),UEFI主動(dòng)向認(rèn)證服務(wù)器發(fā)出請(qǐng)求,包含證書(shū)和認(rèn)證兩部分,將用戶身份、設(shè)備身份等認(rèn)證信息發(fā)送給認(rèn)證服務(wù)器進(jìn)行認(rèn)證。 (2)TCM調(diào)用。 調(diào)用TCM密碼模塊,進(jìn)行對(duì)稱密碼運(yùn)算和非對(duì)稱密碼運(yùn)算,實(shí)現(xiàn)簽名、驗(yàn)簽、數(shù)據(jù)加密等密碼功能。 (3)信息幀處理。 實(shí)現(xiàn)數(shù)字信封的封裝和解封裝。數(shù)字信封使用的數(shù)字簽名驗(yàn)簽算法由TCM模塊提供。 (4)證書(shū)管理。 對(duì)認(rèn)證服務(wù)器頒發(fā)的身份安全證書(shū)進(jìn)行加密存儲(chǔ)和本地管理,其中TCM模塊完成加密存儲(chǔ)。 服務(wù)器端平臺(tái)對(duì)客戶端平臺(tái)進(jìn)行遠(yuǎn)程注冊(cè)、認(rèn)證,為各客戶端平臺(tái)生成對(duì)應(yīng)的身份安全證書(shū)并頒發(fā)給對(duì)應(yīng)客戶端。服務(wù)器端平臺(tái)將針對(duì)身份認(rèn)證數(shù)據(jù)開(kāi)展合法性比對(duì),并對(duì)客戶端平臺(tái)進(jìn)行遠(yuǎn)程身份認(rèn)證。服務(wù)器端平臺(tái)包括五個(gè)部分。 (1)網(wǎng)絡(luò)通信協(xié)議棧。 通過(guò)網(wǎng)絡(luò)接收認(rèn)證請(qǐng)求,與客戶端平臺(tái)通信。 (2)信息幀處理。 實(shí)現(xiàn)數(shù)字信封的封裝和解封裝。數(shù)字信封使用的數(shù)字簽名驗(yàn)簽算法可以由軟件算法實(shí)現(xiàn)也可以由專門的密碼卡實(shí)現(xiàn)。 (3)身份安全證書(shū)生成。 對(duì)客戶端平臺(tái)進(jìn)行注冊(cè)審核,為通過(guò)審核的客戶端平臺(tái)生成安全的身份證書(shū),并對(duì)身份證書(shū)中的隨機(jī)數(shù)進(jìn)行更新,確保安全、可靠。同時(shí)實(shí)現(xiàn)身份證書(shū)的存儲(chǔ)與銷毀操作。 (4)身份認(rèn)證模塊。 對(duì)客戶端進(jìn)行身份認(rèn)證,將接收數(shù)字信封形式的身份認(rèn)證信息通過(guò)解封裝解密恢復(fù)出的原始數(shù)據(jù),并與存儲(chǔ)的客戶端身份認(rèn)證數(shù)據(jù)進(jìn)行比對(duì),完成用戶身份合法性校驗(yàn),將認(rèn)證結(jié)果回復(fù)給用戶。 (5)用戶數(shù)據(jù)管理。 對(duì)客戶端的信息進(jìn)行存儲(chǔ)和管理,支持增減、修改、查詢身份信息。 4 遠(yuǎn)程身份認(rèn)證流程 身份認(rèn)證流程包括了身份信息注冊(cè)和身份認(rèn)證兩個(gè)步驟。 在身份注冊(cè)步驟,客戶端平臺(tái)利用數(shù)字簽名保護(hù)身份信息,確保信息正確及完整??蛻舳说钠脚_(tái)身份密鑰(Platform identity key,PIK)由TCM模塊生成,其本質(zhì)是一個(gè)公鑰密鑰算法密鑰組合,客戶端的身份信息可通過(guò)PIK私鑰完成數(shù)字簽名,將簽名、身份信息發(fā)送給認(rèn)證服務(wù)器。認(rèn)證服務(wù)器存儲(chǔ)有客戶端平臺(tái)相應(yīng)的PIK證書(shū)(及用戶PIK公鑰),服務(wù)器端利用PIK公鑰驗(yàn)證客戶端發(fā)送的數(shù)字簽名信息,核準(zhǔn)平臺(tái)身份并頒發(fā)身份安全證書(shū)(安全證書(shū)中包含服務(wù)器公鑰信息)。 身份信息注冊(cè)階段流程如下: (1)客戶端平臺(tái)發(fā)送設(shè)備注冊(cè)信息,客戶端平臺(tái)對(duì)設(shè)備信息使用自身的PIK私鑰進(jìn)行數(shù)字簽名,通過(guò)網(wǎng)絡(luò)將數(shù)字簽名、設(shè)備信息的組合數(shù)據(jù)發(fā)送給認(rèn)證服務(wù)器。 (2)認(rèn)證服務(wù)器接收注冊(cè)信息后,將客戶端設(shè)備信息、數(shù)字簽名解析出來(lái)后,使用數(shù)據(jù)庫(kù)中匹配的客戶端設(shè)備PIK公鑰,完成數(shù)字簽名驗(yàn)簽,通過(guò)校驗(yàn)設(shè)備信息完成驗(yàn)證。若客戶端平臺(tái)合法,則通過(guò)驗(yàn)證,給出合法客戶的身份安全證書(shū),并將其數(shù)據(jù)信息存儲(chǔ)在數(shù)據(jù)庫(kù)中。 (3)認(rèn)證服務(wù)器頒發(fā)證書(shū),將身份安全證書(shū)通過(guò)客戶端平臺(tái)PIK公鑰進(jìn)行加密,發(fā)送給客戶端。 (4)客戶端平臺(tái)通過(guò)PIK私鑰對(duì)收到的身份安全證書(shū)進(jìn)行解密。通過(guò)身份安全證書(shū)中攜帶的認(rèn)證服務(wù)器公鑰,驗(yàn)證證書(shū)簽名合法性,并獲取證書(shū)中的隨機(jī)數(shù)。 身份信息注冊(cè)階段流程如圖2所示。 圖2 身份信息注冊(cè)階段流程 在身份認(rèn)證階段,由于客戶端平臺(tái)和認(rèn)證服務(wù)器相互獲取了對(duì)方的公鑰,在客戶端和服務(wù)器端利用數(shù)字信封的方式對(duì)傳輸?shù)男畔⑦M(jìn)行加密,提高認(rèn)證的安全性。身份認(rèn)證的流程如下: (1)客戶端平臺(tái)上電開(kāi)機(jī),可信UEFI固件程序啟動(dòng),在進(jìn)入操作系統(tǒng)之前,UEFI固件通過(guò)證書(shū)管理模塊對(duì)身份安全證書(shū)中的認(rèn)證隨機(jī)數(shù)和身份安全證書(shū)公鑰信息進(jìn)行查詢。 (2)客戶端平臺(tái)發(fā)送身份認(rèn)證請(qǐng)求給認(rèn)證服務(wù)器,通過(guò)身份安全證書(shū)公鑰以及隨機(jī)數(shù)加密得到密文信息,生成數(shù)字信封并發(fā)送至認(rèn)證服務(wù)器。 (3)認(rèn)證服務(wù)器端開(kāi)展身份認(rèn)證,并對(duì)身份安全證書(shū)進(jìn)行更新。首先,認(rèn)證服務(wù)器對(duì)客戶端平臺(tái)數(shù)字信封進(jìn)行解封裝,使用相應(yīng)客戶端的PIK公鑰來(lái)進(jìn)行簽名驗(yàn)證,然后使用身份安全證書(shū)私鑰進(jìn)行解密運(yùn)算,恢復(fù)數(shù)字信封中的認(rèn)證隨機(jī)數(shù)。比對(duì)解密得到的認(rèn)證隨機(jī)數(shù)和數(shù)據(jù)庫(kù)中存儲(chǔ)的隨機(jī)數(shù),判斷身份是否合法。如身份合法,認(rèn)證服務(wù)器對(duì)身份安全證書(shū)中的隨機(jī)數(shù)進(jìn)行更新,并記錄至數(shù)據(jù)庫(kù)中,供下一次身份驗(yàn)證使用;如果身份非法,則禁止客戶端平臺(tái)入網(wǎng),從而保護(hù)網(wǎng)絡(luò)安全。 (4)認(rèn)證服務(wù)器端對(duì)新證書(shū)中的認(rèn)證隨機(jī)進(jìn)行封裝,通過(guò)身份安全證書(shū)的私鑰進(jìn)行數(shù)字簽名,發(fā)送給客戶端平臺(tái)。 (5)客戶端平臺(tái)收到數(shù)字信封數(shù)據(jù),進(jìn)行解密,得到數(shù)字信封中更新的認(rèn)證隨機(jī)數(shù),供下一次認(rèn)證使用。 身份信息認(rèn)證流程如圖3所示。 圖3 身份信息認(rèn)證流程 5 安全性分析 基于UEFI的遠(yuǎn)程可信身份認(rèn)證能夠有效防護(hù)常見(jiàn)的惡意攻擊。 (1)針對(duì)重放攻擊,采用身份安全證書(shū)更新機(jī)制,每次認(rèn)證均會(huì)進(jìn)行更新,攻擊者無(wú)法利用以往的數(shù)據(jù)對(duì)認(rèn)證服務(wù)器進(jìn)行欺騙,可有效提高安全性。 (2)針對(duì)中間人攻擊,采用了TCM對(duì)認(rèn)證數(shù)據(jù)進(jìn)行加密,身份安全證書(shū)數(shù)據(jù)被中間人獲取,但證書(shū)數(shù)據(jù)無(wú)法被攻擊者破譯,認(rèn)證服務(wù)器不會(huì)被欺騙,可有效避免中間人攻擊。 (3)針對(duì)旁路攻擊,TCM對(duì)密碼運(yùn)算和身份認(rèn)證數(shù)據(jù)進(jìn)行加密存儲(chǔ),可有效抵御旁路攻擊。 6 結(jié)?語(yǔ) 基于UEFI固件的可信身份認(rèn)證,能在固件層實(shí)現(xiàn)載入操作系統(tǒng)前對(duì)接入終端平臺(tái)進(jìn)行身份認(rèn)證,通過(guò)UEFI BIOS與操作系統(tǒng)具有隔離性,確保身份認(rèn)證過(guò)程安全性,抵抗操作系統(tǒng)中的惡意代碼攻擊。同時(shí),利用TCM等技術(shù)提高安全性,保證認(rèn)證數(shù)據(jù)的安全性。 唐云澤,碩士,主要研究方向?yàn)樾畔踩?/span> 范毅凱,本科,主要研究方向?yàn)樾畔踩?/span> |