TW531712B - Protected boot flow - Google Patents

Protected boot flow Download PDF

Info

Publication number
TW531712B
TW531712B TW090102921A TW90102921A TW531712B TW 531712 B TW531712 B TW 531712B TW 090102921 A TW090102921 A TW 090102921A TW 90102921 A TW90102921 A TW 90102921A TW 531712 B TW531712 B TW 531712B
Authority
TW
Taiwan
Prior art keywords
program
scope
patent application
item
protected
Prior art date
Application number
TW090102921A
Other languages
English (en)
Inventor
Christopher J Spiegel
Andrew H Gafken
Robert P Hale
William A Stevens Jr
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Application granted granted Critical
Publication of TW531712B publication Critical patent/TW531712B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

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

Description

531712 五、發明說明(1) 1 ·發明領域 ^明背景 本發明一般說來乃 地說,乃有關於受保護啟統之啟動程4 更改。 *^序,可防錢“序遭^ 2 ·相關技術說明 在電腦系統能運作前, 腦的資源可以被其他軟體3己憶體中必須有作業系統, 制。我們想使不同種類^ °不同的應用程式)取得並控 樣的電腦系統硬體中, 的作業系統都可以载入至同 性、相對較簡單的自我啟動,=標,電腦硬體具有非揮發 能,並自碟片中載入更複ς ς舻可以初始化多種基本功 個階段的程式載入,每下L個=。啟動程序可以包括多 更強但更容易更動的程式,】2二就可載,更複雜、功能 傳續的么试士 直至丨載入作業系統本身Α μ 冷開機(一開始硬體的電源杲閃閂认、重置力月匕。這可能是 源已經打開了,但部份處在未知的邏輯狀態下)更= 他種開機狀況。t置的種類會影響啟動程序必帛執次疋其 些特定功能,但普遍來說並不會改變整體的啟動程^。、〃、 重置功能通常會產生一重置中斷向量,將系統導引至 揮發性記憶體中的程式,並自該處開始執行。此程式通常 是儲存在快閃(f 1 a sh)記憶體中的基本輸入輸出系統 ^ (Basic Input-Output System,簡稱BIOS)。BIOS可以致能 基本輸入輸出的控制、分支至某選用的唯讀記憶體中以致
第4頁 531712 五、發明說明(2) 能在特定系統中有效的選項,然後分支回到B I 0 S程式,以 完成初始化動作,並將作業系統自碟片載入至主記憶體 中。雖然此類系統中大部份的硬體是由電腦供應商提供, 但BIOS與選用唯讀記憶體(option ROM)通常是由第三者提 供,因此電腦供應商對這些項目的特殊内容通常所知有 限,也不太能夠掌控它們。此外,在電腦内的B I 0S與選用 唯讀記憶體兩者通常是可重覆程式化的,因此在系統安裝 過後,很容易遭受竄改。因為無法分辨B I 0S或是選用唯讀 記憶體是否遭受竄改,於是造成安全上的問題。而廣泛受 到關注的駭客入侵與電腦病毒事件,讓此問題更加令人煩 惱,因為系統很可能被未知且可能無法偵測的方法給破 壞。 因此,電腦供應商想要能夠查証自我啟動程序就是他們 要的那一個,任何未經授權的序列改變都能在啟動的時候 偵測出來,俾中斷啟動程序,並調查其中的問題。 發明摘要 本發明涵括一種啟動作業系統的方法,包括超動一重置 功能、執行受保護程式、確認B I 0S程式是否有效、執行 BIOS程式。 # 附圖之簡單說明 圖1係啟動程序之示意圖。 圖2係韌體中心區分段設計圖。 圖3係一另一種啟動程序的示意圖。 詳細說明
531712 五、發明說明(3) ' ------ 本舍明引進一組或多组受伴错的;A,罢# 的痒列中,4 “ 令置於不會被更改 的序列中忒序列可驗証部份其餘的啟動程序是否*效, 故在面彌補傳統啟動程序的不足。圖1係此系統""之"一 具體實施例。區塊丨0包含非揮發性記憶體,内有啟動程序 會2用到的指令與資料。韌體中心區(FWH)丨2為非揮發性 記憶體區塊’包含用來控制並確認啟動程序的指令(碼)。 B I OS 1 4為非揮發性記憶體區塊,其中可能包含一相當標 準的BIOS ’但修改成可以和FWH 12互相作用。 當系統啟動時,會喚起系統重置向量1 6,導引處理器開 始執行位於F WH 1 2之次區塊2 1中、韌體中心A(以下稱作 FWH — A)内某一特定位址的指令。fwH_A的程式碼會找出 BIOS 1 4的第一個次區塊23,稱為BI OS— A。接著FWH —A 21 驗註B I 0 S與韋刃體中心b (以下稱作F W Η 一 B) 2 5,以碟定其内含 的程式碼與預期相同。轉認的動作可以採取多種形式’這 取決於所需要的安全性層級。一具體實施例為檢查Β I 0S碼 的效驗和,並與儲存在中的值作比較。另一具體實 施例為使用數位簽章,以增加防護系統提供的次·全性。 FWHj可以包括一個表,以確認要實施的安全檢查種類’ 也包括要實施安全檢查的Β I 0 S對象以及執行檢查的程式 碼。 除了確認Β I 0S以外,用來確認並執行選用唯讀記憶體的 程式碼也可以包含在FWH 12或BIOS 14中。選用唯1買記憶 體可以包含在Β I 0 S 1 4内,或是另一個獨立的記丨思體區塊 中。 531712 五、發明說明(4) " --- -- 在驗5正^〇S之後,控制權交給位於BIOS 14中次區塊23 的BIOS j ^式碼手上。M〇Sj程式碼負責將主記憶體初始 化’ ’、定^央處理器重置的類別。開啟啟動程序的中央 ♦ ▲ 胃巧會景彡響啟動期間所執行的特定功能,但不 會改Ϊ動過程。在執行這些功能以後,控制權交給 位於 次區塊25内的FWH — B。FWH B程式碼負責鎖定 FM^(/)Bl〇S Η中不同的快閃記憶體區塊,、 J tί由防止進一步寫入至某-程式碼區•,而使該 王工·’、、品Α保持穩定的過程。這項特性普遍見於FWH 1 2常 使用的快閃記憶體。在被FWH — B鎖定之前,受影響的區塊 可以由啟動程式碼更新。緊接著鎖定之後,這些區塊就益 法在沒有重新執行啟動程序的狀況τ作進—步的修改。 FWH_B也可以載入額外的安全性元件至系統的記憶中,供 稍後使用。FWH —A也可以執行有限次數的鎖定動作。” 、不同的程式碼區塊可以在被鎖定之前更新。處理的方式 通常是在系統關機前’由作業系統將更新區塊寫入至預嗖 的主記憶體位置。當系統關機並重新開機以後,啟程式 會偵測到這些更新過的模組,驗証它們,然後將它 至包含啟動程式的非揮發性記憶體中。在安裝完這些更新 模組後,它們就會受到保護,免於更進一步的變動了 程容許必要的更新動作,但又能保護啟動程序, ^ ^ 間點之後就不會受到未經授權的竄改。 ’、 ^ 完成這些工作之後,控制權便交給位於BIA叩 中、則s_B内的程式石馬程式碼也可以二夕7卜的
531712 五、發明說明(5) 安全性介面,供其繼續執行標準開機自我測試(p〇Wei_Qn self-test,POST)時使用。BIOS 一 B也可依傳統方式分支至 選用唯讀記憶體。B I 0S一B包括作業系統載入器,開始作業 系統1 8載入至記憶體的過程。上述驗証過程的一個目的在 於確認此作業系統載入器的完整性。 圖2顯示韌體中心的内容是如何分配的。在一具體實施 例中,FWH啟動區塊31包含FWH一A程式碼,在生產過^/'中^尤 已經存放在該F W Η内。這可以是受硬體保護的單一 6 4千位 兀組(Κ Β )區塊,系統無法對其更新。此程式碼找出β I 〇 s j
的位置,並實施一驗証程序,以確認以⑽程式碼和預期的 相同。 、’ #B^〇S起始區塊32提供在FWH —A内執行的程式碼,但這通 吊疋由BIOS的供應商提供。它可以包括與“⑽j、bi〇s_】 :面的程式碼、及作為㈣3回復功能的程式㈣未緣於圖 °啟動區塊31與BIOS起始區塊32兩者都包含只有FM Z才㈢直接執行的程式碼。 的^= 一組由一或多個在啟動過程中就已經被鎖定 塊可以^冓成,因此在系統操作時會受到保護。每一個區 Manase別鎖定/快閃式媒體管理員(Flash Media 料。但Γ曰以下簡稱FMM)可以用來更新此鎖定區内的資 序中::壬何想要寫入此區的動作都得在鎖定前的啟動程 寫入=區旦這些區塊被鎖定,FWH硬體就會防止任何 除鎖定⑽σ思體的動作。$些區塊只能藉由重設FWH而解 ,而此過程只會發生在中央處理單元重置時。要更
第8頁 531712 五、發明說明(6) 新這些區塊’得先將欲更新的 中央處理單元重置。在保護啟動^ :己憶體中’再起動 偵測出來,並且在鎖定區直正=仃日守,此映像會被 其内容。 ,、正破鎖定之前用此映像來更新 未鎖定區3 4是由一或多組本、 _ 可以在此做寫入的動作。只要I鎖疋的區塊所組成,因此 任意大小。這些區塊内的所:::足肖,這些區塊可以為 圖2每個功能所能分配到的貝料都可糟由刚來管理。 特定系統種類的需求而定上塊數目是可以選擇的,依 在開始設計FWH與BI〇S程式碼時般兵的定丨青況是由BI0S的供應商 主要部份:FWH_A、BI0S A下’ /刀別描述了圖1的四個 FWH_A ~ FWH-B 以及BIOS—B 。 二ΑΛ式碼負責執行處理器模式的切換,…認系 #充内的权式碼。特別是它必彡百 ^ -V ^ y員在將控制權交給Β I 0S起始區 = 先對整個區塊進行確認。確認動作可藉由使用 或是更複雜的驗言正方式來完成。所有在此區内的程 ΐ:應該在不需要記憶體資源的狀態(或僅需有限的記 十思脰資源)下執行。 當回復更新區塊(矯正區塊)是可用的時候,其他安全性 軟體可以在抹除BI 起始區塊前先將其内容備份起來,然 $在更新程序中寫入新的BI0S起始區塊。萬一在更新動作 元成如’電源中斷了 ,這個備份就可以用來更新。PWjj a 私式碼决疋究竟是BIOS起始區塊或是矯正區塊内含有效的
第9頁 531712 五、發明說明(7) ^ 映像。 FW Η一A可以是重置處理器以後第一塊執行的程式碼。此 程式碼必須在不需初始化隨機存取記憶體的情況下執行 它由FWH啟動區塊提供,是可以信賴的程式碼。FWH —A執、 下列的功能· 1 )啟動向量-重置處理器時,第一個取得並執行的指令 就在此處。 2 )鎖疋啟動區塊-將啟動區塊彡又為鎖疋狀態。被鎖定的 程式碼是在啟動區塊外執行,因為快閃記憶體在執行自身 的程式碼時不能處於鎖定狀態。 3 )切換模式-將中央處理單元的模式切換成至純3 2位元 的環境。 4 )確認B I 0 S起始區塊-經由預設的方法執行確認的動 作,例如檢查效驗和。 5) 若確認動作失敗-結果不外是a)發出警告訊息並中止 系統’或是b)找出矯正區塊中的備份BIQS起始區塊並確認 它,如果通過確認則跳至該區塊,如果不能通過確認,則 發出警告訊息並中止系統。 6) 跳至BI0Sj—如果通過確認步驟4,則跳至BIOS —A程 式碼的進入點。 —
BIOS A
BlO^i程式碼是以⑽中第一塊被執行的程式碼。此程式 動的種類,致能隨機存取記憶體的資源,並 且將控制杻交還給FWH —B 〇BI0Sj的程式碼位於bi〇s起始
531712 五、發明說明(8) 區燒,被FWH一A程式碼呼叫。bi〇s_A碼執行下列的功能: 1)決定重開機-處理器重置的理由有許多種。這些理由 包括自省電睡眠狀態中喚醒、部份重開機、暖開機、冷開 機等等。啟動程序可依重開機種類的不同有些許變化。 2 )致能記憶體--旦重開機的種類決定,B I 0 A程式碼 可以回復記憶體控制器的狀態(暖開機、自睡眠狀態喚 醒)’或是對記憶體做重新初始化與測試的動作(冷開 機)。 3) 没疋FWH —B參數-BI 〇S_A程式碼依據啟動種類指出要 執^ 1路徑。它可以指示其他保護軟體的位置(暖開機), 或疋指不載入其他保護軟體的位置(冷開機)。 4) 跳至FWH —B-在致能記憶體後,BI〇Sj程式碼可藉由 跳至FWH —B進入點的方式,交還控制權給FWH啟動區塊。 此备·式碼負音白甘从^ ^ __ 、貝目其他官理區塊初始化任何相關的保護性 軟體,用以更斩抓# +亦丄 > —y 更新那些需要在啟動程序中被更新的區塊、鎖 =.、然後將控制權交給觀_β。此程式碼可以執行 拍秘心’亚初始化任何相關的暫存器。 啟動種類,此乐_;員刀支(Branch)-根據在6103-八所決定的 入作辈备μ 式碼分支至接下來步驟3的其中一項:載 入㈣糸統、回到作業系統或是進行更新。 呆糸、、先-BIOS —Α的程式碼指示BIOS正在重新載 戰入作蚩备μ
第11頁 531712 五、發明說明(9) :地31相關保護性軟體的介面便應在此BIQS—A所指示 兮4丄::、化:豐(stack)-記憶體資源是可用的,因此痛 5亥將堆豐初始化以供使用。 此應 5 )載入快閃式媒體管理員(F Μ Μ)至7愔娜以 動區塊複製到BIOS ^ 應該自啟 /农巧貝取值指定的記憶體位置中。 ),有需要’執行恢復動作_此時記憶體資源是
ImmV"啟純塊起始區塊更新失敗時可以回復。呼 叫FMM的回復功能即可完成此項工作。 设+ ^鎖定BIOS起始區塊_BI〇s起始區塊應該被鎖定。 :二初初始化灌,包括鎖定區與未鎖定區兩個 4刀亚合迕電力中斷後的回復動作。 的H人相^保護性軟體-可以在此時制步驟3所讀取 的介面載入其他保護程式。 ,10)在失敗時跳躍至BI0S回復_若是FMM鎖定的部份無法 ::b :或是無法找出相關的保護軟體,控制權可以 BIOS回復程式碼。 寻芏 11)鎖定區塊-鎖定所有鎖定區的區塊。 w 12)跳躍至BI0S-B-將控制權交給FWH内的BI〇s — B載入 器。 — 3) 返回作業系統—BI〇s一a程式碼指出Bi〇s正返回作業 統(例如自睡眠狀態下喚醒)。 /、’、 4) 鎖定區塊-不使用記憶體的資源,所有位於鎖定區的 區塊以及BIOS起始區塊都會被鎖定。
第12頁 531712 五、發明說明(ίο) 5) 切換至真實模式—在開啟映射記 前,處理器先回到真實模式。 -G體肀的W 〇s映像之 6) 跳躍至BI〇S相容^/動向量一將控 體中的B I OS映像。 市】%又口映射於記憶 3 )更新-B I 0 S A程式派扣-雜—广 —枉式碼&不鎖疋區正在進行更新, 要執仃可k任的更新請求。 應垓 4) 初始化堆疊—找出堆疊的位置並進行設定。 5) 確5忍有關的保護程式碼—任何有關的保護程式碼 該先確認過,以確保安全性軟體本身也是安全有效的。^ 6) 確说更新請求,並載入之—確認請求更新的 載入至記憶體中。 亚 7 )執行更新請求-將控制權交給更新請求,此更新於 會找出更新映像檔,檢查並載入它。 , 8 )執行冷開機—起動一個完整的重開機。
BIOS—B 、BIOS— B的程式碼通常負責載入標準的bios,因此可視其 ,一BIOS載入器。實際上事件順序通常交由BI0S供應商^ 定,但可以依下列步驟: 1)載入BIOS至記憶體中—一旦載入至記憶體中,BIOS —B 程式碼即可將B I 〇S程式碼解壓縮。 2 )影像初始化-通常能愈早將影像輸出至螢幕愈好。 一 3 )執行完整的記憶體測試—只有/部份的低位址記憶體 會在啟動程序執行到B丨〇Sj時被初始化。此步驟可以測試 並初始化剩下的記憶體。
531712 五、發明說明(11) ' ~ -- 4) 初始化系統其他的部份。 5) 重^新安置有關的保護程式碼-此程式碼通常也位於記 憶體的南位址處’故此步驟將它移到前一個步驟的SMΜ碼 之下。相關表格可在其他處找到。 6) POST元2的開機自我測試(p〇wer —〇n seif — Test)。 另一具體實施例繪於圖3。FWH啟動區塊43包括子區塊44 中的BIOS一A程式碼,以及子區塊41中的FWH —B程式碼。 BIOS —A程式碼可由BI〇s製造者提供,而fwh — b程式碼可由 BIOS衣仏者或疋第二者提供。BI〇s — A程 =程式:便一起儲存在… :蒦子ί ί ? 裝置40的另外一部份中,可能沒有受到保 不會被修改,尊争i — 式在執行期間由硬體保護而 贫^勃二士 ,匕只能經由B1 os j的程式碼。因此系 更:執仃才啟動區塊43會受到保護,+會受到未經授權的 系統的重置向量42會使系統執行Μ 的指令。BI0S_A程式碼負責啟動 -中某一預疋位址 出F物式碼—B程憶體並找 期一般。接下來FWH — B程式碼將_ = y後者的内容如預 石馬,然後繼續系統的初始化工^制推/給BI0S-B程式 以上說明乃是示範之用,並二作業系統46。 技術之人士可做其他的變化。其中的做法。熟悉此 中’而本發明只限定在所附申:以皆涵括在本發明之 〇月專利乾圍的範疇與精神。
第14頁

Claims (1)

  1. 531712 _案號90102921_年A月/ λ曰 修正_ 六、申請專利範圍 1 . 一種於電腦系統中啟動軟體之方法,由下列各項組 成: 啟始重置功能; 執行第一個受保護程式; 確認基本輸入輸出糸統(Β I〇S)程式,以及 執行Β I 0 S程式。 2 .如申請專利範圍第1項之方法,其中執行Β I OS程式包 括確認並執行一作業系統載入器。 3 .如申請專利範圍第1項之方法,其中確認動作包括找 出BIOS程式的位置。 4.如申請專利範圍第1項之方法,其中起始動作包括分 支到第一個受保護程式中啟動程序的進入點。 5 .如申請專利範圍第1項之方法,其中執行Β I 0S程式包 括初始化主記憶體。 6 .如申請專利範圍第1項之方法,其中執行Β I 0S程式包 括決定重置種類。 7 .如申請專利範圍第1項之方法,其中確認動作包括鎖 定第一個受保護程式與Β I 0 S程式兩者之中至少一個的一部 份。 8 .如申請專利範圍第1項之方法,其中確認Β I 0S程式包 括確認第二個受保護程式,而執行Β I 0 S程式包括執行第二 個受保護程式。 9 .如申請專利範圍第8項之方法,其中第二個受保護程 式是位於選用唯讀記憶體中的程式。
    O:\68\68641-920212.ptc 第16頁 531712 _案號90102921_年工月/Λ曰 修正_ 六、申請專利範圍 1 0 .如申請專利範圍第1項之方法,其中確認Β I 0 S程式包 括確認與安裝更新模組。 1 1. 一種於電腦系統中啟動軟體之方法,由下列各項組 成: 啟始重置功能; 執行第一個受保護程式; 至少確認第一與第二個BIOS程式兩者當中的其中一 個; 執行第一個Β I 0 S程式; 執行第二個受保護程式;以及 執行第二個Β I 0 S程式。 1 2.如申請專利範圍第1 1項之方法,其中起始動作包括 分支至第一個受保護程式中啟動程序的進入點。 1 3.如申請專利範圍第1 1項之方法,其中執行第一個受 保護程式包括確認第一與第二個Β I 0 S程式當中至少一個。 1 4.如申請專利範圍第1 1項之方法,其中執行第一個 Β I 0 S程式包括初始化主記憶體。 1 5.如申請專利範圍第1 1項之方法,其中執行第一個 Β I 0 S程式包括決定重置種類。 1 6.如申請專利範圍第1 1項之方法,其中在執行第一個 與第二個受保護程式時至少一次包括鎖定資料區塊的動 作,資料區塊包含於第一與第二個受保護程式、第一與第 二個BIOS程式當中的至少一個内。 1 7.如申請專利範圍第1 1項之方法,其中執行第二個受
    O:\68\68641-920212.ptc 第17頁 531712 _案號90102921_年厶月/二日 修正_ 六、申請專利範圍 保護程式包括載入額外的安全性元件至記憶體中。 1 8.如申請專利範圍第1 1項之方法,其中在執行第一與 第二個受保護程式時,至少一次包含確認作業系統載入器 的動作。 1 9.如申請專利範圍第1 8項之方法,更進一步包括執行 作業系統載入器。 2 〇.如申請專利範圍第1 1項之方法,其中確認動作包括 確認選用唯讀記憶體。 2 1.如申請專利範圍第2 0項之方法,其中執行第一與第 二個B I 0 S程式時,至少一次包含執行已確認的選用唯讀記 憶體程式。 2 2.如申請專利範圍第1 1項之方法,其中確認動作包括 確認並安裝更新权組。 2 3. —種機械可讀之媒體,其上已儲存一些指令,被至 少一個處理器執行時會使該處理器實施下列程序: 啟始重置功能; 執行受保護程式; 確認B I 0 S程式;以及 執行B I 0 S程式。 24. —種用來啟動軟體之裝置,由以下單元組成: 第一個記憶體區塊,包含第一個受保護的程式序列; 以及 第二個記憶體區塊,包含第二個程式序列,作為起動 一電腦系統之用;
    O:\68\68641-920212.ptc 第18頁 531712 _案號 90102921_p年丄月f上日__ 六、申請專利範圍 其中第一個程式序列包含確認第二個程式序列並將控 制權傳遞至第二個程式序列的指令。 2 5.如申請專利範圍第2 4項之裝置,其中第一個程式序 列包括一些程式碼,能鎖定第一與第二個記憶體區塊兩者 當中至少一個的一部份。 2 6.如申請專利範圍第24項之裝置,其中第二個程式序 列包括BIOS程式序列。 2 7.如申請專利範圍第2 4項之裝置,其中第一與第二個 程式序列當中至少一個會包括一些指令,能鎖定第一與第 二個記憶體區塊兩者當中至少一個的一部份。 2 8.如申請專利範圍第2 4項之裝置,其中第一與第二個 程式序列兩者當中至少一個包括確認選用唯讀記憶體的指 〇 2 9.如申請專利範圍第2 4項之裝置,其中第一與第二個 程式序列兩者當中至少一個包括確認並安裝更新模組的指 〇 3 0.如申請專利範圍第2 4項之裝置,其中第一個程式序 列包含找出第二個程式序列的程式碼。
    O:\68\68641-920212.ptc 第19頁
TW090102921A 2000-02-11 2001-03-13 Protected boot flow TW531712B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/503,046 US6711675B1 (en) 2000-02-11 2000-02-11 Protected boot flow

Publications (1)

Publication Number Publication Date
TW531712B true TW531712B (en) 2003-05-11

Family

ID=24000548

Family Applications (1)

Application Number Title Priority Date Filing Date
TW090102921A TW531712B (en) 2000-02-11 2001-03-13 Protected boot flow

Country Status (8)

Country Link
US (1) US6711675B1 (zh)
JP (1) JP2003525484A (zh)
KR (1) KR20030044901A (zh)
CN (1) CN1318963C (zh)
AU (1) AU2001227684A1 (zh)
GB (1) GB2376327B (zh)
TW (1) TW531712B (zh)
WO (1) WO2001059564A2 (zh)

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003521777A (ja) * 2000-02-04 2003-07-15 インサイド ソフトウェア インク オペレーティングシステムをロードする前にオペレーティングシステムの起動シーケンスを変更するためのシステムと方法
US6986052B1 (en) 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
US6954765B2 (en) * 2000-12-30 2005-10-11 Intel Corporation Updating a file in a fragmented file system
GB2373604B (en) 2001-03-23 2004-10-27 Ibm A method and system for controlling use of software programs
US8200988B2 (en) * 2001-08-03 2012-06-12 Intel Corporation Firmware security key upgrade algorithm
US6965989B1 (en) * 2001-08-14 2005-11-15 Network Appliance, Inc. System and method for fast reboot of a file server
US7237126B2 (en) * 2001-09-28 2007-06-26 Hewlett-Packard Development Company, L.P. Method and apparatus for preserving the integrity of a management subsystem environment
JP3677252B2 (ja) 2002-03-22 2005-07-27 株式会社東芝 情報機器、記憶媒体、及び初期状態復元方法
US7024581B1 (en) 2002-10-09 2006-04-04 Xpoint Technologies, Inc. Data processing recovery system and method spanning multiple operating system
US20040123093A1 (en) * 2002-12-20 2004-06-24 Rothman Michael A. Method and apparatus for loading BIOS and option ROM's from alternate locations
GB0309182D0 (en) 2003-04-23 2003-05-28 Hewlett Packard Development Co Security method and apparatus using biometric data
US20050005136A1 (en) * 2003-04-23 2005-01-06 Liqun Chen Security method and apparatus using biometric data
US20040268139A1 (en) * 2003-06-25 2004-12-30 Microsoft Corporation Systems and methods for declarative client input security screening
US7464256B2 (en) 2003-09-18 2008-12-09 Aristocrat Technologies Australia Pty. Limited Bios protection device preventing execution of a boot program stored in the bios memory until the boot program is authenticated
US7149890B2 (en) * 2003-11-21 2006-12-12 Intel Corporation Initializing system memory
US7509636B2 (en) * 2003-12-15 2009-03-24 Microsoft Corporation System and method for updating files utilizing delta compression patching
US7325176B2 (en) * 2004-02-25 2008-01-29 Dell Products L.P. System and method for accelerated information handling system memory testing
US7243221B1 (en) * 2004-02-26 2007-07-10 Xilinx, Inc. Method and apparatus for controlling a processor in a data processing system
US7694121B2 (en) * 2004-06-30 2010-04-06 Microsoft Corporation System and method for protected operating system boot using state validation
US7210033B1 (en) * 2004-10-15 2007-04-24 American Megatrends, Inc. Method, system, and computer-readable medium for enabling multi-segmented recovery of basic input output system program code in a computer system
US20060149954A1 (en) * 2004-12-03 2006-07-06 Matt Hageman Apparatus and method for accommodating different central processing units in a computer
KR100654446B1 (ko) * 2004-12-09 2006-12-06 삼성전자주식회사 보안 부팅 장치 및 방법
US20060179308A1 (en) * 2005-02-07 2006-08-10 Andrew Morgan System and method for providing a secure boot architecture
US7793347B2 (en) * 2005-02-07 2010-09-07 Rozas Guillermo J Method and system for validating a computer system
US8078740B2 (en) * 2005-06-03 2011-12-13 Microsoft Corporation Running internet applications with low rights
US8239939B2 (en) * 2005-07-15 2012-08-07 Microsoft Corporation Browser protection module
US8225392B2 (en) * 2005-07-15 2012-07-17 Microsoft Corporation Immunizing HTML browsers and extensions from known vulnerabilities
US8966284B2 (en) * 2005-09-14 2015-02-24 Sandisk Technologies Inc. Hardware driver integrity check of memory card controller firmware
CN100437502C (zh) 2005-12-30 2008-11-26 联想(北京)有限公司 基于安全芯片的防病毒方法
CN100373337C (zh) * 2006-01-20 2008-03-05 北京朗通环球科技有限公司 一种嵌入式系统的引导系统
EP1826697A1 (en) * 2006-02-24 2007-08-29 Giga Games System, SL Method for booting and using software for AWP and B type amusing gaming machines, and for C type casino machines
SE531992C2 (sv) * 2006-02-24 2009-09-22 Oniteo Ab Metod och system för säker programvaruprovisionering
US7624260B2 (en) * 2006-05-04 2009-11-24 Qnx Software Systems Gmbh & Co. Kg System executing a fast boot wake-up
US7660977B2 (en) * 2006-06-08 2010-02-09 Intel Corporation System and method to control microcode updates after booting an operating system in a computing platform
US7424398B2 (en) 2006-06-22 2008-09-09 Lexmark International, Inc. Boot validation system and method
US8185737B2 (en) 2006-06-23 2012-05-22 Microsoft Corporation Communication across domains
WO2008096891A1 (ja) * 2007-02-09 2008-08-14 Ntt Docomo, Inc. 端末装置及びソフトウエア検査方法
US8190869B2 (en) * 2007-04-17 2012-05-29 Lexmark International, Inc. Dual boot strategy to authenticate firmware in a computing device
US10019570B2 (en) 2007-06-14 2018-07-10 Microsoft Technology Licensing, Llc Protection and communication abstractions for web browsers
US20090013192A1 (en) * 2007-07-03 2009-01-08 Ping-Sheng Chen Integrity check method applied to electronic device, and related circuit
CN100454324C (zh) * 2007-09-21 2009-01-21 武汉大学 一种可信机制上的嵌入式平台引导方法
US8195927B2 (en) * 2007-10-31 2012-06-05 International Business Machines Corporation Expedient preparation of memory for video execution
TW200945200A (en) * 2008-04-22 2009-11-01 Asustek Comp Inc Computer system, BIOS structure and power-on method thereof
CN101639877B (zh) * 2008-07-30 2011-06-22 和硕联合科技股份有限公司 电子装置及其更新基本输入输出系统方法
TWI467484B (zh) * 2008-12-17 2015-01-01 Universal Scient Ind Shanghai 自我驗證選用唯讀記憶體之基本輸出入系統及其驗證方法
US8832454B2 (en) * 2008-12-30 2014-09-09 Intel Corporation Apparatus and method for runtime integrity verification
CN101807152B (zh) * 2009-02-13 2013-10-23 环旭电子股份有限公司 自我验证选择只读存储器的基本输出入系统及其验证方法
US8538587B2 (en) * 2009-05-21 2013-09-17 Lennox Industries Inc. HVAC system with automated blower capacity dehumidification, a HVAC controller therefor and a method of operation thereof
TW201115341A (en) * 2009-10-20 2011-05-01 Inventec Corp Method for protecting redundant data
EP2570956A1 (en) * 2010-05-11 2013-03-20 Suginaka, Junko External boot device, external boot program, external boot method and network communication system
CN103299275B (zh) * 2010-11-29 2017-03-15 汤姆逊许可公司 用于区别冷启动和热启动的方法和设备
CN102681860A (zh) * 2011-03-11 2012-09-19 宏碁股份有限公司 定制基本输入输出系统的方法及相关电脑系统
US9015455B2 (en) * 2011-07-07 2015-04-21 Intel Corporation Processsor integral technologies for BIOS flash attack protection and notification
CN103946806B (zh) * 2011-09-29 2017-06-16 英特尔公司 用于提供存储器访问控制的装置、系统和方法
WO2013048458A1 (en) 2011-09-30 2013-04-04 Hewlett-Packard Development Company, L.P. Option read-only memory use
IN2014DN03052A (zh) 2011-10-21 2015-05-08 Hewlett Packard Development Co
DE112011105752T5 (de) 2011-10-21 2014-10-02 Hewlett-Packard Development Company, L.P. Webbasierte Schnittstelle zum Zugriff auf eine Funktion eines Basic Input/Output-Systems
US20130117006A1 (en) * 2011-11-07 2013-05-09 Microsoft Corporation Simulated boot process to detect introduction of unauthorized information
US9411748B2 (en) 2011-12-20 2016-08-09 Intel Corporation Secure replay protected storage
WO2013095387A1 (en) 2011-12-20 2013-06-27 Intel Corporation Secure replay protected storage
US8386763B1 (en) * 2012-01-04 2013-02-26 Google Inc. System and method for locking down a capability of a computer system
US9390278B2 (en) 2012-09-14 2016-07-12 Freescale Semiconductor, Inc. Systems and methods for code protection in non-volatile memory systems
TWI564747B (zh) * 2012-10-19 2017-01-01 威盛電子股份有限公司 電子裝置與安全開機方法
US9600291B1 (en) * 2013-03-14 2017-03-21 Altera Corporation Secure boot using a field programmable gate array (FPGA)
US9335809B2 (en) * 2013-03-15 2016-05-10 Seagate Technology Llc Volatile memory storing system data during low power mode operation and monitoring the voltage supplied to the memory during low power mode
CN105144185B (zh) 2013-04-23 2018-06-05 惠普发展公司,有限责任合伙企业 验证控制器代码和系统启动代码
US10192054B2 (en) * 2013-09-13 2019-01-29 Intel Corporation Automatic pairing of IO devices with hardware secure elements
US9779243B2 (en) * 2013-11-13 2017-10-03 Via Technologies, Inc. Fuse-enabled secure BIOS mechanism in a trusted computing system
US9798880B2 (en) * 2013-11-13 2017-10-24 Via Technologies, Inc. Fuse-enabled secure bios mechanism with override feature
US9129113B2 (en) 2013-11-13 2015-09-08 Via Technologies, Inc. Partition-based apparatus and method for securing bios in a trusted computing system during execution
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
US9767288B2 (en) * 2013-11-13 2017-09-19 Via Technologies, Inc. JTAG-based secure BIOS mechanism in a trusted computing system
US9779242B2 (en) * 2013-11-13 2017-10-03 Via Technologies, Inc. Programmable secure bios mechanism in a trusted computing system
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
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
US9183394B2 (en) * 2013-11-13 2015-11-10 Via Technologies, Inc. Secure BIOS tamper protection mechanism
US9507942B2 (en) * 2013-11-13 2016-11-29 Via Technologies, Inc. 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
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
US10101928B2 (en) * 2016-02-19 2018-10-16 Dell Products L.P. System and method for enhanced security and update of SMM to prevent malware injection
CN106354514B (zh) * 2016-09-23 2019-06-25 成都爱斯顿科技有限公司 一种快速引导申威处理器bios的方法
WO2018119873A1 (en) * 2016-12-29 2018-07-05 Gemalto Smart Cards Technology Co., Ltd. Method for controlling functioning of microprocessor
US11099831B2 (en) * 2018-02-08 2021-08-24 Micron Technology, Inc. Firmware update in a storage backed memory system
CN108416217A (zh) * 2018-03-05 2018-08-17 山东超越数控电子股份有限公司 一种基于单片机的计算机主板bios验证系统及方法
US11243757B2 (en) * 2018-12-03 2022-02-08 Dell Products L.P. Systems and methods for efficient firmware update of memory devices in BIOS/UEFI environment
WO2020159533A1 (en) 2019-02-01 2020-08-06 Hewlett-Packard Development Company, L.P. Security credential derivation
US11520662B2 (en) 2019-02-11 2022-12-06 Hewlett-Packard Development Company, L.P. Recovery from corruption
US11003461B2 (en) * 2019-03-29 2021-05-11 Dell Products L.P. Boot process security self-check system
CN110795738B (zh) * 2019-09-19 2022-05-13 超聚变数字技术有限公司 一种计算机的启动方法和控制器、存储介质以及系统
US12111958B2 (en) * 2021-05-13 2024-10-08 AO Kaspersky Lab Systems and methods for verifying the integrity of a software installation image
CN113591094B (zh) * 2021-07-30 2023-11-14 超越科技股份有限公司 一种基于双bios平台的soc验证装置、方法及存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI75253C (fi) 1983-09-29 1988-06-09 Wellcome Found Pesticidkompositioner foer behandling av timmer, foerfarande foer behandling av timmer och timmer, som behandlats medelst detta foerfarande.
US5022077A (en) * 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system
US5210875A (en) * 1989-08-25 1993-05-11 International Business Machines Corporation Initial bios load for a personal computer system
EP0510244A1 (en) * 1991-04-22 1992-10-28 Acer Incorporated Method and apparatus for protecting a computer system from computer viruses
US5421006A (en) * 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US6018806A (en) 1995-10-16 2000-01-25 Packard Bell Nec Method and system for rebooting a computer having corrupted memory using an external jumper
US5802592A (en) 1996-05-31 1998-09-01 International Business Machines Corporation System and method for protecting integrity of alterable ROM using digital signatures
US5805882A (en) 1996-07-19 1998-09-08 Compaq Computer Corporation Computer system and method for replacing obsolete or corrupt boot code contained within reprogrammable memory with new boot code supplied from an external source through a data port
US5793943A (en) 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
US6070240A (en) * 1997-08-27 2000-05-30 Ensure Technologies Incorporated Computer access control
US6223284B1 (en) * 1998-04-30 2001-04-24 Compaq Computer Corporation Method and apparatus for remote ROM flashing and security management for a computer system
US6138239A (en) * 1998-11-13 2000-10-24 N★Able Technologies, Inc. Method and system for authenticating and utilizing secure resources in a computer system
US6408387B1 (en) * 1999-01-22 2002-06-18 Intel Corporation Preventing unauthorized updates to a non-volatile memory
US6571347B1 (en) * 1999-05-24 2003-05-27 Winbond Electronics Corporation Apparatus and method for intelligent computer initiation program recovery
US6473853B1 (en) * 1999-06-21 2002-10-29 Intel Corporation Method and apparatus for initializing a computer system that includes disabling the masking of a maskable address line
US6564317B1 (en) * 1999-12-20 2003-05-13 Intel Corporation Method and apparatus for securing computer firmware wherein unlocking of nonvolatile memory is prohibited unless address line masking Is disabled during an initialization event

Also Published As

Publication number Publication date
WO2001059564A3 (en) 2002-05-02
GB2376327B (en) 2004-09-22
GB0220657D0 (en) 2002-10-16
AU2001227684A1 (en) 2001-08-20
JP2003525484A (ja) 2003-08-26
CN1318963C (zh) 2007-05-30
KR20030044901A (ko) 2003-06-09
GB2376327A (en) 2002-12-11
US6711675B1 (en) 2004-03-23
WO2001059564A2 (en) 2001-08-16
CN1416545A (zh) 2003-05-07

Similar Documents

Publication Publication Date Title
TW531712B (en) Protected boot flow
US9703635B2 (en) Method, computer program, and computer for restoring set of variables
CN103718165B (zh) Bios闪存攻击保护和通知
TWI648652B (zh) 修復受危害之系統啓動碼之技術
JP4510945B2 (ja) カスタムソフトウェア画像をコンピュータシステムへ供給する方法およびシステム
CN104850762B (zh) 防止计算机的动作不良的方法、计算机程序以及计算机
TW440848B (en) A method and apparatus for hardware block locking in a nonvolatile memory
JP5512610B2 (ja) 非ファームウェアエージェントからメモリへのアクセスを許可または阻止する方法、システム、および機械可読記憶媒体
JP3561211B2 (ja) 情報処理装置および不揮発性記憶装置の書き換え制御方法
US8086839B2 (en) Authentication for resume boot path
JP7022809B2 (ja) コンピュータシステム、および、その安全管理方法、および、コンピュータソフトウェア製品
CN101145107B (zh) 保持早期硬件配置状态
JP5307196B2 (ja) シリコンに一体化されたコードのシステムへの提供
US7613872B2 (en) Providing core root of trust measurement (CRTM) for systems using a backup copy of basic input/output system (BIOS)
CN105378663A (zh) 更新引导代码
US11256499B2 (en) Hotfix-firmware having updates to a firmware at runtime
CN107567629A (zh) 在可信执行环境容器中的动态固件模块加载器
US6405311B1 (en) Method for storing board revision
US20040078497A1 (en) Method and apparatus for detecting configuration change
US20240111543A1 (en) Concurrent execution and copy of updated basic input/output system instructions
JP2018036695A (ja) 情報処理監視装置、情報処理監視方法、監視プログラム、記録媒体及び情報処理装置
TW201430698A (zh) 具高可靠性的博奕應用系統執行方法及其電子裝置
Terzić et al. BASIC INPUT/OUTPUT SYSTEM BIOS FUNCTIONS AND MODIFICATIONS

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees