德國研究人員發現一重大安全漏洞可能使搭載 Xilinx FPGA 晶片的物聯網或工控系統遭駭以竊取機密資訊。目前唯一避免被駭的方法是換掉問題 FPGA 晶片。
魯爾大學 Horst Görtz IT 安全研究院及 Max Planck 安全與隱私研究院研究人員上周發佈研究發現,名為 Starbleed 的漏洞可讓攻擊者從現場或遠端修改組態檔來改寫 Xilinx FPGA 晶片,使數百萬台使用該晶片的關鍵連網裝置有被駭,甚至接管之虞。
FPGA(現場可程式化邏輯閘陣列,Field Programmable Gate Array)晶片是一種可在製造後在生產現場編寫程式的整合晶片。一般認為 FPGA 安全性高,被廣泛用於生產控制系統(ICS)、雲端資料中心、行動基地台、醫療裝置和航空系統。
FPGA 晶片和傳統晶片相比,最大優點在於它的可再編寫性(reprogrammability),這意思是用戶可以載入他們自訂的組態由 FPGA 執行.這組組態稱為 bitstream,通常是加密儲存在外部媒介,如 SRAM 非揮發記憶體,或是外部微控制器的韌體中。
研究人員 Christof Paar 教授解釋,FPGA 晶片利用 SHA-256 的 HMAC 演算法加密 bitstream,並以 CBC-AES-256 演算法提供加密防護。但是 Starbleed 漏洞讓駭客得以破解 bitstream 加密,修改儲存其中的程式,並載入惡意程式碼。
研究團隊測試了市場上最大 FPGA 供應商 Xilinx 銷售的晶片,顯示 Xilinx FPGA 7(Spartan, Artix, Kintex 和 Virtex)及 6 系列(Virtex)都受到 Starbleed 影響。
在其實驗中,研究人員成功破解 Xilinx 7 系列的 bitstream 加密,6 系列則部份解密。
一旦成功開採 Starbleed 漏洞,攻擊者可以取得 bitstream 中的產業智財、或是在 FPGA 中植入硬體木馬程式。
進行攻擊時,駭客必須要能接觸到 FPGA JTAG 連接埠,但如果 FPGA bitstream 是由微控制器或由其他網路來源,如網際網路或內部網路載入的話,則駭客可以攻擊來源,而無需來到晶片裝置處。
此外,研究人員還指出,和現有 Xilinx bitstream 的攻擊相比,Starbleed 攻擊更為便宜。現有 7 系列的 bitstream 加密攻擊都是實體攻擊(如旁路分析或光纖非接觸式探測),這都需要昂貴的設備、耗時,也要有相當的技術,還要碰得到 FPGA 晶片。但 Starbleed 攻擊僅需找到 JTAG 或 SelectMAP 介面,這容易得多,而且還能遠端執行。
研究團隊相信,目前 Starbleed 漏洞還沒有解法,因為 bitstream 加密只能在硬體上執行,也需要修改 FPGA 晶片的設計。因此換掉 FGPA 是目前唯一方法。
德國研究人員去年 9 月通報 Xilinx,後者證實這項漏洞。不過 Xilinx 表示,這項攻擊相當複雜,且需要攻擊者接近 FPGA 晶片,因而降低了其危險性。但 Xilinx 仍然提醒採取防範措施,確保 FPGA 元件及相關除蟲、組態連接埠的安全性。此外,該公司最新一代的 Xilinx UltraScale 架構的產品已沒有這項風險。
來源:ZDNet
