TWI390425B - 用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法 - Google Patents

用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法 Download PDF

Info

Publication number
TWI390425B
TWI390425B TW097113121A TW97113121A TWI390425B TW I390425 B TWI390425 B TW I390425B TW 097113121 A TW097113121 A TW 097113121A TW 97113121 A TW97113121 A TW 97113121A TW I390425 B TWI390425 B TW I390425B
Authority
TW
Taiwan
Prior art keywords
security
verify
boot
program instructions
memory
Prior art date
Application number
TW097113121A
Other languages
English (en)
Other versions
TW200907740A (en
Inventor
Drew J Dutton
Alan D Berenbaum
Richard E Wahler
Raphael Weiss
Original Assignee
Standard Microsyst Smc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Standard Microsyst Smc filed Critical Standard Microsyst Smc
Publication of TW200907740A publication Critical patent/TW200907740A/zh
Application granted granted Critical
Publication of TWI390425B publication Critical patent/TWI390425B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Description

用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法
本發明大體係關於設備安全領域,且更特定言之係關於使用嵌入式微控制器來執行系統中的預啟動及安全功能。
電腦在本地或在網路上愈加受到例如來自未經授權的使用者的惡意篡改或侵入的威脅。藉由電子存取及機器的可攜帶性使識別碼盜竊、秘密盜竊及類似犯罪更加容易。伴隨此趨勢,使用者有自其個人電腦(PC)執行財務交易的願望。然而,當前的PC架構不安全。當前的業界回應為使用來自業界領導者的解決方案連同稱為可信任平台模組(TPM)的設備,以使PC內的秘密更加安全。PC最易受到攻擊的時間為在初始開機期間,此時PC必須偵測PC在電源斷開時是否被篡改,且接著才啟動機器並允許使用者或應用程式存取PC上的資料。
對此問題的一個當前解決方案利用系統中央處理單元(CPU)及系統BIOS(基本I/O服務)軟體。舉例而言,Phoenix Technologies提供一種稱為TrustedCore的產品,其為用以建立所謂"信任根(root of trust)"之韌體。此解決方案之缺點為系統BIOS含有必須建立信任根之軟體。使用主機CPU執行BIOS代碼之一問題為BIOS通常儲存於使用者易於修改的外部快閃記憶體中。惡意使用者可能會替換忽視安全性或竊取秘密的BIOS代碼,所以習知系統不能被信任以執行安全授權。換言之,BIOS代碼在試圖被保護的主CPU上 執行。因此,入侵者可修改駐留在業界標準快閃記憶體設備中的BIOS代碼,且信任根可能在系統不知情的情況下受到破壞。
因此,在當前方法中,負責測試此篡改的系統亦為經受攻擊的系統。因此,小心的攻擊可能會使此自我測試無效。
在比較先前技術與本文描述的本發明之後,關於此先前技術的其他相應問題對熟習此項技術者將變得顯而易見。
提出用於使系統安全的系統及方法之各種實施例。該系統(例如,電腦系統)可包括主機處理器及記憶體。
首先,在通電後但在主機處理器啟動之前,耦接至主機處理器及記憶體的嵌入式微控制器可存取儲存用於驗證系統安全性之程式指令的輔助記憶體,並執行程式指令以使用耦接至嵌入式微控制器的一或多個預啟動安全組件來驗證系統安全性。舉例而言,在一實施例中,一或多個預啟動安全組件可包括至少一識別碼驗證組件,例如智慧卡或生物測定感應器(例如,指紋感應器、視網膜掃描器及/或聲紋感應器及其他)。輔助記憶體可為晶載(on-chip)ROM或以禁止使用者篡改記憶體內容之方式加以控制或保護的記憶體。輔助記憶體可儲存程式指令,例如一或多個應用程式,其可執行以執行系統之安全功能。
程式指令可藉由嵌入式處理器執行以調用至少一識別碼驗證組件來自使用者接收識別資訊,並驗證使用者被授權 使用系統。舉例而言,在一些實施例中,系統可包括儲存經授權使用者之模板識別資訊的模板記憶體,諸如可經比較以識別由智慧卡或其他個人識別媒體提供的資訊之個人資料,及/或在生物測定感應器之情況下的參考指紋、視網膜圖案或聲紋及其他。因此可執行程式指令以經由至少一識別碼驗證組件來自使用者接收(亦即,獲得)識別資訊,例如來自智慧卡之個人資料、來自使用者之指紋等,並將此資訊與儲存於模板記憶體中之資訊進行比較以判定使用者是否被授權使用系統。
在一些實施例中,一或多個預啟動安全組件可包括至少一系統驗證組件。程式指令(例如,應用程式)可由嵌入式處理器執行以調用至少一系統驗證組件來向系統查詢系統狀態資訊,並驗證系統未受到損害。舉例而言,一例示性系統驗證組件為可信任平台模組(TPM),其可用於執行各種系統安全功能。在一些實施例中,TPM可提供包含各種功能(及/或資料)的套件,該等功能(及/或資料)可由儲存於輔助記憶體(例如,ROM)中的程式指令或應用程式調用或以其他方式使用。舉例而言,微控制器可執行應用程式(例如,來自ROM)以(例如)經由BIOS記憶體內容的加密散列來驗證系統BIOS,如在此項技術中所熟知的。注意,此功能由微控制器對BIOS的直接存取而促進。
在一些實施例中,系統可在(例如)模板記憶體或一些其他安全儲存媒體中儲存參考系統狀態資訊。在一些實施例中,參考系統狀態資訊可包括關於系統(或系統的一些部 分)的最後已知安全簽名的資訊。為了驗證系統未受損害,程式指令可由嵌入式處理器執行,以比較由至少一系統驗證組件查詢的系統狀態資訊與所儲存的參考系統狀態資訊。若查詢到的資訊與所儲存的參考系統狀態資訊匹配或一致,則可認為系統(或系統的一些部分)安全或未受損害。因此,例如,嵌入式微控制器可擷取及使用此資訊以確保系統BIOS及系統的其他關鍵部分未受損害,亦即未被篡改。當然,可視需要驗證系統的任何其他子系統(例如,硬碟驅動器、ROM等之內容)是否遭受篡改等。
作為系統安全驗證之另一實例,在一實施例中,一或多個預啟動安全組件可包括全球定位系統(GPS)。為了使用一或多個預啟動安全組件來驗證系統安全性,程式指令可由嵌入式處理器執行以調用GPS來判定系統的位置,並驗證系統處於經授權位置。舉例而言,一或多個經授權位置可儲存於安全儲存媒體(例如,模板記憶體、TPM等)中,且微控制器可執行程式指令來比較所判定的系統位置與一或多個經授權位置,以判定系統是否處於經授權位置。
應注意,上述組件(以及其他)中的任一者可視需要單獨或結合地使用。舉例而言,在一些實施例中,TPM可用於驗證生物測定資料,例如,指紋資料、自智慧卡獲得的個人資料等。因此,TPM可視為識別碼識別組件及系統驗證組件。
接著,若系統安全性得以驗證,則可調用主機處理器的啟動。舉例而言,在一些實施例中,嵌入式處理器可(例 如)自BIOS記憶體調用或協調(orchestrate)主機處理器之啟動過程,例如,調用或調入啟動載入程式。或者,在其他實施例中,主機CPU啟動過程可由系統的另一部分(除嵌入式微控制器以外)管理,在此情況下,若系統安全性得以驗證,則微控制器可准許主機CPU之啟動過程開始並繼續進行。
在一些實施例中,若系統安全性不能被驗證,則嵌入式微控制器可進一步操作以執行程式指令以調用一或多個防禦性措施。舉例而言,一或多個防禦性措施可包括阻止使用者存取系統,例如,藉由阻止存取BIOS及/或藉由關閉系統的電源來阻止主機CPU啟動。作為另一實例,一或多個防禦性措施可包括警示耦接至系統之外部系統。在一些實施例中,系統可記錄所有使用者輸入或與系統之互動以用於以後的分析。
在一些實施例中,例如,若存取對系統安全性為重要的,且若系統設計成使得對設備的存取經由微控制器提供,則微控制器可獨立地控制對設備之存取。因為在微控制器內部的處理器執行其自有的應用程式(例如,來自ROM),所以其可(例如)藉由使用附接至其附屬匯流排(例如,VLPC匯流排)中之一者的TPM來驗證對設備之存取權。若該權利不存在,則可阻止對設備之存取,而無系統軟體所需之任何修改。因此,在一實施例中,嵌入式微控制器可進一步操作以執行程式指令,以控制對耦接至系統之一或多個設備的存取。系統安全性不能被驗證時所採取 的一或多個防禦性措施可因此包括阻止對該一或多個設備的存取。舉例而言,如上文所指出,在一實施例中,一或多個預啟動安全組件中之至少一者為TPM或包括TPM,且該一或多個設備可包括該一或多個預啟動安全組件中的至少另一者。為了使用一或多個預啟動安全組件來驗證系統安全性,微控制器可操作以執行程式指令以使用TPM來驗證存取權(且如上文所指出,若系統安全性不能被驗證,則阻止對該至少另一設備之存取)。
因此,本文描述的系統及方法之實施例可藉由經由嵌入式處理器及一或多個預啟動安全設備執行預啟動安全功能來為系統(例如,電腦系統)提供增強的系統安全性,其中嵌入式微控制器及預啟動安全設備與系統之主機或主處理器獨立地操作。
當連同附圖一起閱讀時,藉由參考以下詳細描述,可更徹底地理解本發明之前述以及其他目的、特徵及優點。
下文描述用於(例如)在系統的預啟動期間使電腦安全的系統及方法之各種實施例。
於本文中使用時,"指令集合"可指一或多個指令。更特定言之,在一些實施例中,"指令"可指程式碼、軟體及/或以代碼形式實施之功能,該代碼可由適於執行此等指令之控制器、微處理器及/或定製邏輯電路來執行。在一些實施例中,此等指令可包含設備驅動程式、控制軟體及/或機器碼。於本文中使用時,"控制器"指任何類型之處理 器,諸如中央處理單元(CPU)或處理器、微處理器或嵌入式微控制器及其他。
概述
本發明之重要特微為將驗證系統安全性(例如,偵測篡改)之責任自電腦之主CPU(亦即,處理器)移至嵌入式微控制器。換言之,並非依賴於電腦之CPU(如上所述,其通常易受攻擊或篡改)用於安全功能,分離之嵌入式微控制器可執行一些或所有此等安全功能,藉此實質上增加電腦系統之安全性。可藉由提供存取安全儲存器之嵌入式微控制器來增強此能力,諸如可藉由TPM或智慧卡(諸如由SMSC提供之SMSC智慧卡)得到。此安全儲存器可用於安全地儲存關於系統之最後已知之安全簽名之資訊。嵌入式微控制器可擷取及使用該資訊來確保系統BIOS(基本I/O服務)及系統之其他關鍵部分未被篡改。此通常為所謂的為系統建立信任根之一部分。嵌入式微控制器可能亦需要存取系統BIOS,此可藉由任何適當方法(包括Q開關)來提供,以允許截取來自BIOS設備之信號以驗證其內容未改變。若嵌入式微控制器亦負責一部分或所有遠端系統管理功能(例如,基板管理功能(BMC)或分散式管理任務組(DTMF)類型之功能),則可提供存取安全儲存器(例如,TPM)及提供對遠端請求來自於其之安全儲存器之遠端證明及驗證之能力。
安全性亦可依賴於驗證特定使用者而無其他人可存取系統,以及驗證使用者之識別碼。因此,除了上文之系統驗 證以外,對安全識別構件(例如,智慧卡)之存取亦可用於驗證試圖使系統開機之使用者之識別碼。舉例而言,在一些實施例中,嵌入式微控制器可提供掃描指紋或獲得其他生物測定資訊之能力,以進一步增強驗證使用者識別碼之能力。
本發明之實施例可提供系統架構,其藉由嵌入式微控制器來提供對此等安全設備之存取。應注意,本文揭示之概念可擴展至包括網路存取以執行更廣泛之鑑認功能。
下文提供關於本發明之實施例之更詳細資訊。
圖1-例示性系統
圖1為經組態以實施本發明之一實施例之例示性系統的高階方塊圖。雖然圖1之系統係針對利用TPM及智慧卡(例如,SMSC智慧卡)之實施例,但應注意,此等僅意欲表示例示性安全儲存構件,且可視需要使用其他安全儲存設備、組件及系統。圖1之系統較佳駐留於電腦系統(例如,個人電腦(PC))中,但在其他實施例中,本文描述之技術及系統可視需要實施於任何其他系統中。
如圖1所示,系統可包括經由系統介面匯流排103耦接至系統介面106之嵌入式微控制器102,藉此微控制器102可與稱為主機CPU或處理器之電腦系統之CPU通信。注意,在各實施例中,此系統介面106可僅為適合於微控制器102與主機CPU之間的通信之連接或匯流排,或可視需要包括額外結構或功能。如圖1所示,微控制器102可經由啟動記憶體匯流排107(諸如所示之串列周邊介面(SPI周邊)記憶體 匯流排)來進一步耦接至儲存系統BIOS之系統BIOS非揮發性儲存設備108。微控制器102可經由主機啟動記憶體匯流排105進一步耦接至系統介面106,藉此嵌入式微控制器102可截取在系統介面(例如,主機CPU)與系統BIOS非揮發性儲存設備108之間傳輸的記憶體請求或其他信號。
在較佳實施例中,微控制器102可耦接至促進與一或多個預啟動安全組件通信之一或多個額外匯流排。舉例而言,在所示實施例中,第一匯流排109(在此情況下為3線SMSC VLPC(很低之接腳數)BusTM )將微控制器102耦接至TPM 110及智慧卡112(例如,SMSC智慧卡),第二匯流排111(在此情況下為串列周邊介面(SPI周邊)記憶體匯流排)耦接至模板記憶體114,且第三匯流排113(為SPI周邊匯流排)耦接至指紋感應器116。模板記憶體114可為關於一(或多個)其他預啟動安全組件之資訊或資料提供安全儲存。舉例而言,在一實施例中,模板記憶體114可儲存系統之一或多個經授權使用者之指紋資料以與指紋感應器116一起使用。另外或替代地,模板記憶體114可儲存經授權使用者之識別資訊,可將該識別資訊與由智慧卡或其他個人識別媒體提供之識別資訊進行比較。
應注意,圖1所示之特定組件及匯流排僅欲為例示性的,且不意欲將本發明限於任何特定數目或類型之組件及匯流排。舉例而言,所涵蓋之其他預啟動安全組件包括視網膜掃描器、聲紋感應器及全球定位系統及其他。類似地,可視需要使用任何類型之匯流排或傳輸媒體,包括 (例如)串列、並行、有線或無線媒體及其他媒體中之一或多者。
注意,如圖1所示,系統介面經由嵌入式微控制器102可通信地耦接至系統BIOS快閃記憶體設備108,且因而BIOS信號或資料可由嵌入式控制器102截取。因此,主機CPU可藉由嵌入式微控制器(以及在匯流排上耦接至微控制器之任何其他設備)與儲存於外部快閃記憶體設備中之BIOS以及TPM互相作用。嵌入式微控制器在主機CPU與BIOS以及預啟動安全組件之間的媒介作用因此可促進為了有效性而不依賴於主機CPU之安全功能。
圖2-嵌入式微控制器
圖2為根據一實施例之嵌入式微控制器之高階方塊圖。圖2所示之嵌入式微控制器為適用於圖1之系統之實施例中的例示性嵌入式微控制器。應注意,在其他實施例中,可視需要使用其他組件、匯流排及組態。
如圖2所示,在此實施例中,嵌入式微控制器包括耦接至可稱為輔助記憶體之唯讀記憶體(ROM)204之處理器202。如所示,處理器202亦耦接至內部匯流排205,內部匯流排205可耦接至足夠之介面以與外部設備通信。舉例而言,在此實施例中,介面包括:對應於圖1之系統介面106之系統介面206,其用於與主機CPU通信;兩個SPI介面208A及208B,其用於與SPI周邊周邊裝置(諸如圖1之模板記憶體114及指紋感應器116)通信;VLPC介面210,其用於與安全儲存組件(諸如TPM 110及智慧卡112)通信;及 BIOS介面212,其用於與系統BIOS快閃記憶體設備108(例如,與系統BIOS)通信。注意,在圖2之實施例中,僅展示圖1所示之組態所需要之介面,但視需要可使用任何其他介面。
注意,TPM安全設備可藉由微控制器102透通地存取主機CPU,因為嵌入式微控制器模擬直接連接至系統介面106之TPM。換言之,位於系統介面106與TPM 110之間的微控制器以透通之方式管理或促進主機CPU與TPM 110之間的通信,且因此自主機CPU之觀點觀之,TPM 110看似直接連接至系統介面106。此外,因為嵌入式微控制器控制主機對TPM及BIOS之存取,所以微控制器內部之處理器可在主機CPU有機會執行BIOS代碼或查詢TPM之前執行儲存於晶載ROM中之應用程式。注意,在微控制器內部執行之代碼在不容易被修改之嵌入式ROM中。因此,應用程式可被信任以驗證系統之授權級別。晶載應用程式因而可在允許主機開始其正常開機常式之前驗證系統未受損害。如下文將更詳細描述的,微控制器可使用各種鑑認方法中之任一者(諸如生物測定感應器,以及查詢TPM)以驗證授權,且若發現系統受到損害,則微控制器可(例如)藉由阻止存取BIOS、關閉電源等來阻止主機CPU啟動。
使用TPM來驗證系統安全性之應用程式較佳駐留於晶載ROM 204上。注意,在各實施例中,此記憶體可在任何難以修改之記憶體中實施。舉例而言,在一實施例中,記憶體可以為不可修改之真正ROM,而在其他實施例中,記憶 體(ROM 204)可在由硬體保護以使被未授權使用者修改很困難(若非不可能)之記憶體中實施。
因此,在由圖1及圖2表示之實施例中,嵌入式控制器可使用與識別有關之預啟動安全設備(諸如指紋感應器116(或其他))來控制對系統之存取,且可使用TPM來提供內部系統安全性(亦即,確認或驗證系統之狀態為安全的)。下文參看圖3來描述此安全構件之進一步之細節及過程。
圖3-用於驗證系統中安全性之方法
圖3為根據一實施例之用於在一系統(例如,包含主機處理器及記憶體之電腦系統)中驗證安全性之方法之高階流程圖。圖3所示之方法可結合以上圖式中展示之任何電腦系統或設備(及其他)來使用。在各實施例中,所示之方法要素中之一些可同時執行、以與所示次序不同的次序執行,或可被省略。亦可視需要執行額外之方法要素。如所示,此方法可如下操作。
在302中,在通電後但在主機處理器啟動之前,耦接至主機處理器及記憶體之嵌入式微控制器可存取儲存用於驗證系統安全性之程式指令之輔助記憶體,並執行程式指令以使用耦接至嵌入式微控制器之一或多個預啟動安全組件來驗證系統安全性。
舉例而言,如上文所指出,輔助記憶體較佳為晶載ROM或以禁止使用者篡改記憶體內容之方式加以控制或保護的記憶體。輔助記憶體可儲存可執行以執行系統安全功能之程式指令,例如一或多個應用程式。
舉例而言,在一實施例中,一或多個預啟動安全組件可包括至少一識別碼驗證組件,例如智慧卡或生物測定感應器(例如,指紋感應器、視網膜掃描器及/或聲紋感應器)及其他。程式指令可由嵌入式處理器執行,以調用至少一識別碼驗證組件來自使用者接收識別資訊,並驗證使用者被授權使用系統。
舉例而言,如上文所指出,在一些實施例中,系統可包括儲存經授權使用者之模板識別資訊(諸如,可經比較以識別由智慧卡或其他個人識別媒體提供之資訊之個人資料及/或在生物測定感應器之情況下之參考指紋、視網膜圖案或聲紋及其他)之模板記憶體114。程式指令因此可執行以經由至少一識別碼驗證組件來自使用者接收(亦即,獲得)識別資訊(例如,來自智慧卡之個人資料、來自使用者之指紋等),並將該資訊與儲存於模板記憶體114中之資訊進行比較以判定使用者是否被授權使用系統。
在一些實施例中,一或多個預啟動安全組件可包括至少一系統驗證組件。程式指令(例如,應用程式)可由嵌入式處理器執行,以調用至少一系統驗證組件來向系統查詢系統狀態資訊,並驗證系統未受損害。
舉例而言,一例示性系統驗證組件為上文論述之可信任平台模組(TPM),其可用於執行各種系統安全功能。在一些實施例中,TPM可提供包含各種功能(及/或資料)之套件,該等功能(及/或資料)可由儲存於輔助記憶體(例如,ROM 204)中之程式指令或應用程式調用或以其他方式使 用。舉例而言,微控制器可執行應用程式(例如,來自ROM 204),以(例如)經由BIOS記憶體內容之加碼散列來驗證系統BIOS,如在此項技術中所熟知。注意,此功能由微控制器對BIOS之直接存取促進,如圖1所示。
在一些實施例中,系統可在(例如)模板記憶體114或一些其他安全儲存媒體中儲存參考系統狀態資訊。在一些實施例中,參考系統狀態資訊可包括關於系統(或系統之一些部分)之最後已知之安全簽名之資訊。為了驗證系統未受損害,程式指令可由嵌入式處理器執行,以比較由至少一系統驗證組件查詢之系統狀態資訊與所儲存之參考系統狀態資訊。若查詢到之資訊與所儲存之參考系統狀態資訊匹配或一致,則可認為系統(或系統之一些部分)安全或未受損害。因此,例如,嵌入式微控制器可撷取及使用此資訊來確保系統BIOS及系統之其他關鍵部分未受損害,亦即未被篡改。當然,可視需要驗證系統的任何其他子系統(例如,硬碟驅動器、ROM等之內容)是否遭受篡改等。
作為系統安全驗證之另一實例,在一實施例中,一或多個預啟動安全組件可如上所述包括全球定位系統(GPS)。為了使用一或多個預啟動安全組件來驗證系統安全性,程式指令可由嵌入式處理器執行以調用GPS來判定系統之位置,並驗證系統處於經授權位置。舉例而言,一或多個經授權位置可儲存於安全儲存媒體(例如,模板記憶體114、TPM等)中,且微控制器可執行程式指令來比較所判定的系統位置與一或多個經授權位置,以判定系統是否处 於經授權位置。
應注意,上述組件(以及其他)中之任一者可視需要單獨或結合地使用。舉例而言,在一些實施例中,TPM可用於驗證生物測定資料(例如,指紋資料、自智慧卡獲得的個人資料等)。因此,TPM可視為識別碼識別組件及系統驗證組件。
在304中,若系統安全性得以驗證,則可調用主機處理器之啟動。舉例而言,在一些實施例中,嵌入式處理器可(例如)自BIOS記憶體調用或協調主機處理器之啟動過程,例如調用或調入啟動載入程式。或者,在其他實施例中,主機CPU啟動過程可由系統之另一部分(除嵌入式微控制器以外)管理,在此情況下,若系統安全性得以驗證,則微控制器可准許主機CPU之啟動過程開始並繼續進行。
在一些實施例中,若系統安全性不能被驗證,則嵌入式微控制器可進一步操作以執行程式指令以調用一或多個防禦性措施。舉例而言,一或多個防禦性措施可包括阻止使用者存取系統,例如,藉由阻止存取BIOS及/或藉由關閉系統的電源來阻止主機CPU啟動。作為另一實例,一或多個防禦性措施可包括警示耦接至系統之外部系統。在較佳實施例中,系統可記錄所有使用者輸入或與系統之互动以用於以後的分析。
在一些實施例中,例如,若存取對系統安全性為重要的,且若系統設計成使得對設備的存取經由微控制器提供,則微控制器可獨立地控制對設備之存取。因為在微控 制器內部的處理器執行其自有的應用程式(例如,來自ROM),所以其可(例如)藉由使用附接至其附屬匯流排(例如,VLPC匯流排)(例如,見圖2)中之一者的TPM來驗證對設備之存取權。若該權利不存在,則可阻止對設備的存取,而無系統軟體需要之任何修改。因此,在一實施例中,嵌入式微控制器可進一步操作以執行程式指令,以控制對耦接至系統之一或多個設備的存取。系統安全性不能被驗證時所採取的一或多個防禦性措施可因此包括阻止對該一或多個設備的存取。舉例而言,如上文所指出,在一實施例中,一或多個預啟動安全組件中之至少一者為TPM或包括TPM,且該一或多個設備可包括該一或多個預啟動安全組件中的至少另一者。為了使用一或多個預啟動安全組件來驗證系統安全性,微控制器可操作以執行程式指令以使用TPM來驗證存取權(且如上所述,若系統安全性不能被驗證,則阻止對該至少另一設備之存取)。
因此,本文描述之系統及方法之實施例可藉由經由嵌入式處理器及一或多個預啟動安全設備執行預啟動安全功能來為系統(例如,電腦系統)提供增強之系統安全性,其中嵌入式微控制器及預啟動安全設備與系統之主機或主處理器獨立地操作。
102‧‧‧嵌入式微控制器
103‧‧‧系統介面匯流排
105‧‧‧主機啟動記憶體匯流排
106‧‧‧系統介面
107‧‧‧啟動記憶體匯流排
108‧‧‧系統BIOS非揮發性儲存設備
109‧‧‧第一匯流排
110‧‧‧TPM
112‧‧‧智慧卡
113‧‧‧第三匯流排
114‧‧‧模板記憶體
116‧‧‧指紋感應器
202‧‧‧處理器
204‧‧‧唯讀記憶體(ROM)
205‧‧‧內部匯流排
206‧‧‧系統介面
208A‧‧‧SPI介面
208B‧‧‧SPI介面
210‧‧‧VLPC介面
212‧‧‧BIOS介面
圖1為經組態以實施本發明之一實施例之例示性系統的高階方塊圖;圖2為根據一實施例之具有安全組件的嵌入式控制器的 方塊圖;及圖3為根據一實施例之用於執行預啟動安全驗證的方法之流程圖。
雖然本發明可進行各種修改且呈現替代形式,但在圖式中作為實例展示其特定實施例,且將在本文詳細描述該等特定實施例。然而,應理解,圖式及對其之詳細描述並不意欲將本發明限於所揭示之特定形式,而相反,本發明將涵蓋落在由所附申請專利範圍界定的本發明之精神及範疇內的所有修改、等效物及替代物。注意,標題項僅出於組織之目的,而並不意欲用來限制或解釋該描述或申請專利範圍。此外,注意,貫穿此說明書在許可之意義(亦即,有可能,能夠)而非強制意義(亦即,必須)上使用詞语"可以"。術語"包括"及其衍生詞意谓"包括(但不限於)"。術語"耦接"意謂"直接或間接地連接"。
(無元件符號說明)

Claims (17)

  1. 一種用於安全性驗證之系統,其包含:一主機處理器及記憶體;一嵌入式微控制器,其耦接至該主機處理器;一輔助記憶體,其耦接至該嵌入式微控制器,其中該輔助記憶體儲存用於驗證系統安全性之程式指令;及一或多個預啟動安全組件,其耦接至該嵌入式微控制器;其中在通電後但在主機處理器啟動之前,該嵌入式微控制器可操作以:執行該等程式指令以使用該一或多個預啟動安全組件來驗證系統安全性;及若系統安全性得以驗證,則准許該主機處理器啟動。
  2. 如請求項1之系統,其中該一或多個預啟動安全組件包含至少一識別碼驗證組件;其中,為了使用該一或多個預啟動安全組件來驗證系統安全性,該等程式指令可由該嵌入式處理器執行以調用該至少一識別碼驗證組件,以:自一使用者接收識別資訊;及驗證該使用者被授權使用該系統。
  3. 如請求項2之系統,其中該至少一識別碼驗證組件包含下列項中之一或多者: 一智慧卡;一可信任平台模組(TPM);或至少一生物測定感應器。
  4. 如請求項2之系統,其中該至少一生物測定感應器包括下列項中之一或多者:一指紋感應器;一視網膜掃描器;或一聲紋感應器。
  5. 如請求項1之系統,其中該一或多個預啟動安全組件包含至少一系統驗證組件;其中,為了使用該一或多個預啟動安全組件來驗證系統安全性,該等程式指令可由該嵌入式處理器執行以調用該至少一系統驗證組件,以:向該系統查詢系統狀態資訊;及驗證該系統未受損害。
  6. 如請求項5之系統,其中為了驗證該系統未受損害,該等程式指令可由該嵌入式處理器執行,以比較由該至少一系統驗證組件查詢的該系統狀態資訊與參考系統狀態資訊。
  7. 如請求項5之系統,其中該至少一系統驗證組件包含一可信任平台模組(TPM)。
  8. 如請求項1之系統,其中該輔助記憶體包含一ROM。
  9. 如請求項1之系統,其中該輔助記憶體包含一由硬體保護以實施一次可寫記憶體之記憶體。
  10. 如請求項1之系統,其中若系統安全性不能被驗證,則該嵌入式微控制器進一步可操作以執行該等程式指令以調用一或多個防禦性措施。
  11. 如請求項10之系統,其中該一或多個防禦性措施包括:阻止使用者存取該系統。
  12. 如請求項11之系統,其中該阻止使用者存取該系統包含下列各者中之一或多者:藉由阻止存取BIOS來阻止該主機CPU啟動;關閉該系統之電源。
  13. 如請求項10之系統,其中該一或多個防禦性措施包含:警示一耦接至該系統之外部系統。
  14. 如請求項10之系統,其中該嵌入式微控制器進一步可操作以執行該等程式指令,以控制對耦接至該系統之一或多個設備的存取,且其中該一或多個防禦性措施包含:阻止存取該一或多個設備。
  15. 如請求項14之系統,其中該一或多個預啟動安全組件中之至少一者包含一TPM,其中該一或多個設備包含該一或多個預啟動安全組件中之至少另一者,且其中為了使用該一或多個預啟動安全組件來驗證系統安全性,該微控制器可操作以執行該等程式指令以使用該TPM來驗證存取權。
  16. 如請求項1之系統,其中該一或多個預啟動安全組件包含一全球定位系統(GPS);且 其中,為了使用該一或多個預啟動安全組件來驗證系統安全性,該等程式指令可由該嵌入式處理器執行,以:調用該GPS來判定該系統之位置;及驗證該系統處於一經授權位置。
  17. 一種用於在一包含一主機處理器及記憶體之電腦系統內驗證安全性之方法,該方法包含:在通電後但在主機處理器啟動之前,一耦接至該主機處理器及記憶體之嵌入式微控制器存取一儲存用於驗證系統安全性之程式指令的輔助記憶體,並執行該等程式指令以使用耦接至該嵌入式微控制器之一或多個預啟動安全組件來驗證系統安全性;及若系統安全性得以驗證,則調用該主機處理器之啟動。
TW097113121A 2007-04-10 2008-04-10 用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法 TWI390425B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/733,599 US7917741B2 (en) 2007-04-10 2007-04-10 Enhancing security of a system via access by an embedded controller to a secure storage device

Publications (2)

Publication Number Publication Date
TW200907740A TW200907740A (en) 2009-02-16
TWI390425B true TWI390425B (zh) 2013-03-21

Family

ID=40447613

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097113121A TWI390425B (zh) 2007-04-10 2008-04-10 用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法

Country Status (3)

Country Link
US (1) US7917741B2 (zh)
CN (1) CN101373437B (zh)
TW (1) TWI390425B (zh)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9158920B2 (en) * 2007-06-28 2015-10-13 Intel Corporation System and method for out-of-band assisted biometric secure boot
US8782801B2 (en) * 2007-08-15 2014-07-15 Samsung Electronics Co., Ltd. Securing stored content for trusted hosts and safe computing environments
US20090172378A1 (en) * 2007-12-28 2009-07-02 Kazmierczak Gregory J Method and system for using a trusted disk drive and alternate master boot record for integrity services during the boot of a computing platform
US20090210456A1 (en) * 2008-02-18 2009-08-20 Dell Products L.P. Methods, Systems and Media for TPM Recovery Key Backup and Restoration
US8667577B2 (en) * 2008-09-30 2014-03-04 Lenovo (Singapore) Pte. Ltd. Remote registration of biometric data into a computer
US8856512B2 (en) * 2008-12-30 2014-10-07 Intel Corporation Method and system for enterprise network single-sign-on by a manageability engine
US8838991B2 (en) * 2009-04-01 2014-09-16 Microsoft Corporation Secure biometric identity broker module
US20110055534A1 (en) * 2009-08-26 2011-03-03 Chung Chieh-Fu Management Method for Security of Computer Device
CN102034057B (zh) * 2009-10-10 2012-10-17 北京派瑞根科技开发有限公司 高安全信息网络平台的网络连接方法
CN101763483B (zh) * 2009-10-10 2012-10-17 北京派瑞根科技开发有限公司 高安全信息系统的网络连接方法
US9218491B2 (en) * 2010-04-13 2015-12-22 Hewlett-Packard Development Company, L.P. Systems and methods for providing security in an electronic device
US9245113B2 (en) * 2010-10-22 2016-01-26 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Out of band vital product data collection
US8560648B2 (en) * 2010-11-10 2013-10-15 Microsoft Corporation Location control service
US8751782B2 (en) * 2010-12-16 2014-06-10 Intel Corporation Secure local boot using third party data store (3PDS) based ISO image
CN102693390B (zh) * 2011-03-24 2017-08-15 研祥智能科技股份有限公司 租赁式主板以及控制主板租赁的方法
CN102855428B (zh) * 2011-06-30 2016-03-30 联想(北京)有限公司 一种计算机的安全控制方法及该计算机
CN102289622B (zh) * 2011-09-01 2015-01-28 西安电子科技大学 基于认证策略文件和硬件信息收集的可信开机启动方法
US20130246800A1 (en) * 2012-03-19 2013-09-19 Microchip Technology Incorporated Enhancing Security of Sensor Data for a System Via an Embedded Controller
US9218462B2 (en) * 2012-04-25 2015-12-22 Hewlett Packard Enterprise Development Lp Authentication using lights-out management credentials
US9367688B2 (en) 2012-06-22 2016-06-14 Intel Corporation Providing geographic protection to a system
EP2696306A1 (en) * 2012-07-30 2014-02-12 Eka A/S System and device for authenticating a user
US9038179B2 (en) 2012-08-28 2015-05-19 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Secure code verification enforcement in a trusted computing device
US9384367B2 (en) * 2012-09-04 2016-07-05 Intel Corporation Measuring platform components with a single trusted platform module
TWI564747B (zh) * 2012-10-19 2017-01-01 威盛電子股份有限公司 電子裝置與安全開機方法
EP2722785A1 (en) * 2012-10-19 2014-04-23 Dialog Semiconductor B.V. Mobile security with associated vital function device
US9075995B2 (en) * 2013-03-11 2015-07-07 Microsoft Technology Licensing, Llc Dynamically loaded measured environment for secure code launch
CN105247528B (zh) 2013-06-27 2018-05-18 英特尔公司 连续多因素认证
US9613214B2 (en) * 2013-07-09 2017-04-04 Micron Technology, Inc. Self-measuring nonvolatile memory devices with remediation capabilities and associated systems and methods
CN103425932B (zh) * 2013-08-09 2017-02-01 华为终端有限公司 签名校验方法和终端设备
US10095868B2 (en) 2013-11-13 2018-10-09 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9798880B2 (en) * 2013-11-13 2017-10-24 Via Technologies, Inc. Fuse-enabled secure bios mechanism with override feature
US9183394B2 (en) 2013-11-13 2015-11-10 Via Technologies, Inc. Secure BIOS tamper protection mechanism
US9779242B2 (en) * 2013-11-13 2017-10-03 Via Technologies, Inc. Programmable secure bios mechanism in a trusted computing system
US9547767B2 (en) 2013-11-13 2017-01-17 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US10055588B2 (en) 2013-11-13 2018-08-21 Via Technologies, Inc. Event-based apparatus and method for securing BIOS in a trusted computing system during execution
US9779243B2 (en) * 2013-11-13 2017-10-03 Via Technologies, Inc. Fuse-enabled secure BIOS mechanism in a trusted computing system
US9767288B2 (en) * 2013-11-13 2017-09-19 Via Technologies, Inc. JTAG-based secure BIOS mechanism in a trusted computing system
US9367689B2 (en) * 2013-11-13 2016-06-14 Via Technologies, Inc. Apparatus and method for securing BIOS in a trusted computing system
US10049217B2 (en) 2013-11-13 2018-08-14 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9507942B2 (en) * 2013-11-13 2016-11-29 Via Technologies, Inc. Secure BIOS mechanism in a trusted computing system
CN103699827A (zh) * 2013-12-20 2014-04-02 河北汉光重工有限责任公司 一种计算机启动管理方式
US9411975B2 (en) 2014-03-31 2016-08-09 Intel Corporation Methods and apparatus to securely share data
US9426159B2 (en) * 2014-09-26 2016-08-23 Intel Corporation Securing sensor data
CN105825888B (zh) * 2015-01-08 2019-11-05 矽统科技股份有限公司 存储器存储模块和传感器模块的整合架构
DE102015108504B4 (de) * 2015-05-29 2019-05-02 Fujitsu Client Computing Limited Verfahren zum sicheren Booten eines Computersystems und Computersystem
US9779271B2 (en) 2015-06-08 2017-10-03 Juniper Networks, Inc. Apparatus, system, and method for detecting theft of network devices
US20160366144A1 (en) * 2015-06-10 2016-12-15 Huawei Technologies Co., Ltd. System Security Using Multi-user Control
US10057260B2 (en) 2015-08-27 2018-08-21 International Business Machines Corporation Electronic device identification
US10073964B2 (en) 2015-09-25 2018-09-11 Intel Corporation Secure authentication protocol systems and methods
CN105205401B (zh) * 2015-09-30 2017-10-24 中国人民解放军信息工程大学 基于安全密码芯片的可信计算机系统及其可信引导方法
WO2017058225A1 (en) * 2015-09-30 2017-04-06 Hewlett-Packard Development Company, L.P. Runtime verification using external device
US10146916B2 (en) 2015-11-17 2018-12-04 Microsoft Technology Licensing, Llc Tamper proof device capability store
WO2017166264A1 (en) * 2016-04-01 2017-10-05 Intel Corporation Apparatuses and methods for preboot voice authentication
CN106528458B (zh) * 2016-11-01 2020-09-08 广东浪潮大数据研究有限公司 一种接口控制器、基板管理控制器及安全系统
FR3060161A1 (fr) * 2016-12-08 2018-06-15 Orange Technique de gestion d'un droit d'acces a un service pour un dispositif communicant
JP6584487B2 (ja) * 2017-12-20 2019-10-02 キヤノン株式会社 情報処理装置、その制御方法およびプログラム
EP3679508A4 (en) * 2018-01-29 2021-04-21 Hewlett-Packard Development Company, L.P. DATA PROTECTION IN A PRE-OPERATIONAL SYSTEM ENVIRONMENT
US10936722B2 (en) * 2018-04-18 2021-03-02 Nuvoton Technology Corporation Binding of TPM and root device
US11714910B2 (en) * 2018-06-13 2023-08-01 Hewlett Packard Enterprise Development Lp Measuring integrity of computing system
DE102018213615A1 (de) * 2018-06-20 2019-12-24 Robert Bosch Gmbh Kryptografiemodul und Betriebsverfahren hierfür
US11494497B2 (en) * 2018-06-28 2022-11-08 Taiwan Semiconductor Manufacturing Company Ltd. System and device for data protection and method thereof
US11354391B2 (en) * 2018-07-30 2022-06-07 Qualcomm Incorporated Power saving in device with ultrasonic fingerprint sensors
US11055105B2 (en) * 2018-08-31 2021-07-06 Micron Technology, Inc. Concurrent image measurement and execution
CN109446815B (zh) * 2018-09-30 2020-12-25 华为技术有限公司 基本输入输出系统固件的管理方法、装置和服务器
CN109144910A (zh) * 2018-10-09 2019-01-04 郑州云海信息技术有限公司 一种与存储设备的内部串口进行通信的方法及装置
US11921859B2 (en) * 2021-11-04 2024-03-05 Dell Products L.P. System and method for managing device security during startup
CN113961939B (zh) * 2021-12-20 2022-03-08 北京智芯微电子科技有限公司 嵌入式操作系统安全的防护方法和系统
TWI815676B (zh) * 2022-09-27 2023-09-11 緯穎科技服務股份有限公司 資安管理方法、安全管理電路及伺服器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6564318B1 (en) * 1997-12-10 2003-05-13 Phoenix Technologies Ltd. Method and apparatus for execution of an application during computer pre-boot operation and post-boot under normal OS control
DE69919299T2 (de) * 1998-11-11 2004-12-30 02 Micro International Ltd. Vorurladungssicherheitssteuerungseinheit
US7797729B2 (en) * 2000-10-26 2010-09-14 O2Micro International Ltd. Pre-boot authentication system
US20020166059A1 (en) * 2001-05-01 2002-11-07 Rickey Albert E. Methods and apparatus for protecting against viruses on partitionable media
US7051196B2 (en) * 2001-12-05 2006-05-23 Hewlett-Packard Development Company, L.P. Location-based security for a portable computer
US20040064457A1 (en) * 2002-09-27 2004-04-01 Zimmer Vincent J. Mechanism for providing both a secure and attested boot
US20050071624A1 (en) * 2003-09-29 2005-03-31 Rothman Michael A. Providing a self-describing media for a computer system
US20050138409A1 (en) * 2003-12-22 2005-06-23 Tayib Sheriff Securing an electronic device
US20050228993A1 (en) * 2004-04-12 2005-10-13 Silvester Kelan C Method and apparatus for authenticating a user of an electronic system
US7711953B2 (en) * 2005-08-10 2010-05-04 Hewlett-Packard Development Company, L.P. Methods and systems that selectively permit changes to a cryptographic hardware unit's state
CN100383739C (zh) * 2006-03-15 2008-04-23 浙江大学 嵌入式操作系统镜像启动的启动优化方法
US20070234073A1 (en) * 2006-03-31 2007-10-04 Lenovo (Singapore) Pte. Ltd. Random password automatically generated by bios for securing a data storage device
US7984283B2 (en) * 2006-05-22 2011-07-19 Hewlett-Packard Development Company, L.P. System and method for secure operating system boot
US7941847B2 (en) * 2006-09-26 2011-05-10 Lenovo (Singapore) Pte. Ltd. Method and apparatus for providing a secure single sign-on to a computer system
US20080098478A1 (en) * 2006-10-20 2008-04-24 Redcannon, Inc. System, Method and Computer Program Product for Administering Trust Dependent Functional Control over a Portable Endpoint Security Device
US9152826B2 (en) * 2006-10-31 2015-10-06 Hewlett-Packard Development Company, L.P. Damage detection for an anti-theft interface
US8984265B2 (en) * 2007-03-30 2015-03-17 Intel Corporation Server active management technology (AMT) assisted secure boot

Also Published As

Publication number Publication date
TW200907740A (en) 2009-02-16
US7917741B2 (en) 2011-03-29
US20090327678A1 (en) 2009-12-31
CN101373437B (zh) 2012-09-05
CN101373437A (zh) 2009-02-25

Similar Documents

Publication Publication Date Title
TWI390425B (zh) 用於安全性驗證之系統及用於在電腦系統內驗證安全性之方法
US7337323B2 (en) Boot-up and hard drive protection using a USB-compliant token
US10516533B2 (en) Password triggered trusted encryption key deletion
US6557104B2 (en) Method and apparatus for secure processing of cryptographic keys
US8522018B2 (en) Method and system for implementing a mobile trusted platform module
RU2538329C1 (ru) Устройство создания доверенной среды для компьютеров информационно-вычислительных систем
TWI494785B (zh) 用以提供系統管理命令之系統與方法
US20050228993A1 (en) Method and apparatus for authenticating a user of an electronic system
GB2436046A (en) Method for establishing a trusted running environment in the computer
TW200919196A (en) Memory protection for embedded controllers
TWI542992B (zh) 用以確保平臺矽組態完整性之方法與設備
US20010032319A1 (en) Biometric security system for computers and related method
JP2003263618A (ja) Nvヒューズ認証方法および装置、認証用コンピュータプログラム製品および認証用プログラムを記憶したコンピュータ読取可能な記憶媒体
US20080244746A1 (en) Run-time remeasurement on a trusted platform
US20110040961A1 (en) Binding data to a computing platform through use of a cryptographic module
KR20130038304A (ko) 외부 부팅 장치, 외부 부팅 방법, 정보 처리 장치 및 네트워크 통신 시스템
US20030172265A1 (en) Method and apparatus for secure processing of cryptographic keys
CN112149190A (zh) 用于非易失性存储器模块的热启动攻击缓解
CN104361298B (zh) 信息安全保密的方法和装置
Frazelle Securing the boot process
CN113190880A (zh) 基于对安全协处理器的背书信息的分析确定是否对计算设备执行动作
CN201845340U (zh) 一种具有用户安全子系统的安全计算机
US20080120510A1 (en) System and method for permitting end user to decide what algorithm should be used to archive secure applications
CN109598125B (zh) 一种安全启动方法
US8702812B2 (en) Remote disablement of a computer system