上期我們談到了服務器固件的安全風險和傳統保護方法的不足,談到了平臺固件保護恢復(PFR)這一全新的標準將為服務器提供全方位的保護。今天我們談談如何實現PFR解決方案 ,以及兩種典型方案的比較。
實現符合NIST標準的PFR解決方案
PLD上實現可信根的難點在于,實現方案的同時不給原始設備制造商帶來過大的負擔。可信根硬件解決方案(包 括基于PLD的解決方案)必須可擴展,也就意味著它能夠保護服務器上的所有固件,同時響應時間達到毫微秒級。它還要能夠使用不可修改的加密模塊,通過加密檢測來確定固件是否遭到篡改。將PFR與服務器所有組件完整的啟動時序控制功能相結合,RoT就變得不可繞過。最后,解決方案還應能夠自動切換回最近的黃金固件鏡像,以便在發現當前固件被破壞時服務器可以繼續運行。
按照定義,基于硬件的RoT器件自然需要在芯片中實現。在此情況下,最常用的芯片平臺即微控制器(MCU)和現 場可編程門陣列(FPGA)。在充分考慮到FPGA和MCU的運行特點和特性后,我們發現FPGA在很大程度上更適用于PFR解決方案。
使用MCU實現可信根
MCU過去常在服務器硬件產品中用于構建可信根。簡單來說,就是保留MCU層的一部分為可信執行環境。MCU 的這一部分與芯片的其他區域保持物理隔離,并持續監控固件,確保其獲得授權并正常工作。通常來說,服務器上的PFR功能是通過向現有的硬件架構上添加RoT MCU實現的。
MCU通常難以支持驗證服務器中的多個固件實例。這是因為它無法在沒有外部設備(如PLD)的幫助下響應對服務器所有固件實例的系統內部攻擊(而PLD能實時監控SPI存儲器的流量并同步檢測和響應入侵行為)。如圖4所示,使用MCU實現PFR的三個組件為:
RoT MCU– RoT MCU執行檢測、恢復和保護功能;它是實現RoT的核心組件。
保護PLD– 通過實時監控所有組件處理器與其SPI存儲器設備之間的活動,大規模實現PFR,全面保護電路板。
控制PLD– 該器件集成了所有電路板級的上電和復位時序功能,包括風扇控制、SGPIO、I2C緩沖、信號集成和帶外通信等啟動主板必須的功能。RoT MCU命令控制PLD為電路板上電。若需要在極端情況進行恢復,RoT MCU則命令控制PLD僅為可信恢復過程中使用的部分電路板供電。
圖 4:如果需要各組件同時啟動,那么符合PFR標準、使用MCU作為可信根的服務器還需要額外的組件(FPGA)來提供必要的高性能;在大規模的服務器應用場景下,此種解決方案不可擴展
這種基于MCU的PFR方案有諸多限制。例如,圖4電路中使用的控制PLD無法保護自身固件,也就意味著這種架構并非完全符合NIST PFR的要求。控制PLD的代碼仍有可能被修改,讓RoT MCU失效。還有可能受到永久拒絕服務攻擊(PDoS),通過刪除這些PLD上的信息,讓系統無法運行,從而使讓服務器無法啟動。保護和控制PLD存在的安全漏洞使得組件在運輸或者系統集成過程中很難防止對固件的攻擊。為了達到NIST SP 800 193標準,RoT MCU必須同時為控制PLD和保護PLD實現PFR功能。而使用MCU在這些器件上實現恢復和保護功能非常困難。最后,基于MCU的方案需要額外的系統級進程來檢測試圖繞過整個RoT電路的攻擊行為。
使用FPGA實現可信根
圖 5:RoT FPGA解決方案將RoT MCU、控制PLD和保護PLD的功能集成在單個芯片上,不僅可靠、易擴展,而且不可繞過。在擁有符合PFR標準的PLD的服務器上,PLD的性能足以并行監測所有組件的固件而無需使用額外的FPGA
基于可信根FPGA的PFR解決方案優勢
正如其名,可編程邏輯電路(PLD)是一種幾乎可以瞬時實現遠程重新編程的集成電路,以適應不斷變化的場景。PLD可以在硬件層面上改變其電路,因此一旦檢測到未經授權的固件,該固件就無法安裝。
由于PLD被設計為可重新編程,因此比MCU有更多的I/O接口,這讓它們可以并行運行多個功能而非按順序執行。 因此它們在檢測未授權固件時,識別和響應速度更快。
此外,PLD使用了先進的仿真軟件,讓工程師得以驗證其PLD設計的功能。工程師還可以使用這一工具來測試其針對各種固件的網絡攻擊的設計是否可以保護PLD自身。與PLD相比,MCU的固件更新需要更復雜的測試和驗證,因為MCU不能通過仿真支持功能驗證。相反,MCU固件的任何更新都必須經過多次回歸(試錯過程)測試,以確保新固件不會對MCU中的其他功能產生不良影響;這一過程遠比運行PLD仿真軟件繁瑣。
當我們對比PLD和MCU的特點時,會發現PLD能提供性能更優、更為可靠的平臺實現基于硬件的可信根;它也成為滿足PFR標準的必要器件。
應對供應鏈攻擊:MCU與FPGA解決方案
如果出現固件攻擊,兩種不同類型的PFR系統將采取以下應對措施(按照實施順序):
PFR開發套件簡化FPGA可信根的實現
萊迪思現提供一款PFR開發套件,可簡化FPGA RoT解決方案的實現。服務器組件的原始設備制造商和系統集成商如今可以快速實現基于FPGA的PFR,滿足上市時間的要求。該套件包括一個軟件功能庫、相關的IP和3個開發板,用于實現PFR(包括保護PLD功能)。用戶可以通過Lattice Diamond軟件工具將電路板控制PLD功能添加到 RoT FPGA設計中。萊迪思PFR開發套件和開發板包括:
★一個RoT FPGA開發板
★ 一塊運行Python腳本的ECP5 FPGA板,用于模擬服務器的BMC。開發人員可以通過Python腳本執行命令來模擬對組件SPI存儲器的攻擊。
★ 一個PFR適配卡,用于在SPI存儲器中存儲BMC代碼。在開發板的RoT FPGA中實現的PFR功能可以保護PFR適 配卡固件免受攻擊(意味著基于FPGA的該解決方案符合NIST PFR標準)。
萊迪思套件讓用戶能夠設計、實現和維護符合NIST標準的自定義PFR方案,而無需專門的安全專業知識。
圖 6:Lattice FPGA RoT開發套件擁有三塊開發板:RoT FPGA開發板,用于模擬服務器BMC的ECP5開發板和用于 存儲模擬BMC固件的SPI閃存板
小結
對于涉足數字領域的企業和組織而言,網絡安全是個至關重要的問題。如今黑客會通過攻擊企業服務器固件來獲取未經授權訪問服務器數據的權限,或者直接讓服務器永久癱瘓。而通過基于FPGA的RoT器件實現的PFR則能有效解決這一難題,提供安全可靠、容易擴展、全套完備的方案,在供應鏈的任何環節保護服務器組件的固件。全新的萊迪思PFR開發套件為加速和簡化RoT器件的開發提供了便捷途徑,確保你的服務器安全無虞。
-
微控制器
+關注
關注
48文章
7936瀏覽量
154269 -
存儲器
+關注
關注
38文章
7644瀏覽量
166950 -
電路板
+關注
關注
140文章
5117瀏覽量
102242
原文標題:您的服務器安全可能面臨威脅!!(Part 2)
文章出處:【微信號:FPGAer_Club,微信公眾號:FPGAer俱樂部】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
兩種典型的電池供電電路的設計方案
基于FPGA的電源解決方案太復雜?你需要學習這兩種簡化方法
利用熱電偶進行設計的常見挑戰及兩種信號調理解決方案
介紹兩種基于Arduino的風扇自動調速方案
用于驅動LED的典型離散解決方案
兩種典型控制方法在逆變器控制器中的比較

評論