本發(fā)明涉及計算機(jī)系統(tǒng)安全領(lǐng)域,更具體地說,涉及一種本地安全更新bios鏡像的方法及裝置。
背景技術(shù):
隨著信息系統(tǒng)的發(fā)展,傳統(tǒng)信息安全機(jī)制大多建立在操作系統(tǒng)軟件層之上的這種情況已不再能夠滿足其發(fā)展的需求,這就需要計算機(jī)系統(tǒng)安全進(jìn)一步延伸到固件層甚至硬件層。
基本輸入輸出系統(tǒng)bios(basicinputoutputsystem)是一組固化到計算機(jī)內(nèi)主板上的一個只讀存儲器rom芯片上的程序,是計算機(jī)系統(tǒng)中基礎(chǔ)的底層軟件,保存著計算機(jī)最重要的基本輸入輸出的程序、開機(jī)后自檢程序和系統(tǒng)自啟動程序,是實現(xiàn)自主、可信、可控的信息安全的關(guān)鍵一環(huán)。因為bios的這些性質(zhì),使它成為計算機(jī)領(lǐng)域中的一個重要參數(shù),它的安全性高低直接影響著整個計算機(jī)系統(tǒng)的安全性。
近年來,bios系統(tǒng)已經(jīng)成為第三方惡意者攻擊的目標(biāo)。bios系統(tǒng)可以通過對應(yīng)bios鏡像文件的更新實現(xiàn)系統(tǒng)自身的更新升級等。但是在更新bios鏡像文件的過程中,惡意者會向用于實現(xiàn)更新的bios鏡像文件中植入惡意代碼、病毒、木馬等,這就容易使利用植入惡意代碼等的bios鏡像文件進(jìn)行更新時對應(yīng)的bios系統(tǒng)遭受到攻擊,安全性得不到保證,甚至可能會造成計算機(jī)系統(tǒng)的徹底崩潰或者會導(dǎo)致計算機(jī)系統(tǒng)被惡意者從計算機(jī)底層進(jìn)行控制,嚴(yán)重影響計算機(jī)系統(tǒng)的正常使用。
因此,如何實現(xiàn)對bios鏡像文件的安全更新,以保證對應(yīng)bios系統(tǒng)的安全性,是本領(lǐng)域技術(shù)人員目前需要解決的技術(shù)問題。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明的目的是提供一種本地安全更新bios鏡像的方法及裝置,實現(xiàn)對bios鏡像文件的安全更新,以保證對應(yīng)bios系統(tǒng)的安全性。
為了實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
一種本地安全更新bios鏡像的方法,包括:
接收用于更新的bios鏡像文件;
對所述用于更新的bios鏡像文件進(jìn)行合法性驗證,若驗證通過,則利用所述用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,則拒絕利用所述用于更新的bios鏡像文件更新對應(yīng)的所述待更新的bios鏡像文件。
優(yōu)選的,對所述用于更新的bios鏡像文件進(jìn)行合法性驗證,包括:
接收與所述用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,并利用所述數(shù)字簽名對所述用于更新的bios鏡像文件進(jìn)行合法性驗證。
優(yōu)選的,所述接收與所述用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,包括:
接收與所述用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,所述數(shù)字簽名包括與所述用于更新的bios鏡像文件對應(yīng)的驗證密文,所述驗證密文為利用哈希算法計算得到未進(jìn)行傳輸前的所述用于更新的bios鏡像文件的驗證摘要并利用預(yù)先生成的私鑰對所述驗證摘要加密得到的;
所述利用所述數(shù)字簽名對所述用于更新的bios鏡像文件進(jìn)行合法性驗證,包括:
利用與所述私鑰對應(yīng)的公鑰對所述驗證密文進(jìn)行解密,得到驗證摘要;
利用哈希算法對所述用于更新的bios鏡像文件進(jìn)行計算,得到待驗證摘要;
將所述待驗證摘要與所述驗證摘要進(jìn)行比對,如果所述待驗證摘要與所述驗證摘要一致,則驗證通過,否則,則驗證未通過。
優(yōu)選的,在確定對所述用于更新的bios鏡像文件進(jìn)行合法性驗證未通過之后,還包括:
發(fā)出所述用于更新的bios鏡像文件驗證未通過的提示警報。
優(yōu)選的,利用所述用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件之后,還包括:
將所述用于更新的bios鏡像文件所對應(yīng)的bios系統(tǒng)鎖定到主板芯片組上。
一種本地安全更新bios鏡像的裝置,包括:
接收模塊,用于:接收用于更新的bios鏡像文件;
驗證模塊,用于:對所述接收模塊中的所述用于更新的bios鏡像文件進(jìn)行合法性驗證,若驗證通過,則利用所述用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,則拒絕利用所述用于更新的bios鏡像文件更新對應(yīng)的所述待更新的bios鏡像文件。
優(yōu)選的,所述驗證模塊包括:
驗證單元,用于:接收與所述用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,并利用所述數(shù)字簽名對所述用于更新的bios鏡像文件進(jìn)行合法性驗證。
優(yōu)選的,所述驗證單元包括:
接收子單元,用于:接收與所述用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,所述數(shù)字簽名包括與所述用于更新的bios鏡像文件對應(yīng)的驗證密文,所述驗證密文為利用哈希算法計算得到未進(jìn)行傳輸前的所述用于更新的bios鏡像文件的驗證摘要并利用預(yù)先生成的私鑰對所述驗證摘要加密得到的;
驗證子單元,用于:利用與所述私鑰對應(yīng)的公鑰對所述驗證密文進(jìn)行解密,得到驗證摘要;利用哈希算法對所述用于更新的bios鏡像文件進(jìn)行計算,得到待驗證摘要;將所述待驗證摘要與所述驗證摘要進(jìn)行比對,如果所述待驗證摘要與所述驗證摘要一致,則驗證通過,否則,則驗證未通過。
優(yōu)選的,還包括:
提示模塊,用于:在確定對所述用于更新的bios鏡像文件進(jìn)行合法性驗證未通過之后,發(fā)出所述用于更新的bios鏡像文件驗證未通過的提示警報。
優(yōu)選的,還包括:
鎖定模塊,用于:利用所述用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件之后,將所述用于更新的bios鏡像文件所對應(yīng)的bios系統(tǒng)鎖定到主板芯片組上。
本發(fā)明提供了一種本地安全更新bios鏡像的方法及裝置,該方法包括:接收用于更新的bios鏡像文件;對所述用于更新的bios鏡像文件進(jìn)行合法性驗證,如果驗證通過,則利用所述用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,則拒絕利用所述用于更新的bios鏡像文件更新對應(yīng)的所述待更新的bios鏡像文件。本申請公開的上述技術(shù)方案中,由于需要對用于更新的bios鏡像文件進(jìn)行合法性驗證,驗證通過,則表明用于更新的bios鏡像文件是安全和合法的,然后利用這個用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件。如果驗證不通過,則表明用于更新的bios鏡像文件遭受到了攻擊,是不合法的,此時則拒絕利用這個用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件。這樣就可以保證在更新待更新的bios鏡像文件時,對應(yīng)的用于更新的bios鏡像文件是安全的,從而實現(xiàn)對待更新的bios鏡像文件的安全更新,這樣就可以保證對應(yīng)的bios系統(tǒng)的安全性。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來說,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本發(fā)明實施例所提供的一種本地安全更新bios鏡像的方法的流程圖;
圖2為本發(fā)明實施例所提供的一種本地安全更新bios鏡像的裝置的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
請參考圖1,圖1示出了本發(fā)明實施例所提供的一種本地安全更新bios鏡像的方法的流程圖,可以包括:
s11:接收用于更新的bios鏡像文件。
需要說明的是,本發(fā)明實施例所提供的上述技術(shù)方案的執(zhí)行主體可以為用戶終端,如計算機(jī)等,對應(yīng)的本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置可以設(shè)置于該用戶終端中,因此本發(fā)明實施例提供的一種本地安全更新bios鏡像的方法的執(zhí)行主體也可以為對應(yīng)的裝置,本申請實施例中以執(zhí)行主體為用戶終端進(jìn)行說明;用戶終端接收用于更新的bios鏡像文件,并且基于用于更新的bios鏡像文件觸發(fā)biossetup中相應(yīng)的bios系統(tǒng)的更新。
s12:對用于更新的bios鏡像文件進(jìn)行合法性驗證,若驗證通過,則利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,則拒絕利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件。
在biossetup中利用用于更新的bios鏡像文件更新待更新的bios鏡像文件,也即實現(xiàn)對相應(yīng)的bios系統(tǒng)的更新之前,需要對接收到的用于更新的bios鏡像文件進(jìn)行合法性驗證。用于實現(xiàn)上述合法性驗證的驗證機(jī)制可以使用driverprotocol的方式在bios系統(tǒng)啟動過程中的dxe階段實現(xiàn)安裝,然后在biossetup中觸發(fā)就可以直接調(diào)用該驗證機(jī)制實現(xiàn)對接收到的用于更新的bios鏡像文件的驗證。如果驗證通過,表明接收到的用于更新的bios鏡像文件是安全的、合法的,這時則利用接收到的用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件,具體可以包括:將接收到的用于更新的bios鏡像文件寫入flash中代替flash中已經(jīng)存儲的對應(yīng)的待更新的bios鏡像文件,實現(xiàn)對對應(yīng)的待更新的bios鏡像文件的更新,然后可以重啟計算機(jī)完成對應(yīng)的bios系統(tǒng)的更新;如果驗證不通過,則表明接收到的用于更新的bios鏡像文件是非法的、不安全的,此時則拒絕利用接收到的用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件,并且退回到更新前的原bios的setup界面中。
本申請公開的技術(shù)方案中,接收用于更新的bios鏡像文件,對該bios鏡像文件進(jìn)行合法性驗證。若驗證通過,表明此時接收到的用于更新的bios鏡像文件是安全合法的,再用此bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,表明此時接收到的用于更新的bios鏡像文件是非法的、遭到攻擊的、不完整的,則拒絕利用此bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件。這樣就可以保證在更新待更新的bios鏡像文件的時候,相對應(yīng)的用于更新的bios鏡像文件是安全合法的,因此,可以實現(xiàn)對bios鏡像文件的安全更新,以保證對應(yīng)的bios系統(tǒng)的安全性。
本發(fā)明實施例提供的一種本地安全bios鏡像的方法,對用于更新的bios鏡像文件進(jìn)行合法性驗證,可以包括:
接收與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,并利用數(shù)字簽名對用于更新的bios鏡像文件進(jìn)行合法性驗證。
用于更新的bios鏡像文件的發(fā)送端可以將用于更新的bios鏡像文件和基于此bios鏡像文件生成的數(shù)字簽名打包在一起形成升級文件,然后發(fā)送給用戶終端,以便用戶終端進(jìn)行相應(yīng)的bios鏡像文件的更新。用戶終端在接收到用于更新的bios鏡像文件的同時也接收到此bios鏡像文件所對應(yīng)的數(shù)字簽名,然后用戶終端可以利用此數(shù)字簽名對接收到的用于更新的bios鏡像文件進(jìn)行合法性驗證。利用數(shù)字簽名的方式進(jìn)行合法性驗證有利于提高驗證的準(zhǔn)確性,并且驗證的過程簡單有效,有利于提高驗證的效率。本發(fā)明實施例提供的一種本地安全bios鏡像的方法,接收與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,可以包括:
接收與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,數(shù)字簽名可以包括與用于更新的bios鏡像文件對應(yīng)的驗證密文,驗證密文為利用哈希算法計算得到未進(jìn)行傳輸前的用于更新的bios鏡像文件的驗證摘要并利用預(yù)先生成的私鑰對驗證摘要加密得到的;
利用數(shù)字簽名對用于更新的bios鏡像文件進(jìn)行合法性驗證,可以包括:
利用與私鑰對應(yīng)的公鑰對驗證密文進(jìn)行解密,得到驗證摘要;
利用哈希算法對用于更新的bios鏡像文件進(jìn)行計算,得到待驗證摘要;
將待驗證摘要與驗證摘要進(jìn)行比對,如果待驗證摘要與驗證摘要一致,則驗證通過,否則,則驗證未通過。
用戶終端接收到與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,發(fā)送端對數(shù)字簽名的獲得過程可以為:利用sm3哈希算法對未進(jìn)行傳輸前的用于更新的bios鏡像文件進(jìn)行計算生成驗證摘要hash_sm3;利用sm2加密算法預(yù)先生成的私鑰對驗證摘要進(jìn)行加密,生成與用于更新的bios鏡像文件對應(yīng)的驗證密文enc_sm2(hash_sm3);生成驗證密文之后,將用于更新的bios鏡像文件和生成的對應(yīng)的驗證密文打包在一起,形成升級文件,發(fā)送給用戶終端。需要說明的是,用戶終端接收到的用于更新的bios鏡像文件可能是合法的也可能是已經(jīng)遭到惡意者攻擊的,因此,需要對其進(jìn)行合法性驗證。用戶終端在接收到升級文件之后,進(jìn)行合法性驗證的時候可以先將用于更新的bios鏡像文件和對應(yīng)的驗證密文分開,然后可以執(zhí)行以下步驟:利用sm2加密算法中與私鑰對應(yīng)的公鑰對驗證密文enc_sm2(hash_sm3)解密,得到驗證摘要hash_sm3;利用sm3哈希算法對接收到的用于更新的bios鏡像文件進(jìn)行計算,得到待驗證摘要hash_sm3_user,將待驗證摘要hash_sm3_user和驗證摘要hash_sm3進(jìn)行比對,若待驗證摘要和驗證摘要一致,表明此時的用于更新的bios鏡像文件是安全合法的、未被篡改,則驗證通過,否則,表明此時的用于更新的bios鏡像文件是非法的、被篡改過的,則驗證未通過。利用這種方式進(jìn)行合法性驗證,可以提高驗證的準(zhǔn)確性和有效性。
本發(fā)明實施例提供的一種本地安全bios鏡像的方法,在確定對用于更新的bios鏡像文件進(jìn)行合法性驗證未通過之后,還可以包括:
發(fā)出用于更新的bios鏡像文件驗證未通過的提示警報。
當(dāng)確定用于更新的bios鏡像文件未通過合法性驗證之后,用戶終端可以發(fā)出用于更新的bios鏡像文件未通過驗證的提示警報,以便用戶終端對應(yīng)的用戶可以很快得知該消息并對接收到的不合法的bios鏡像文件進(jìn)行處理。當(dāng)然提示警報的具體方式可以有很多種,如直接在用戶終端進(jìn)行顯示等,這些提示警報的具體方式均在本發(fā)明的保護(hù)范圍之內(nèi)。
本發(fā)明實施例提供的一種本地安全bios鏡像的方法,利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件之后,還可以包括:
將用于更新的bios鏡像文件所對應(yīng)的bios系統(tǒng)鎖定到主板芯片組上。
當(dāng)用于更新的bios鏡像文件通過合法性驗證,利用用于更新的bios鏡像文件更新待更新的bios鏡像文件之后,可以得到已經(jīng)更新的bios系統(tǒng);可以在bios系統(tǒng)所在計算機(jī)的操作系統(tǒng)被加載前(如即將被加載前的時間點)將已經(jīng)更新的bios系統(tǒng)鎖定到預(yù)先設(shè)定的主板芯片組上,以避免在對應(yīng)的bios系統(tǒng)更新之后,其他軟件對bios系統(tǒng)進(jìn)行修改或更新,進(jìn)一步保證了bios系統(tǒng)的安全性。
本發(fā)明實施例還提供了一種本地安全更新bios鏡像的裝置,如圖2所示,可以包括:
接收模塊11,用于:接收用于更新的bios鏡像文件;
驗證模塊12,用于:對接收模塊中的用于更新的bios鏡像文件進(jìn)行合法性驗證,若驗證通過,則利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件;若驗證不通過,則拒絕利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件。
本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置,驗證模塊可以包括:
驗證單元,用于:接收與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,并利用數(shù)字簽名對用于更新的bios鏡像文件進(jìn)行合法性驗證。
本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置,驗證單元可以包括:
接收子單元,用于:接收與用于更新的bios鏡像文件對應(yīng)的數(shù)字簽名,數(shù)字簽名可以包括與用于更新的bios鏡像文件對應(yīng)的驗證密文,驗證密文為利用哈希算法計算得到的未進(jìn)行傳輸前的用于更新的bios鏡像文件的驗證摘要并利用預(yù)先生成的私鑰對所述驗證摘要加密得到的;
驗證子單元,用于:利用與私鑰對應(yīng)的公鑰對驗證密文進(jìn)行解密,得到驗證摘要;利用哈希算法對用于更新的bios鏡像文件進(jìn)行計算,得到待驗證摘要;將待驗證摘要與驗證摘要進(jìn)行對,如果待驗證摘要與驗證摘要一致,則驗證通過,否則,則驗證未通過。
本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置,還可以包括:
提示模塊,用于:在確定對用于更新的bios鏡像文件進(jìn)行合法性驗證未通過之后,發(fā)出用于更新的bios鏡像文件驗證未通過的提示警報。
本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置,還可以包括:
鎖定模塊,用于:利用用于更新的bios鏡像文件更新對應(yīng)的待更新的bios鏡像文件之后,將用于更新的bios鏡像文件所對應(yīng)的bios系統(tǒng)鎖定到主板芯片組上。
本發(fā)明實施例提供的一種本地安全更新bios鏡像的裝置中相關(guān)部分的說明請參見本發(fā)明實施例提供的一種本地安全更新bios鏡像的方法中對應(yīng)部分的詳細(xì)說明,在此不再贅述。另外本發(fā)明實施例提供的上述技術(shù)方案中與現(xiàn)有技術(shù)中對應(yīng)技術(shù)方案實現(xiàn)原理的部分并未詳細(xì)說明,以免過多贅述。
對所公開的實施例的上述說明,使本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文公開的原理和新穎特點相一致的最寬的范圍。