首頁

白皮書:美國國家標準暨技術研究院NIST SP 800-193的《平台韌體保護與恢復標準規範》

“物聯網”(IoT)這一術語大約開始於二十年前正值網際網路蓬勃發展時期。當時,專家們設想所有系統或設備可通過互聯網的連接功能,以提供進階並智慧的功能。該術語的提出主要是為了將獨立的聯網設備與相對傳統且需要定期人工維護的電腦和伺服器進行區分。網路安全在那時僅被視為屬於電腦和伺服器的考慮範疇;對於其他類型的設備而言,網路安全的概念鮮少使用或被重視,設備的功能和創新才是當時大家所關注的。

隨著時間的演進,越來越多的設備開始可以連接網路,包括行動設備、網路連結、工業控制、家用電器以及一直處在連線狀態的個人電腦。由於缺乏相關規範,供應商在網路安全方面都是使用自己的規範,或者完全沒有考慮到安全性。隨著連網的增加及便利,網路安全風險也隨之增加。功能強大的聯網設備容易成為駭客遠端攻擊的目標,他們企圖利用這些設備的功能來滿足自己的需求。駭客攻擊可能是簡單的濫用連網系統,也可能是利用連網設備進行複雜的攻擊,或者是通過機器人程式突擊發動大規模的網路攻擊。

隨著連網設備的運算升級,社會經濟發展對於其功能的依賴程度也越來越高。曾經的新奇事物現在已成為現代社會的主要支柱,基礎設施、公用事業、家庭和政府機構都依賴連網設備的正常運行,以維持穩定的日常生活。

這促使美國國家標準暨技術研究院(NIST)於 2018 年 5 月發佈了 NIST SP800-193《平台韌體保護與恢復標準規範》[‎1]。該規範包含了運行中的任意類型韌體的聯網設備,包括從大型複雜的伺服器到小型的嵌入式控制器。本白皮書旨在為讀者介紹該標準規範涵蓋的內容及原則。

NIST SP800-193(以下簡稱“193”)討論了“恢復力(Resiliency)”的概念,即系統或平臺抵抗惡意攻擊或自發錯誤導致故障的能力。恢復力的基礎包括以下三大原則:

 

圖1:  華邦安全快閃記憶體提供保護、檢測及恢復記憶體中代碼和關鍵數據遭未授權更改的方法。

保護即確保平臺代碼和資料保持完整狀態。完整狀態並不意味著這些代碼和資料不能被修改,而是指可以允許按照供應商、使用者和基礎設施的要求進行正確操作的狀態。對於代碼而言,這意味著正在運行系統的是經過驗證、可信任的版本;對於資料而言,則意味著資料僅允許授權實體和程式進行修改。

檢測即平臺識別代碼和關鍵資料損壞並發出警報的能力。檢測必須由單獨且隔離的程式處理,因為受損代碼是無法被信賴以執行自身檢測或其他相關數據。

恢復力即系統在代碼和關鍵資料方面恢復到正確工作狀態的能力。如果系統符合保護、檢測和恢復三大原則,便是值得信賴的系統,同時也代表其可以在受到網路攻擊和各種自發錯誤期間繼續運行。

NIST SP800-193 僅涵蓋韌體和關鍵資料的保護和恢復,並未涉及其他資料的丟失或損壞或系統硬體的實質損壞。

華邦的安全快閃記憶體設備如何根據 NIST SP800-193 規範提供恢復力

華邦的安全快閃記憶體設備系列以恢復力為核心進行設計,通過將複雜的邏輯直接建置到快閃記憶體設備硬體中,符合NIST SP800-193 指南的三大原則,為處理恢復力提供了所需的單獨分層。

保護

1. 信任根

“信任根”是指保持韌體處於完整狀態,使其值得信任。用戶和基礎設施可以依靠韌體的功能來正確操作系統,並在執行前驗證韌體其它部分的真實性和完整性。

2. 加密寫入保護

為保護並維持系統韌體和重要資料的完整性,華邦的安全快閃記憶體設備採用了加密寫入保護 (CWP)。加密寫入保護允許功能是可以保護快閃記憶體設備的某些區域免受被擦除或程式設計操作。如果要進行程式設計或擦除,唯一的方法是先通過加密認證,這個要求可讓使用者了解加密金鑰是被安全儲存在快閃記憶體不可訪問的地方。因為金鑰在系統中不以明文形式存在,因此網路攻擊者無法獲悉這些金鑰。而且每個系統的金鑰均是單獨設計,可以防止在單獨受到攻擊和破壞時,導致系統大範圍的破壞。

3. 認證更新機制

NIST SP800-193 規範要求可及時更新系統韌體以修補安全性漏洞。規範還要求應通過身份驗證的機制來進行更新,以確保更新的真實可靠(來自正確來源)和完整(完整且未經修改)。因此,韌體更新必須提供簽名,以便系統確保更新代碼的真實性、完整性且未經修改。然而,這項要求帶來了“雞生蛋還是蛋生雞”的問題。如果更新機制存在漏洞並需要修補怎麼辦?如果更新機制存在漏洞,攻擊者就有可能載入危險的韌體,那麼韌體是否值得信任?

為解決這個問題,華邦的安全快閃記憶體包含了一個內建機制,為韌體更新提供身份驗證和完整性保護。除此之外,更新機制還提供回滾防護機制(Roll-back Protection)和原子操作(Atomic Operation)。這種更新機制允許將新的韌體影像檔逐一寫入快閃記憶體設備,以適應速度較慢或不可靠的網路。一旦整個更新影像檔寫入完成,安全快閃記憶體即對新影像檔進行驗證,檢查其是否完整、真實,以及其版本是否比快閃記憶體中的現有版本更新。如果所有檢查都成功完成,則安全快閃記憶體交換新影像檔與舊影像檔,為系統提供真正的更新韌體。整個過程都具備失效保護(fail-safe)功能,防止在更新過程發生系統故障,從而進一步提高了平臺的恢復力與韌性。

檢測

NIST SP800-193 規範要求系統在執行或使用韌體和關鍵資料之前檢測未經授權的更改。一旦檢測到,系統可以啟動恢復程序。

1. 自動完整性檢查

華邦安全快閃記憶體在啟動時或可根據使用者要求,對韌體區域進行自動完整性檢查。這項檢查會掃描整個韌體區域,查找任何未經授權的更改。如果檢測到未經授權的更改,安全快閃記憶體將執行下文所述的恢復程序。

自動完整性檢查全程在快閃記憶體硬體中實現,因此提供了額外的、單獨的防護層。

2. 韌體啟動數據認證

華邦安全快閃記憶體還支援專用的硬體認證機制,以驗證關鍵資料。這項機制可由韌體隨時啟動,以確保關鍵資料不被破壞。它基於內建的 SHA-256 引擎,無需將資料從快閃記憶體移至記憶體,即可對大型資料集進行超快速驗證。

恢復

恢復機制可在檢測到平臺韌體和關鍵資料損壞時,將其恢復到有效且授權的狀態。

1. 自動韌體回滾防護機制

華邦的安全快閃記憶體設備專門分配了回滾防護機制區域,以支援自動韌體恢復。該區域包含了備用韌體,當檢測到損壞時,備用韌體會自動替換損壞的韌體。此備用韌體可以是原始韌體的真實副本,也可以是專用於從損壞狀態恢復後系統的特殊韌體版本。

自動韌體回滾防護與自動完整性檢查合作工作。在系統啟用期間,快閃記憶體會在內部檢查韌體的完整性。在此期間,系統將處於重置狀態。如果未能通過完整性檢查,快閃記憶體會自動重新映射回滾防護區域而不是損壞的韌體區域,並允許系統執行備份韌體。

回滾防護韌體可以是原始系統韌體的副本,也可以支援從本機存放區的副本或通過遠端存放來恢復韌體。

通過使用專用於該區域的唯一金鑰,回滾防護韌體受到加密寫入保護。因此,即使其他區域的金鑰受到威脅也不會影響到回滾防護韌體,符合NIST SP800-193 規範對恢復機制完整性的要求。

2. 關鍵資料的恢復

華邦的安全快閃記憶體允許為每個區域設置多種保護方案。關鍵資料保存在兩個單獨的區域中,每個區域都有唯一的金鑰,從而保護關鍵資料免受損壞或惡意攻擊。因此,資料的安全副本可以被完整保護且保存在原本的地方,並在資料受損時再使用該副本。

 圖二: 華邦安全快閃記憶體在偵測到任何韌體代碼或數據完整性遭到駭客攻擊或破壞時,能自動恢復平台韌體。

總結

NIST SP800-193 規範闡述了系統實現恢復力所需滿足的要求,以確保其能夠抵禦因韌體和關鍵資料遭到惡意攻擊,或發生故障時所導致的損壞。但這些要求只能通過專用的保護層才能實現。鑒於這個保護層需深根於代碼中,因此實現起來極具挑戰性。

華邦的安全快閃記憶體在硬體中提供了專用的保護層,滿足 NIST SP800-193 規範對恢復力的要求。此外,華邦的安全快閃記憶體與標準NOR快閃記憶體可實現百分百相容,能夠高效將系統轉換為符合NIST SP800-193標準的恢復力系統,且轉換過程僅需微乎其微的工作量。

圖三: 華邦的安全快閃記憶體與標準NOR,快閃記憶體可實現百分百相容。

 

欲瞭解更多詳情,請聯繫TrustME@winbond.com 或造訪華邦安全快閃記憶體網頁

引用:

  1. https://csrc.nist.gov/publications/detail/sp/800-193/final

 

技術文章

聯絡我們

Copyright © Winbond All Rights Reserved.

本網站使用cookie作為與網站互動時識別瀏覽器之用,瀏覽本網站即表示您同意本網站對cookie的使用及相關隱私權政策
OK