Xilinx 的 FPGA 晶片爆出無法修補的 Starbleed 漏洞 可能導致 IoT 裝置與工控系統被駭
德國研究人員發現一重大安全漏洞可能使搭載 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