• 沒有找到結果。

硬體木馬之相關簡介

2.1 硬體木馬分類

在這個節列出不同硬體木馬的分類架構,了解木馬電路的行為,先得了解其種類,因 此先參考國內外研究情形將諸種型態與攻擊模式予以分類。

Yun 等人在 2010 年提出被攻擊後的影響(Payload)和觸發條件(Trigger)的分類架構[3],

其中觸發部分如圖 2所示。電路被攻擊者植入木馬後,在特定條件觸發後將會對電路造成

於[4]中 Wang 等人提出依照(1)實體情況(Physical)、(2)活化方式(Activation)、(3)行為模 式(Action)三層面之分類架構,其分類架構如圖 3所示。

Conditional Always On

Logic Sensor

圖3.硬體木馬分類架構[4]

(1) 實體情況(Physical):型態(Type)分為功能或參數兩種型態。功能類型態包括硬體木馬 物理實現,通過添加或刪除電晶體或邏輯閘,而參數是指不變動電路架構下修改電路線路 參數或電晶體規格的方式放入硬體木馬。尺寸大小(Size):在觸發的中硬體木馬大小是一 個重要因素,多個輸入的小型硬體木馬的觸發率較單個大型硬體木馬的觸發率高。分佈 (Distribution):硬體木馬在晶片的分佈位置。例如,若晶片的佈局是鬆散的,硬體木馬便 可在可用性的死角上佈局。若非常小的死角都可以佈局的話並假設攻擊者沒有改變晶片的 小大為前提,攻擊者就可能會將較小的部份線路分佈在木馬的周圍。結構(Structure):如果 是重新佈局才能夠植入木馬,則會改變晶片的大小。這種變化可能會影響到不同元件或所 有設計元件,任何晶片的物理佈局,其變化可以改變延遲和電力特性使其更容易偵測到木 馬。

(2) 活化方式(Activation):潛藏在電路中的硬體木馬可能執行異常的行為,然而非全部的 硬體木馬都處於運作狀態,若未啟動的硬體木馬在特定時間被觸發而運作,這類硬體木馬 又稱為時間炸彈。時間炸彈被觸發的條件就稱為活化方式的行為。將體木馬觸發的分類為 兩種,外部觸發(Externally activated)和內部觸發(Internally activated) ,內部觸發又分為兩 類,一是硬體木馬始終是活動的,另一內部觸發的情形是一開始處於休眠狀態,直到特定 條件得到滿足立即觸發木馬。

(3) 行為模式(Action):硬體木馬被植入電路之後,依照對整個電路的影響來分類,例如對 某些功能造成影響,讓其產生非預期的輸出而傳遞下去,使整個電路失效,修改功能 (Modify-function)、修改規格(Modify specification)、傳輸信息(Transmit info )。

於[5] Karri 等人提出除了在製程階段中可能會被植入硬體木馬種類、方式為基準,探 討各硬體木馬會對電路造成合種影響,其分類如圖 4所示:

(1) 植入區域(Insertion phase):在一般 IC 設計的流程中,可能硬體木馬會在其中被植入,

譬如說在設計層面(Design)的過程使用第三方的矽智財來執行功能單元,然而硬體木馬可 能就是早已被植入在某些矽智財中,而達到攻擊的目的,該架構將此分為規格制定、設計、

製造、測試以及封裝五個階段。

(2) 抽象層面(Abstraction level):在此層面是最容易被修改的部分,只要攻擊者使用參數型 (Parametric)或功能型(Functional)的改變,就可以造成一定程度的影響,例如暫存器轉換階 層(Register transfer level),設計開發者用暫存器、訊號和布林函數來表示功能單元,攻擊

圖 4. Karri 硬體木馬分類架構[5]

者只要修改程式碼,就可以達到讓電路不正常運作的目的。細分為 a.系統層級 b. 暫存器 轉換階層 c. 邏輯閘階層 d. 電晶體階層 e. 佈局層面

(3) 觸發層面(Activation mechanism):少部分硬體木馬的設計是永遠處於執行狀態中,而 其他的設計在一開始會處於休眠狀態,當硬體木馬被觸發後才開始有執行運作。一般來說,

(4) 植入位置(Location):硬體木馬可能潛在一個或多個元件中,處理器、記憶體、輸入/

輸出端等等。若硬體木馬分佈在多個元件中,這些硬體木馬可能是獨立或集體運作而完成

逆向工程(Engineering Extremely)[4][10]

物理性質的分析技巧,是指使用儀器去測試晶片,然後分析收集來的資料去確認正確 性。此類的分析儀器有很多種,例如掃描式光學顯微鏡(scanning optical microscopy (SOM))、

掃描式電子顯微鏡(scanning electron microscopy (SEM))、微微秒成像電路分析(pico-second imaging circuit analysis (PICA))、電壓比對成像(voltage contrast imaging (VCI))、光束誘發電 壓調 變 (light-induced voltage alternation (LIVA))、施感電壓調變(charge-induced voltage alternation (CIVA))等。在硬體木馬的攻擊中,通常攻擊者會將木馬隨機的植入晶片,所以 每一片晶片都需要驗證,使用以上這些方法雖然可以百分之百的達到硬體惡意行為檢測的 目的,但同時這些方法會耗費大量的時間及金錢成本,除此之外,這些方法還需要晶片背 面薄化及反製程操作,會造成晶片本身無法還原之傷害。且另一個很重要的缺點是在奈米 領域中,由於晶片尺寸的縮小,有些技巧逐漸失去效用。

2. 功能測試(Functional Testing)

(1) ATPG 木馬檢測技術(ATPG-based Trojan Detection Techniques) [11]

ATPG 檢測技巧是使用標準超大型積體電路(VLSI)除錯檢測工具,自動測試樣本產生工具 (automatic test pattern generation (ATPG))來檢測晶片的正確性。此種方法主要是給予晶片或 模型一組數位測試向量,檢查其輸出資料來達到硬體惡意行為的檢測。因為詳盡的測試非 常耗時,大型 IC 的木馬觸發機率很低且需要龐大的連續測資時間。

(2) 內建自我測試電路檢測技術(Built-In-Self-Test Techniques)[12][13][14]

在單晶片測試結構,即內建自我測試技術是在原先晶片中加上其他的功能電路,該電 路設計用來監控訊號和發現晶片缺陷並減少測試時間的方式,其可用於製成變異檢測,也 同樣可用於檢測惡意的邏輯電路。首先利用該技術於可信賴晶片使其產生特定檢測數值 (familiar signature),與未檢測晶片之數值相比以顯示缺陷或改變。該方法的優點在於,在 這系統下擁有很強大的監視功能邏輯,並且可重新編譯監控邏輯,此外也是屬於非破壞性 的硬體木馬防護方式,且可檢測參數型以及功能型木馬。但是這項方法更加的昂貴且複雜,

另外在晶片設計上得花上更多的時間。

3. 旁通道訊號分析技巧(Side Channel Signals Analysis)[4][10][11]

此研究採用旁通道訊號(side-channel signals)分析技術偵測硬體木馬,屬於testing-based 方法,以量測旁通道訊號參數(消耗功率、延遲時間等)為基礎,當一個電路被惡意加入硬體 木馬時,硬體木馬會使參數產生些許變化,即使只在電路中植入一個邏輯閘一般常用參數 包含:漏電流增大、動態功率消耗加劇和節點間的延遲時間的增加,甚至是電路的運作時的 溫度分布。第一步量測一個無木馬(Trojan-free)電路的旁通道訊號參數,拿這參數為基準,

去跟其他未確認有無木馬之電路旁通道訊號參數相比較,當兩參數無明顯變化則該電路無 木馬存在,反之假如兩參數有很明顯的差異時,簡單來說這項檢測策略是針對參數是否異 常來判斷該電路是否被人惡意放入硬體木馬的可能性。使用此分析法大致為底下步驟:

(1) 隨機選擇部分同一系列IC(使用同一遮罩及晶圓廠)。

(2) 對這些IC執行夠多的I/O測試,並且在測試時對一或多種旁通道訊號收集夠多的資訊。

(3) 利用這些資訊去分析訊號的特徵表現。

(4) 確認被挑選出IC未被加入惡意電路。

(5) 在第一步驟未被挑選的IC,經由同樣的I/O測試取得旁通道訊號,在與第三步驟的結果 相互比較,確認是否有硬體木馬入侵。

以旁通道分析為基礎的方法,其優點在於分析法比其他分析法需要較少的硬體開銷,

且在測量訊號參數時假如木馬處於未觸發狀態,也能使用旁通道分析木馬的存在,因為被 惡意加入硬體木馬會額外增加電路,而這些額外電路也會使得部分相關參數產生改變,且 比對兩筆參數差異能迅速判斷木馬是否存在於電路,但是分析旁通道訊號來檢測硬體木馬,

還是有它缺點存在,最大問題是此分析法需要一個已確認無木馬存在的電路,該電路所量 測出的參數才可以當作基準,除非有原始設計模型可供模擬或必要時使用逆向工程還原電 路,另外近年來製程技術發展迅速原件尺寸越做越小時製程飄移(process variation)的因素,

以及量測時所出現的雜訊(noise)或者是量測儀器的環境因素都可能蓋過一個硬體木馬(特別 是小型木馬)對訊號參數的影響。

相關文件