• 晶片資安第一站

驅動數位化的晶片最常面臨哪三大安全威脅?

傳統上,資訊安全的威脅主要來自於軟體,而硬體安全(Hardware Security)至今仍未受到足夠的重視。

不過,隨著國家及產業間的競爭日漸激烈,硬體安全威脅的議題也逐漸逐漸浮上台面,尤其資訊及電子業是台灣最具競爭力的產業,若硬體的安全性受到危脅,對國家經濟必然會產生極大影響。

硬體安全的主要議題包括:

  1. 使用硬體實現基本的資訊安全功能,包括硬體加密模組(Encryption Module)及晶片指紋(PUF);
  2. 硬體安全性設計及檢測。作為安全模組的重要元件,對硬體加密模組的攻擊方法及反制措施一直都是學術及產業界的關注重點。

硬體安全性設計的主要需求來自過去數十年產業分工及全球化影響,尤其半導體 產業鏈既長且分散,以積體電路(Integrated Circuit, IC)晶片為例,為了降低成本,先進的積體電路開發和製造可能位於許多不同地方進行前期設計、製造與封裝測試。

一顆晶片的誕生歷經漫長旅程,更涉及多家公司,包括IC設計公司、設計自動化工具(Electronic Design Automation, EDA)供應商、矽智財(Intellectual Property, IP)供應商、設計服務公司、晶圓廠(Foundry)、以及封裝測試廠(Assembly, Packaging, and Testing)等。

整個供應鏈中,若要監控超過百萬個元件構成的晶片、全部設計流程是非常困難的工作,因此超大型積體電路很容易受到惡意攻擊者的威脅。

晶片硬體面臨有三大安全威脅

晶片安全威脅的分類對積體電路的硬體安全威脅主要來自三方面:偽造(Counterfeit)、竄改(Tampering)、以及逆向工程(Reverse Engineering) 。

  • 偽造:

偽造者仿冒原廠產品,或過量製造授權產品,結果為影響原廠的獲利。據估計,所有商用 IC 的 5%以上是偽造的。偽造品通常是指生產與正品近乎完全相同的仿冒品,這些仿冒品的外觀與正品足夠接近,故可混淆客戶。也有偽造者將回收的 IC 或原廠之不良品重新封裝並印上新品標記後販賣。

另一種形式的偽造是剽竊矽智財或濫用使用授權(overbuilding)。剽竊者可能經由偷竊原設計或經由逆向工程技術獲得矽智財之後,再與原廠競爭。

  • 篡改:

篡改者須在設計階段對積體電路的設計進行更改,在其中加入惡意邏輯電路。惡意電路一般稱為硬體木馬(Hardware Trojan),其存在將威脅到受害廠商的可信度。製造後篡改對於現場可程式邏輯閘陣列(FPGA)來說,是一個較大的威脅。

觸發電路(Trigger Circuit)電路之輸入為多個原始電路的內部信號線 (T1, T2, …, Tn),一旦觸發條件成立,酬載(payload)即被啟動。傳統的自動測試圖樣產生(Automatic Test Pattern Generation, ATPG)演算法所產生的輸入圖樣對檢測木馬無效,因為對定值錯誤(stuck-at fault)模型產生的 ATPG 圖樣只能確保每個信號會被指定成 0 及 1,而且讓效應傳至電路輸出。但是 硬體木馬的觸發條件是由多個信號線組成,因此 ATPG 圖樣未必能同時滿足硬體木馬的觸發條件。

  • 逆向工程:

逆向工程之目的包括竊取矽智財或加密金鑰等重要資訊,以獲得利益。逆向工程攻擊可以是侵入性的或非侵入性的。侵入性攻擊須部分或完全除去 IC 的封裝再逐層掃描電路結構,一般而言,需要在具有專業設備的實驗室中才能進行。

常用的非侵入式攻擊,有兩種方法:故障注入攻擊(Fault Injection Attack),以及旁通道攻擊(Side Channel Attack)。

晶片的測試介面(Test Interface)是為了協助測試工程師過濾出廠晶片中不良品的可測試設計 (design-for-testability, DFT)。測試介面實際上為晶片留下一個後門,可被攻擊者利用。

故障注入攻擊 故障注入攻擊又稱為故障攻擊或注入攻擊,其作法是在目標 IC 工作時,短暫地影響目標 IC 的行為,造成異常或功能故障。造成暫態故障的常用手段包括改變產品工作電壓和頻率;因為攻擊持續的時間短暫,故也稱為 Voltage Glitch 攻擊與 Clock Glitch 攻擊。

這兩種攻擊方式只需具備可以產生對 voltage 和 clock 訊號干擾的硬體設備即可達成,因此所需成本比低,也更容易實現。攻擊 透過故障注入,可讓特定指令的執行失效。

若該指令可使加密硬體系統錯誤地執行讀取密鑰的任務,使其載入空白密鑰(zero key),則只要再使用空白密鑰,就能將密文還原成明文。

旁通道攻擊 旁通道攻擊的原理是在 IC 運行時,監視特定物理現象出現的信號,再對這些物理信號進行分析,以獲得有關 IC 狀態及其處理的數據的資訊。旁通道信號可從許多來源獲得,包括元件的時脈頻率,電源電壓,功率消耗,溫度,電磁(EM)輻射,聲音和發光等。

攻擊者尋找旁通道信號的異常情況,例如功耗變化或時脈頻率的 glitch。攻擊者還可能利用 IC 的可檢測信號故意造成設備操作錯誤。密碼學家可根據加密設備的時序,電源電壓和電磁旁通道,以確定是否可以利用它們來發現密 碼密鑰並洩漏秘密資訊。

旁通道分析(Side Channel Analysis, SCA)是針對密碼裝置進行運算時不經意洩溢之物理訊號, 以統計與信號處理等技術分析而得到秘密資訊(例如加解密所使用之密鑰)。自從Paul Kocher 最早提出 Timing Attacks與 Differential Power Analysis (DPA)以來,SCA 在密碼學與硬體設計等領域吸引了許多研究人員的注意,各種 SCA 破解秘密方法陸續被提出,如 Correlation Power Analysis (CPA)、以及後續加上訊號處理技巧的Correlation Analysis at Frequency domain (CAF)、Spectrogram CPA (STCPA)、WaveletCPA。

近來,深度學習中的神經網路技術在電腦視覺、自然語音處理、大數據分析上快速發展與成功應用,使得越來越多的學界業界人員積極研究將深度學習應用在旁通道分析上,這種方法原理上與更早被提出的Profiling Attack 類似,透過深度學習演算法學習已知裝置的旁通道洩溢之特徵模型,比起以往的方法更能有效對抗加了抵禦對策的加密硬體。

針對這種新興的方法,我們需要更多實驗 與研究來了解其破解秘密效能及抵禦對策,同時尋找更多不同深度學習模型和方法在旁通道分析上的應用方式。

以深度學習模型進行旁通道分析的方法屬於 profiling attacks,這類攻擊通常分為兩個階段,

第一階段攻擊者利用預先取得可完全操控之密碼裝置量測大量旁通道軌跡,並以此建立對此裝置旁通道洩漏資訊的特徵模型。

第二階段再以建立的特徵模型分析未知密鑰裝置的旁通道訊號以還原密鑰。這類攻擊依據旁通道訊號與密碼運算中間值存在線性關係的假設,以多變量常態分布為模型建立密碼裝置旁通道洩溢的特徵模板,後續也有人發現實際裝置的旁通道洩溢與運算中間值存在更高階的關係,進而提出以linear regression方法萃取更準確的model,獲得更高的破密成功率。

Share:
This site is registered on wpml.org as a development site.