開源架構的資安神話被打破
長期以來,RISC-V開源指令集架構最常被拿來宣傳的優勢之一,就是「架構透明、社群可審查,理論上比封閉的x86與ARM更安全」。但這個說法在8月中旬遭遇了一記重擊——來自比利時與德國學術機構的研究團隊發現,多款商用RISC-V處理器同樣存在Spectre這類「幽靈級」的推測執行漏洞,而且不只是實驗室裡的概念性晶片,而是已經量產、實際部署在市場上的商用產品。
Spectre漏洞自2018年首度曝光以來,一直是現代處理器設計中最棘手的資安難題之一。它利用CPU為了提升效能而採用的「推測執行」(out-of-order execution)機制——處理器會提前猜測程式接下來可能執行的路徑並預先運算,如果猜錯就捨棄結果。問題在於,即便運算結果被捨棄,這個過程仍會在CPU快取中留下可被側錄的痕跡,攻擊者可以透過側通道分析,一步步「偷看」到理論上不該被存取的記憶體內容,包括作業系統核心裡的機密資料。
受影響晶片與研究方法
這次研究團隊鎖定的是採用亂序執行(out-of-order execution)架構的RISC-V處理器,包括SiFive的P550,以及中國平頭哥(T-Head)的玄鐵(Xuantie)C910與C920系列。相對地,採用循序執行(in-order execution)架構、效能較低但設計較簡單的晶片,例如SiFive U74與玄鐵C906、C908,則沒有受到影響——這也印證了一個業界早有共識的規律:處理器效能與資安風險往往是一體兩面的取捨,愈是為了追求高效能而導入複雜推測執行機制的晶片,愈容易暴露在這類側通道攻擊之下。
研究團隊實際測試了Spectre-PHT、Spectre-BTB、Spectre-RSB與Spectre-STL等多種攻擊變體,準確率高達100%的召回率與超過97%的精確率。更值得警惕的是,團隊在玄鐵C910處理器上做出了完整的概念驗證攻擊,成功以每秒338位元組的速度,從外部側錄出Linux作業系統核心的記憶體內容——速度雖然不算快,但已經足以在合理時間內竊取密碼雜湊、加密金鑰片段等敏感資訊。研究團隊強調,這是首度有證據顯示,Spectre類攻擊已經能在「量產商用晶片」上實際奏效,而不只是停留在學術論文裡的理論推演。
Linux核心緊急應變
面對這項發現,Linux核心開發社群已經展開緊急應變,目前已有三個修補程式合併進入Linux主線核心,另外還有兩個修補程式正在審查中。這類修補通常會透過在關鍵程式碼路徑中插入「推測執行屏障」(speculation barrier)指令,強制阻斷CPU的預測性運算,藉此切斷側通道攻擊的資訊外洩路徑——但代價是可能犧牲一定程度的運算效能,這也是Spectre系列漏洞修補始終面臨的兩難:安全性與效能,往往難以兩全。
對RISC-V生態系的意義
這項發現的衝擊,不只在於技術層面,更在於它動搖了RISC-V陣營長期以來的行銷敘事。近年來,隨著地緣政治因素促使中國積極扶植自主指令集架構,RISC-V在中國半導體產業中的地位迅速攀升,被視為擺脫x86與ARM授權限制、建立自主可控運算生態的關鍵路徑。與此同時,RISC-V基金會與相關廠商也經常強調其開放架構「從設計源頭就能被全球社群檢視」,理論上安全性優於封閉架構。
然而這次研究證明,開放原始碼與架構透明,並不必然等於安全無虞——真正決定資安風險的,終究是實際的微架構設計選擇,而非指令集本身是開放或封閉。對於正積極布局RISC-V的晶片設計公司與下游應用廠商而言,這是一記提醒:隨著RISC-V處理器逐漸從嵌入式、低功耗應用,跨足到伺服器、資料中心等高效能運算場景,其資安驗證與測試機制也必須跟上腳步,否則生態系仍在快速擴張階段所累積的安全債,遲早會在更關鍵的應用場景中被引爆。
資料來源:科技新報 TechNews(資安版)