TWI750442B - 韌體安全防護方法與使用此方法的電子系統 - Google Patents
韌體安全防護方法與使用此方法的電子系統 Download PDFInfo
- Publication number
- TWI750442B TWI750442B TW108101443A TW108101443A TWI750442B TW I750442 B TWI750442 B TW I750442B TW 108101443 A TW108101443 A TW 108101443A TW 108101443 A TW108101443 A TW 108101443A TW I750442 B TWI750442 B TW I750442B
- Authority
- TW
- Taiwan
- Prior art keywords
- behavior
- electronic system
- bios
- control device
- booting
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本發明提出一種韌體安全防護方法與使用此方法的電子系統。所述韌體安全防護方法包括以下步驟:設定至少一個監控項目,其中每一個監控項目對應於電子系統的記憶體裝置中的至少一個行為參考檔中之一者;在電子系統開機時從記憶體裝置載入監控項目所對應的行為參考檔;以及根據所載入的行為參考檔檢查電子系統的基本輸入輸出系統開機行為是否包括異常事件。
Description
本發明是有關於一種系統安全防護技術,且特別是有關於一種韌體安全防護方法與使用此方法的電子系統。
基本輸入輸出系統(Basic Input/Output System,BIOS)是一種業界標準的韌體介面。BIOS用於電腦啟動時執行系統各部分的自我檢測(power on self test),並載入啟動程式(Initial Program Loader,IPL)或載入儲存在主記憶體的作業系統。在今天,統一可延伸韌體介面(Unified Extensible Firmware Interface,UEFI)BIOS具有容錯能力、糾錯能力、尋址能力更強等特點,因此成為了當今系統的主流。
目前的BIOS或UEFI BIOS具有許多安全性相關的技術,例如包括開機防護(Boot Guard,BG)、UEFI安全開機(UEFI secure boot)、測量開機(measured boot)以及可信任平台模組(Trusted Platform Module,TPM)等等。這些防護技術都能夠防止BIOS或UEFI BIOS被惡意修改所造成的安全性問題。
但是,若BIOS或UEFI BIOS本身韌體就存在程式的安全性漏洞,攻擊者就可以利用這樣的安全性漏洞而無需修改程式本身,而現有的安全性相關技術並無法防護到這樣的情形。因此,如何改善韌體的安全性是目前亟需解決的問題。
有鑑於此,本發明實施例提供一種韌體安全防護方法與使用此方法的電子系統,能夠提升系統的安全性。
本發明實施例的韌體安全防護方法適用於電子系統,並且包括以下步驟:設定至少一個監控項目,其中每一個監控項目對應於電子系統的記憶體裝置中的至少一個行為參考檔中之一者;在電子系統開機時從記憶體裝置載入監控項目所對應的行為參考檔;以及根據所載入的行為參考檔檢查電子系統的基本輸入輸出系統(Basic Input/Output System,BIOS)開機行為是否包括異常事件。
本發明實施例的電子系統包括記憶體裝置以及控制裝置。記憶體裝置用以記錄至少一個行為參考檔。控制裝置耦接於記憶體裝置,並且用以:設定至少一個監控項目,其中每一個監控項目對應於電子系統的記憶體裝置中的至少一個行為參考檔中之一者;在電子系統開機時從記憶體裝置載入監控項目所對應的行為參考檔;以及根據所載入的行為參考檔檢查電子系統的BIOS開機行為是否包括異常事件。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
本發明的部份實施例接下來將會配合附圖來詳細描述,以下的描述所引用的元件符號,當不同附圖出現相同的元件符號將視為相同或相似的元件。這些實施例只是本發明的一部份,並未揭示所有本發明的可實施方式。更確切的說,這些實施例只是本發明的專利申請範圍中方法與電子系統的範例。
在本文中,基本輸入輸出系統(Basic Input/Output System,BIOS)一詞將用以同時表示傳統的BIOS(legacy BIOS)、統一可延伸韌體介面(Unified Extensible Firmware Interface,UEFI)BIOS,或其他在作業系統與系統韌體之間的BIOS介面。
圖1A繪示本發明一實施例的電子系統的示意圖。
請先參照圖1A,電子系統100a包括控制裝置110以及記憶體裝置120,其中控制裝置110例如包括處理器111,記憶體裝置例如包括第一記憶體121,其中處理器111耦接於第一記憶體121。舉例來說,電子系統100a可以是個人電腦(Personal Computer,PC)、筆記型電腦(notebook)、平板電腦(tablet PC)或智慧型手機(smart phone)等等,本發明並不在此設限。
在本實施例中,處理器111用以負責電子系統100a的整體運作,包括執行韌體安全防護方法等。處理器111例如包括中央處理單元(Central Processing Unit,CPU),或是其他可程式化之一般用途或特殊用途的微處理器(Microprocessor)、數位訊號處理器(Digital Signal Processor,DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuits,ASIC)、可程式化邏輯裝置(Programmable Logic Device,PLD)或其他類似裝置或這些裝置的組合等,本發明並不在此設限。
在本實施例中,第一記憶體121用以儲存資料,例如包括執行韌體安全防護方法時所需的行為參考檔等。第一記憶體121例如是隨機存取記憶體(Random Access Memory;RAM)、唯讀記憶體(Read-Only Memory;ROM)、快閃記憶體(Flash memory)、硬碟或其他類似裝置或這些裝置的組合等,本發明不在此設限。在一些實施例中,第一記憶體121也可以是用來存放BIOS程式碼的記憶體,但本發明並不在此限。
值得一提的是,電子系統100a的處理器111還可連接於圖1A中未繪示的一或多個周邊硬體裝置,所屬領域具備通常知識者當可依需求來實作,故本文不在此贅述。
圖1B繪示本發明另一實施例的電子系統的示意圖。
請參照圖1B,電子系統100b包括控制裝置110以及記憶體裝置120,其中控制裝置例如包括處理器111以及基板管理控制器(Baseboard Management Controller,BMC)113,記憶體裝置120例如包括第一記憶體121以及第二記憶體123,其中處理器111耦接於第一記憶體121以及BMC 113,並且BMC 113耦接於第二記憶體123。舉例來說,電子系統100b可以是資料中心的伺服器等,本發明並不在此設限。處理器111與第一記憶體121已於前述段落介紹,故在此不再贅述。
在本實施例中,BMC 113用以收集電子系統100b的運作情況與系統狀態,例如系統電壓、溫度與風扇速度等等。在一些實施例中,BMC 113也可整合電子系統100b中許多監控電壓用的類比與數位資料轉換器、監測風扇速度用的計數器、驅動風扇的脈衝寬度調整(Pulse Width Modulation,PWM),或類比與數位資料輸出,以及和外部感應器與擴展元件介面溝通的通用輸入輸出、串列埠和匯流排等等。所屬領域具備通常知識者應當對於BMC 113有充分的理解,因此可依據需求來實作BMC 113,故,有關BMC 113更多的細節不在本文中進一步描述。
特別是,在本實施例中,BMC 113可用以與處理器111溝通協作,在BMC 113的能力範圍內來與處理器111共同進行韌體安全防護方法。如此一來,可以大幅提升韌體安全防護方法的便利性。具體的細節將於以下段落詳述之。
在本實施例中,BMC 113會利用第二記憶體123來儲存資料,例如包括執行韌體安全防護方法時所生成的系統事件記錄檔(System Event Log,SEL)等。第二記憶體123例如是隨機存取記憶體(Random Access Memory;RAM)、唯讀記憶體(Read-Only Memory;ROM)、快閃記憶體(Flash memory)、硬碟或其他類似裝置或這些裝置的組合等,本發明不在此設限。
值得一提的是,電子系統100b的處理器111以及BMC 113分別還可連接於圖1B中未繪示的一或多個周邊硬體裝置,所屬領域具備通常知識者當可依需求來實作,故本文不在此贅述。
值得一提的是,在本文的說明當中,當提及的電子系統並未附加對應的標號時,所指的可以是電子系統100a、電子系統100b或其他包括控制裝置110以及記憶體裝置120的電子系統。
在電子系統開機時,處理器111會載入BIOS,並且執行韌體安全防護方法,以在進入作業系統前的BIOS開機階段就開始保護韌體安全。以下以UEFI BIOS的開機為例來進行說明。
圖2繪示本發明一實施例的UEFI BIOS開機流程的示意圖。請參照圖2,UEFI BIOS的開機流程200例如可以分成五個階段S1至S5。
階段S1為安全性(Security,SEC)階段,從時間點t0持續到時間點t1。在階段S1中,主記憶體尚未被初始化,因此處理器111的快取(cache)會在主記憶體被初始化之前被用來進行預先驗證處理器111、晶片組與主機板等。
階段S2為可延伸韌體介面前初始化(Pre-EFI Initialization,PEI)階段,從時間點t1持續到時間點t2。在階段S2中,處理器111、主記憶體、晶片組與主機板開始初始化,且EFI驅動程式記憶體會被載入。
階段S3為驅動程式執行環境(Driver Execution Environment,DXE)階段,從時間點t2持續到時間點t3。在階段S3中,所有的周邊硬體裝置(例如包括PCI、USB與SATA等周邊裝置)都會被初始化。
階段S4為開機設備選擇(Boot Device Select,BDS)階段,從時間點t3持續到時間點t4。在階段S4中,BIOS會選擇要從哪個偵測到的開機設備來啟動作業系統等。
階段S5為短暫系統載入(Transient System Load,TSL)階段,從時間點t4持續到時間點t5。若在階段S4中BIOS選擇進入作業系統,則在階段S5中BIOS就會將控制權交給作業系統。
在本實施例中,時間點t5之後可以稱作作業系統階段,而從時間點t0到時間點t5之間可以稱作BIOS開機階段,且在BIOS開機階段之間系統的開機行為可以稱為BIOS開機行為。電子系統的控制裝置110會執行韌體安全防護方法,在時間點t0到時間點t5之間的BIOS開機階段監控BIOS開機行為,以在BIOS開機階段就對韌體進行保護。必須說明的是,圖2實施例僅為示例性說明韌體安全防護方法的執行與保護時機,並非用以限制本發明。
圖3繪示本發明一實施例的韌體安全防護方法的流程圖。
請參照圖3,首先在步驟S302中,控制裝置110會建立行為參考檔。具體來說,行為參考檔是用來作為BIOS開機行為樣板的檔案,其中例如是記錄標準或預期的BIOS開機行為。藉由比對所建立的行為參考檔與實際的BIOS開機行為,便能夠找出實際的BIOS開機行為是否發生異常或出現非預期中的運作。在本實施例中,行為參考檔是在電子系統某一次成功的開機完成後,由控制裝置110的處理器111所建立並記錄在記憶體裝置120中。在其他實施例中,行為參考檔也可以是由使用者自行編輯而成,本發明並不在此設限。
在一些實施例中,行為參考檔例如包括開機記錄檔,其中包括有BIOS開機階段的多個流程中的多個動作的記錄。在電子系統某一次的BIOS開機成功後,使用者可以自行決定是否將此次成功的BIOS開機的詳細開機流程製作成行為參考檔中的開機記錄檔,並且在製作完成後將開機記錄檔儲存在第一記憶體121當中。
在一些實施例中,行為參考檔例如包括硬體架構檔,其中包括有連接於電子系統的多個硬體的記錄,例如記憶體的數量與容量、周邊硬體裝置的數量與型號等等。在電子系統某一次的BIOS開機成功後,使用者可以自行決定是否將此次成功的BIOS開機所讀到的所有硬體作成行為參考檔中的硬體架構檔,並且在製作完成後將硬體架構檔儲存在第一記憶體121當中。
在一些實施例中,行為參考檔例如包括設定值記錄檔,其中包括有BIOS設定值與UEFI非揮發性記憶體隨機存取記憶體(Non-Volatile Random Access Memory,NVRAM)變數的至少其中之一。在電子系統某一次的BIOS開機成功後,使用者可以自行決定是否將此次BIOS開機成功時的BIOS設定值與UEFI NVRAM變數的至少其中之一製作為行為參考檔中的設定值記錄檔,並且在製作完成後將設定值記錄檔儲存在第一記憶體121當中。
在步驟S304中,控制裝置110會設定監控項目。具體來說,監控項目可以根據需求來進行設定,而本發明並不在此限制所設定的監控項目的具體數量與內容。舉例而言,在一些硬體時常會發生變動(例如,時常有USB裝置的插拔需求等)的電子系統當中,可以選擇不對硬體架構進行監控;反之,當電子系統的硬體較少或幾乎不會發生變動的時候,可以選擇監控硬體架構。
在本實施例中,監控項目的選擇包括BIOS開機流程、BIOS開機時間、硬體架構變化(硬體新增、減少或修改)、BIOS設定值以及UEFI NVRAM變數等等,但本發明並不限於此。特別是,每一個監控項目都會對應到一個行為參考檔。舉例來說,BIOS開機流程以及BIOS開機時間皆對應到開機記錄檔;硬體架構變化對應到硬體架構檔;而BIOS設定值與UEFI NVRAM變數則例如是對應到行為參考檔中的設定值記錄檔。
在一些實施例中,使用者例如可以透過BIOS設定介面來下達設定指令給控制裝置110的處理器111,以透過處理器111設定監控項目以及對應的行為參考檔。
在一些實施例中,使用者例如可以透過智慧平台管理介面指令(Intelligent Platform Management Interface,IPMI),或是透過Redfish應用程式介面(Application Programming Interface,API)來透過BMC 113設定監控項目以及對應的行為參考檔。據此,在電子系統100b關機時也能夠透過BMC 113來設定監控項目。
在一些實施例中,控制裝置110在設定監控項目的同時,也會設定監控項目發生異常事件時所對應的操作。
在步驟S306中,控制裝置110在電子系統開機時會從記憶體裝置120載入步驟S304中所設定的監控項目所對應的行為參考檔。
在一些實施例中,監控項目是透過處理器111來進行設定,而控制裝置110的處理器111會在電子系統開機時從第一記憶體121載入所設定的監控項目所對應的行為參考檔。
在一些實施例中,監控項目是透過BMC 113來進行設定,而在電子系統100b開機時,處理器111會與BMC 113進行溝通,使處理器111能夠從第一記憶體121載入所設定的監控項目所對應的行為參考檔。
在步驟S308中,控制裝置110會根據所載入的行為參考檔檢查電子系統的BIOS開機行為;在步驟S310中,控制裝置110會判斷BIOS開機行為是否包括異常事件。具體來說,控制裝置110會根據所設定的監控項目,將此次BIOS開機行為與所載入的行為參考檔進行比對,以判斷此次BIOS開機行為是否符合行為參考檔中的記錄。若此次BIOS開機行為與行為參考檔不符合,則表示此次BIOS開機行為包括異常事件;反之,則表示此次BIOS開機行為不包括異常事件。
在一些實施例中,所設定的監控項目包括BIOS開機流程與BIOS開機時間。控制裝置110例如會將此次BIOS開機的BIOS開機流程與BIOS開機時間與開機記錄檔中的記錄進行比對,以判斷此次BIOS開機流程是否發生變化或開機時間是否正常(例如,與開機記錄檔中的開機時間的時間差不大於預設閥值)。若BIOS開機流程發生了變化或開機時間不正常,則表示此次BIOS開機行為包括異常事件。
在一些實施例中,所設定的監控項目包括硬體架構變化。控制裝置110例如會將此次BIOS開機時所讀到的硬體與硬體架構檔進行比對,以判斷此次BIOS開機時所讀到的硬體與硬體架構檔是否相符(例如,是否發生硬體新增、減少或改變)。若此次BIOS開機時所讀到的硬體與硬體架構檔不相符,則表示此次BIOS開機行為包括異常事件。
在一些實施例中,所設定的監控項目包括BIOS設定值以及UEFI NVRAM變數。控制裝置110例如會將此次BIOS開機所使用的BIOS設定值與UEFI NVRAM變數與設定值記錄檔中的記錄進行比對,以判斷此次BIOS設定值與UEFI NVRAM變數是否發生變化。若BIOS設定值或UEFI NVRAM變數發生了變化,則表示此次BIOS開機行為包括異常事件。
在一些例子中,上述所有比對都必須由處理器111來進行。然而,在一些例子中,在處理器111與BMC 113溝通後,部分的比對(例如,周邊硬體裝置的比對或部分設定值的比對)可以由BMC 113來與處理器111協作進行。
若在步驟S310中控制裝置110判斷此次BIOS開機行為不包括異常事件,則進入步驟S312來繼續進行開機,例如將控制權交給作業系統以繼續進入作業系統階段。
若在步驟S310中控制裝置110判斷此次BIOS開機行為包括異常事件,則進入步驟S314,控制裝置110會執行對應於異常事件的操作,例如停止開機,或是發出警報聲響、透過簡訊或電子郵件等方式通知電子系統的管理者等提示操作等等。
在一些實施例中,只要控制裝置110判斷BIOS開機行為出現異常,便會將此異常事件記錄到BMC 113的第二記憶體123當中。上述的異常事件例如是記錄為系統事件記錄檔,但本發明並不限於此。
如此一來,即使有駭客透過BIOS本身的程式漏洞來進行攻擊,例如跳過特定的開機步驟或修改特定的設定值或參數等等,也能夠被控制裝置110所偵測出來。
綜上所述,本發明實施例所提出的韌體安全防護系統與使用此方法的電子系統,利用預先建立並記錄在記憶體中的行為參考檔來檢查BIOS開機行為,能夠將韌體的防護提高到一開機就開始保護,並且在BIOS開機階段偵測出非預期的BIOS開機行為,提升電子系統的安全性。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100a、100b:電子系統
110:控制裝置
111:處理器
113:基板管理控制器(BMC)
120:記憶體裝置
121:第一記憶體
123:第二記憶體
200:開機流程
S1、S2、S3、S4、S5:階段
S302、S304、S306、S308、S310、S312、S314:韌體安全防護方法的步驟
t0、t1、t2、t3、t4、t5:時間點
圖1A繪示本發明一實施例的電子系統的示意圖。
圖1B繪示本發明另一實施例的電子系統的示意圖。
圖2繪示本發明一實施例的UEFI BIOS開機流程的示意圖。
圖3繪示本發明一實施例的韌體安全防護方法的流程圖。
S302、S304、S306、S308、S310、S312、S314:韌體安全防護方法的步驟
Claims (20)
- 一種韌體安全防護方法,適用於一電子系統,所述電子系統包括一處理器、耦接於該處理器的一第一記憶體以及一控制裝置,所述韌體安全防護方法包括:透過所述控制裝置設定監控所述電子系統的至少一監控項目,其中該至少一監控項目的每一者分別對應於該電子系統的該第一記憶體中的至少一行為參考檔中之一者;在該電子系統的開機階段中,透過所述處理器與所述控制裝置溝通,以使得該處理器從該第一記憶體載入與設定的該至少一監控項目所對應的該至少一行為參考檔;以及根據該至少一監控項目所對應的該至少一行為參考檔透過所述處理器與所述控制裝置協作檢查該電子系統的一基本輸入輸出系統(Basic Input/Output System,BIOS)開機行為是否包括異常事件。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中在設定該至少一監控項目的步驟之前,更包括:在該電子系統成功開機後,根據該電子系統的一成功BIOS開機行為建立該至少一行為參考檔;以及將所建立的該至少一行為參考檔寫入該第一記憶體。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中該行為參考檔是用來作為該BIOS開機行為之樣板。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中該至少一監控項目包括BIOS開機流程、BIOS開機時間、硬體架構變化、BIOS設定值以及UEFI NVRAM變數的至少其中之一。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中該至少一行為參考檔包括一開機記錄檔。
- 如申請專利範圍第5項所述的韌體安全防護方法,其中根據該至少一監控項目所對應的該至少一行為參考檔透過所述處理器與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件的步驟包括:根據該開機記錄檔判斷該BIOS開機行為的一BIOS開機流程是否發生變化。
- 如申請專利範圍第5項所述的韌體安全防護方法,其中根據該至少一監控項目所對應的該至少一行為參考檔透過所述處理器與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件的步驟包括:根據該開機記錄檔判斷該BIOS開機行為的一開機時間是否正常。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中該至少一行為參考檔包括一硬體架構檔,其中根據該至少一監控項目所對應的該至少一行為參考檔透過所述處理器與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件的步驟包括: 根據該硬體架構檔判斷該BIOS開機行為是否包括硬體架構變化。
- 如申請專利範圍第1項所述的韌體安全防護方法,其中該電子系統更包括耦接所述控制裝置的第二記憶體,其中在根據該至少一監控項目所對應的該至少一行為參考檔透過所述處理器與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件之後,所述韌體安全防護方法更包括:透過該控制裝置將該異常事件記錄到該第二記憶體當中以反應判斷該BIOS開機行為出現異常;以及透過該處理器執行對應該異常事件的一操作。
- 如申請專利範圍第9項所述的韌體安全防護方法,其中該操作包括停止開機、發出警報聲響、建立對應該異常事件的一記錄檔以及通知該電子系統的一管理者的至少其中之一。
- 一種電子系統,包括:一第一記憶體,用以記錄至少一行為參考檔;一處理器,耦接該第一記憶體;以及一控制裝置,耦接於該處理器,並且用以:設定監控所述電子系統的至少一監控項目,其中該至少一監控項目的每一者分別對應於該至少一行為參考檔中之一者;其中該處理器與所述控制裝置溝通,並且該處理器用以:在該電子系統的開機階段中,透過所述控制裝置從該第一記憶體載入與設定的該至少一監控項目所對應的該至少一行為 參考檔;以及根據該至少一監控項目所對應的該至少一行為參考檔透過與所述控制裝置協作檢查該電子系統的一基本輸入輸出系統(Basic Input/Output System,BIOS)開機行為是否包括異常事件。
- 如申請專利範圍第11項所述的電子系統,其中該控制裝置在設定該至少一監控項目之前,更用以:在該電子系統成功開機後,根據該電子系統的一成功BIOS開機行為建立該至少一行為參考檔;以及將所建立的該至少一行為參考檔寫入該第一記憶體。
- 如申請專利範圍第12項所述的電子系統,其中該行為參考檔是用來作為該BIOS開機行為之樣板。
- 如申請專利範圍第12項所述的電子系統,其中該至少一監控項目包括BIOS開機流程、BIOS開機時間、硬體架構變化、BIOS設定值以及UEFI NVRAM變數的至少其中之一。
- 如申請專利範圍第11項所述的電子系統,其中該至少一行為參考檔包括一開機記錄檔。
- 如申請專利範圍第15項所述的電子系統,其中該處理器根據該至少一監控項目所對應的該至少一行為參考檔透過與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件時,包括:根據該開機記錄檔,判斷該BIOS開機行為的一BIOS開機流程是否發生變化。
- 如申請專利範圍第15項所述的電子系統,其中該處理器根據該至少一監控項目所對應的該至少一行為參考檔透過與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件時,包括:根據該開機記錄檔,判斷該BIOS開機行為的一開機時間是否正常。
- 如申請專利範圍第11項所述的電子系統,其中該至少一行為參考檔包括一硬體架構檔,其中該處理器根據該至少一監控項目所對應的該至少一行為參考檔透過與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件時,包括:根據該硬體架構檔,判斷該BIOS開機行為是否包括一硬體變化事件。
- 如申請專利範圍第11項所述的電子系統,其中該電子系統更包括耦接所述控制裝置的第二記憶體,其中在該處理器根據該至少一監控項目所對應的該至少一行為參考檔透過與所述控制裝置協作檢查該電子系統的該BIOS開機行為是否包括該異常事件之後,所述控制裝置更用以透過該控制裝置將該異常事件記錄到該第二記憶體當中以反應判斷該BIOS開機行為出現異常,所述處理器更用以執行對應該異常事件的一操作。
- 如申請專利範圍第19項所述的電子系統,其中該操作包括停止開機、發出警報聲響、建立對應該異常事件的一記錄檔以及通知該電子系統的一管理者的至少其中之一。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108101443A TWI750442B (zh) | 2019-01-15 | 2019-01-15 | 韌體安全防護方法與使用此方法的電子系統 |
CN201910144988.1A CN111435311B (zh) | 2019-01-15 | 2019-02-27 | 固件安全防护方法与使用此方法的电子系统 |
US16/372,441 US11341249B2 (en) | 2019-01-15 | 2019-04-02 | Firmware security guarding method and electronic system using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108101443A TWI750442B (zh) | 2019-01-15 | 2019-01-15 | 韌體安全防護方法與使用此方法的電子系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202029039A TW202029039A (zh) | 2020-08-01 |
TWI750442B true TWI750442B (zh) | 2021-12-21 |
Family
ID=71516364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108101443A TWI750442B (zh) | 2019-01-15 | 2019-01-15 | 韌體安全防護方法與使用此方法的電子系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11341249B2 (zh) |
CN (1) | CN111435311B (zh) |
TW (1) | TWI750442B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11861011B2 (en) * | 2019-06-25 | 2024-01-02 | ZPE Systems, Inc. | Secure boot process |
CN115398389A (zh) * | 2020-05-11 | 2022-11-25 | 英特尔公司 | Os管理的bios模块 |
TWI761027B (zh) * | 2021-01-08 | 2022-04-11 | 瑞昱半導體股份有限公司 | 可應用於透過動態電壓改變來進行系統保護之積體電路 |
CN114815952B (zh) * | 2021-01-18 | 2024-03-01 | 瑞昱半导体股份有限公司 | 能应用于通过动态电压改变来进行系统保护的集成电路 |
TWI804879B (zh) * | 2021-05-31 | 2023-06-11 | 華邦電子股份有限公司 | 記憶體儲存裝置及其操作方法 |
US11501807B1 (en) | 2021-06-08 | 2022-11-15 | Winbond Electronics Corp. | Memory storage apparatus and operating method thereof |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201143322A (en) * | 2010-05-20 | 2011-12-01 | Hon Hai Prec Ind Co Ltd | Contacts client server and method for monitoring function test of the client server |
TW201617870A (zh) * | 2014-11-13 | 2016-05-16 | 神達電腦股份有限公司 | 開機方法 |
TW201712543A (zh) * | 2015-09-29 | 2017-04-01 | 鴻海精密工業股份有限公司 | 伺服器故障檢測裝置及方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050132177A1 (en) | 2003-12-12 | 2005-06-16 | International Business Machines Corporation | Detecting modifications made to code placed in memory by the POST BIOS |
TWI470420B (zh) * | 2011-04-27 | 2015-01-21 | Wistron Corp | 除錯方法及電腦系統 |
CN106662994B (zh) | 2014-09-23 | 2020-01-03 | 惠普发展公司有限责任合伙企业 | 检测系统管理模式bios代码的改变 |
CN106250725A (zh) | 2016-08-02 | 2016-12-21 | 浪潮电子信息产业股份有限公司 | 一种arm平台防止uefi程序被非法移植的方法 |
US10599521B2 (en) * | 2017-04-13 | 2020-03-24 | Dell Products, L.P. | System and method for information handling system boot status and error data capture and analysis |
US10733077B2 (en) * | 2017-12-28 | 2020-08-04 | Intel Corporation | Techniques for monitoring errors and system performance using debug trace information |
CN108897575B (zh) * | 2018-06-11 | 2022-04-22 | 联想(北京)有限公司 | 电子设备的配置方法以及配置系统 |
-
2019
- 2019-01-15 TW TW108101443A patent/TWI750442B/zh active
- 2019-02-27 CN CN201910144988.1A patent/CN111435311B/zh active Active
- 2019-04-02 US US16/372,441 patent/US11341249B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201143322A (en) * | 2010-05-20 | 2011-12-01 | Hon Hai Prec Ind Co Ltd | Contacts client server and method for monitoring function test of the client server |
TW201617870A (zh) * | 2014-11-13 | 2016-05-16 | 神達電腦股份有限公司 | 開機方法 |
TW201712543A (zh) * | 2015-09-29 | 2017-04-01 | 鴻海精密工業股份有限公司 | 伺服器故障檢測裝置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111435311A (zh) | 2020-07-21 |
US11341249B2 (en) | 2022-05-24 |
US20200226262A1 (en) | 2020-07-16 |
CN111435311B (zh) | 2024-02-06 |
TW202029039A (zh) | 2020-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI750442B (zh) | 韌體安全防護方法與使用此方法的電子系統 | |
US11520894B2 (en) | Verifying controller code | |
US9785596B2 (en) | Redundant system boot code in a secondary non-volatile memory | |
US9734339B2 (en) | Retrieving system boot code from a non-volatile memory | |
EP2989583B1 (en) | Configuring a system | |
US7412596B2 (en) | Method for preventing system wake up from a sleep state if a boot log returned during the system wake up cannot be authenticated | |
US20160055068A1 (en) | Recovering from Compromised System Boot Code | |
CN107665308B (zh) | 用于构建和保持可信运行环境的tpcm系统以及相应方法 | |
US20050132177A1 (en) | Detecting modifications made to code placed in memory by the POST BIOS | |
US8751817B2 (en) | Data processing apparatus and validity verification method | |
TWI779515B (zh) | 用於判定有無篡改統一可擴展韌體介面(uefi)之方法及系統、及相關非暫時性電腦可讀媒體 | |
US20060206764A1 (en) | Memory reliability detection system and method | |
KR101305502B1 (ko) | 컴퓨터 시스템 및 그 제어 방법 | |
JP6128388B2 (ja) | 情報処理装置 | |
US11755404B2 (en) | Custom baseboard management controller (BMC) firmware stack monitoring system and method | |
KR100977267B1 (ko) | 신뢰할 수 있는 플랫폼에서의 물리적 존재 판정 방법 | |
US11669336B2 (en) | Out-of-band custom baseboard management controller (BMC) firmware stack monitoring system and method | |
US11836502B2 (en) | Multi-boot system and method for a baseboard management controller (BMC) | |
US11714696B2 (en) | Custom baseboard management controller (BMC) firmware stack watchdog system and method | |
CN113742737B (zh) | 计算机主板芯片安全管理方法、装置、计算机设备 | |
CN117193863B (zh) | 主机引导程序的启动方法、装置、系统和处理器 | |
WO2022025927A1 (en) | Operational change control action |