文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.07.007
中文引用格式: 王敏,劉瑩,邵瑾,等. 基于FIB技術攻擊芯片主動屏蔽層[J].電子技術應用,2017,43(7):28-31.
英文引用格式: Wang Min,Liu Ying,Shao Jin,et al. Attack chip′s active shield based on FIB technology[J].Application of Electronic Technique,2017,43(7):28-31.
0 引言
針對安全芯片的攻擊方法很多,大致可以分為三類:非侵入式攻擊、半侵入式攻擊和侵入式攻擊。其中,侵入式攻擊也稱作物理攻擊,需要直接接觸芯片元器件的內部,會對芯片造成永久破壞。該攻擊方式通常先要去除芯片封裝,暴露出硅晶粒,可以通過逆向工程分析半導體器件的結構和功能,提取芯片版圖,恢復出芯片門級電路結構;或者通過掃描電子顯微鏡或聚焦離子束顯微鏡(Focused Ion beam,F(xiàn)IB)對安全芯片電路和金屬走線進行切割、連接和修改等。對此,安全芯片一般會在芯片頂層添加主動屏蔽層,防止侵入式物理探測和篡改攻擊: 當主動屏蔽層的有源屏蔽線被探測或切斷時,主動屏蔽層的檢測電路檢測到屏蔽線上傳輸?shù)男盘柊l(fā)生變化,即刻產(chǎn)生報警信號,使芯片進入復位或中斷等安全工作狀態(tài),以抵抗侵入式攻擊獲取安全芯片內部存儲的關鍵數(shù)據(jù)和敏感信息,進一步保障產(chǎn)品的安全性[1,3-4]。
本文提出了一種基于FIB技術攻擊芯片主動屏蔽層的方法,對現(xiàn)有靜態(tài)或動態(tài)檢測的主動屏蔽層的安全芯片,均可實施侵入式攻擊,探測芯片數(shù)據(jù)總線信號獲取芯片內部敏感信息。所提出的主動屏蔽層攻擊方法可操作性很強,對芯片的攻擊和安全防護設計具有重要的指導作用和現(xiàn)實意義。
1 主動屏蔽層原理和FIB技術
1.1 主動屏蔽層原理
主動屏蔽層是在安全芯片的頂層形成一層保護層,通過實時監(jiān)測該保護層的信號是否受到破壞而產(chǎn)生報警信號,以抵抗侵入式物理攻擊[5]。主動屏蔽層由有源屏蔽層和檢測傳感器構成:有源屏蔽層一般采用平行等勢線、蛇形走線、螺旋線、皮亞諾曲線、隨機哈密頓回路等拓撲結構, 由一層或多層金屬走線形成,布滿整個芯片,遮蔽屏蔽層下方的物理結構隱藏加密模塊、存儲器模塊等關鍵組件,填充空白區(qū)域等;同時有源屏蔽層也作為傳感網(wǎng)絡層,在有源屏蔽線上注入檢測信號,檢測傳感器通過對比初始檢測信號與經(jīng)過有源屏蔽線傳輸后的檢測信號的一致性來判斷安全芯片是否受到侵入式攻擊。
圖1所示為有源屏蔽層布線示例圖,該有源屏蔽層由5根有源屏蔽線一筆連通蛇形布線組成。有源屏蔽線中間沒有任何短路、斷路或分支,可實現(xiàn)盡可能高密度的安全檢測信號通路;布線后的版圖都是重復的隨機圖形樣式,具有極大的迷惑性[6]。
如圖2所示為檢測傳感器電路結構圖,DIN為有源屏蔽層的輸入檢測信號,DOUT為經(jīng)過有源屏蔽線傳輸后的輸出檢測信號,比較器通過比對DIN和DOUT信號是否相等,分析判定主動屏蔽層是否存在短路、斷路等現(xiàn)象,從而實現(xiàn)檢測侵入式攻擊。
1.2 FIB技術
聚焦粒子束(FIB)顯微鏡系統(tǒng)是利用電子透鏡將離子束進行加速、聚集轟擊樣品表面實現(xiàn)加工的顯微精細切割儀器,目前商用系統(tǒng)的離子束多為液體金屬離子鎵(因為鎵元素具備低熔點、低蒸汽壓及良好的抗氧化能力)。FIB使用離子槍對液態(tài)金屬鎵進行加速、聚焦,照射樣品表面產(chǎn)生二次電子信號獲取電子圖像;使用強電流離子束對樣品表面原子進行剝離,實現(xiàn)微、納米級表面形貌加工;或者以物理濺射的方式搭配化學氣體反應,有選擇性地剝除金屬、氧化硅層或淀積金屬層[2]。侵入式攻擊中的FIB 攻擊技術,通過切割芯片內部的金屬互連線或破壞芯片控制電路,從而屏蔽芯片某些安全保護機制;此外FIB攻擊技術可將傳輸安全保護狀態(tài)的金屬信號線連到地或電源上,實現(xiàn)對芯片某些安全功能的操控。
FIB技術的基本功能可分為4種:
(1)離子束成像:FIB使用高速離子束轟擊樣品表面,激發(fā)出二次電子、中性原子、二次離子和光子等,收集這些信號進行處理顯示出樣品的表面形貌。目前聚焦離子束系統(tǒng)的成像分辨率已達5~10 nm。
(2)離子束刻蝕:FIB使用高能離子束(常為幾十K eV)轟擊樣品時,將動量傳遞給樣品中的原子或分子,產(chǎn)生濺射效應。因此選擇合適的離子束流, 可以對不同材料的樣品實施高速微區(qū)刻蝕,對納米級、微米量級尺寸的材料進行加工。
(3)離子束淀積:FIB使用離子束的能量激發(fā)化學反應,在樣品局部區(qū)域作導體或非導體的沉積,常見的金屬沉積有鉑和鎢兩種材料。
(4)離子注入:FIB通過精確定位和控制,直接在半導體材料和器件上特定區(qū)域或點進行離子注入,精確控制注入的深度和廣度,節(jié)省生產(chǎn)成本和加工時間。
綜上,F(xiàn)IB技術在集成電路工業(yè)領域主要應用于金屬線路修改和布局驗證、半導體元器件失效分析、生產(chǎn)線工藝異常分析、集成電路工藝監(jiān)控(例如光刻膠的切割)、透射電子顯微鏡樣片制作等。隨著半導體工藝尺寸不斷縮小、工藝制程不斷復雜化,F(xiàn)IB技術表現(xiàn)出很強的應用潛力,可用于集成電路工藝在線監(jiān)控,微區(qū)精密離子注入實現(xiàn)無掩模納米級工藝生產(chǎn),刻蝕和淀積相結合對微電路進行修補等。
2 使用FIB攻擊主動屏蔽層
2.1 攻擊方案概述
根據(jù)1.1節(jié)所述,主動屏蔽層是安全芯片抵抗侵入式攻擊的第一道屏障,對主動屏蔽層的攻擊方法常見如下:由于主動屏蔽層均采用數(shù)根有源屏蔽線進行全芯片范圍金屬繞線,找尋到有源屏蔽線的起始點和終止點,并將其依序對應連接上,主動屏蔽層的抗攻擊防護失效,此時攻擊者探測或切割除連接上的起始、終止點以外的其他所有有源屏蔽繞線,檢測電路都無法檢測到異常并產(chǎn)生相應預警信號。通常安全芯片在做主動屏蔽層金屬繞線設計時,會著重將屏蔽線的起始點和終止點進行深度隱藏,加大攻擊難度。對此,本文提出了一種簡易直觀的攻擊主動屏蔽層的方法,適用于攻擊任何靜態(tài)或動態(tài)檢測的主動屏蔽層。
本文提出的主動屏蔽層攻擊方法是:將預探測或修改的芯片關鍵信號金屬走線上方的有源屏蔽線切斷去除,暴露出底下關鍵信號的金屬走線(通常芯片關鍵信號均使用低層金屬走線,無法使用探針臺直接扎針探測),需將該關鍵信號引出并做一個十字金屬管腳(十字PAD),便于探針扎針探測;然后將切斷的有源屏蔽線繞開所引出的關鍵信號進行重新連接,避免主動屏蔽層檢測到信號異常產(chǎn)生報警信號。該攻擊方案簡易直觀,可操作性極強,無論是對靜態(tài)還是動態(tài)檢測的主動屏蔽層,均可切開有源屏蔽層,探測攻擊到屏蔽線下方的信號連線。
該主動屏蔽層攻擊方法主要包括5個步驟:(1)定位:找到預攻擊的關鍵信號在芯片上的位置,并精確定位到該關鍵信號上覆蓋有源屏蔽線的位置。(2)切割屏蔽線:使用FIB設備對有源屏蔽線進行切割。(3)暴露出預攻擊的關鍵信號金屬連線:繼續(xù)使用FIB設備向下切割,直到預攻擊的關鍵信號線露出時停止切割。(4)引出關鍵信號:使用FIB設備對暴露出來的關鍵信號進行金屬淀積,引出關鍵信號,并做一個金屬十字PAD,以便于探針扎針探測。(5)重新連接有源屏蔽線:將切斷的有源屏蔽線繞開所引出的關鍵信號進行重新連接,避免主動屏蔽層檢測到屏蔽線斷路而報警。
理論依據(jù):使用FIB將切斷的有源屏蔽線以鉑金(Pt)進行金屬淀積重新連接,對原有源屏蔽線的信號傳輸延時影響微小,可忽略不計。以之后章節(jié)將提及的一款安全芯片為例,使用核艦HJ110 nm工藝制造,芯片尺寸為3.5 mm×3 mm,主動屏蔽層的一根有源屏蔽線金屬繞線長度約為0.19 m,電阻值為9.8 kΩ。使用FIB進行鉑金淀積,鉑金的電阻率為10~20(Ω·μm),根據(jù)如下電阻計算公式:
式中,R為淀積鉑金的電阻值,ρ為電阻率,S為金屬橫截面積,L為金屬長度,w為金屬寬度,h為金屬高度。設L=10 μm,w=1 μm,h=1 μm,則計算R=100~200 Ω,遠遠小于有源屏蔽線的電阻值,因此使用FIB進行鉑金淀積對原有源屏蔽線的信號傳輸延時影響甚微。
2.2 攻擊實驗介紹
本文對市場上比較常見的一款安全芯片進行主動屏蔽層攻擊實驗,該芯片使用頂層金屬做主動屏蔽層的有源屏蔽線,蛇形繞線如圖1所示,布滿整顆芯片。攻擊方案:對安全芯片存儲器RAM的數(shù)據(jù)總線進行探測監(jiān)聽,切開RAM數(shù)據(jù)總線金屬連線上方的有源屏蔽線,將露出的數(shù)據(jù)信號金屬連線引出做一個十字PAD,再將切斷的有源屏蔽線進行重新連接,最后使用探針臺對數(shù)據(jù)總線信號進行探測監(jiān)聽。
2.2.1 定位
將安全芯片開蓋,根據(jù)前期芯片分析,尋找到芯片RAM的數(shù)據(jù)總線位置,觀察數(shù)據(jù)總線走線情況和其上方有源屏蔽線的走線情況,盡量選擇最容易進行切割的走線部分。如圖3 所示,白色方框內的有源屏蔽線部分是本次選取的攻擊線段。所選取切割的有源屏蔽線繞線方式詳見圖4:A點和B點均在有源屏蔽線1線上,選取A、B兩點作為切割點,選取C、D兩點作為重新連接點,將C和D兩點重新連接上的有源屏蔽線1線仍然是一條連通的信號線。
2.2.2 切割屏蔽線
使用FIB設備將2.2.1中所選取的有源屏蔽線段進行切割,切割完的芯片主動屏蔽層如圖5所示。
2.2.3 暴露關鍵信號連線
繼續(xù)使用FIB設備向下緩慢切割芯片,直到露出預攻擊的RAM存儲器數(shù)據(jù)總線信號連線,如圖6所示,停止切割芯片。
2.2.4 引出關鍵信號
將2.2.3節(jié)中所暴露出的RAM數(shù)據(jù)信號走線,使用FIB設備做金屬淀積,將該信號引出并做一個十字PAD,如圖7所示,以便于探針扎針進行探測攻擊。
2.2.5 重新連接屏蔽線
將2.2.2節(jié)中切斷的有源屏蔽線,繞開所引出的RAM數(shù)據(jù)信號走線進行重新連接,如圖7所示,避免主動屏蔽層檢測到屏蔽線斷開產(chǎn)生報警信號。
2.3 攻擊結果
2.3.1 探測RAM輸出數(shù)據(jù)信號
根據(jù)2.2節(jié)所述,將安全芯片RAM數(shù)據(jù)總線上方的有源屏蔽線切斷,把數(shù)據(jù)信號引出,然后將切斷的屏蔽線繞開引出的數(shù)據(jù)信號走線重新連接。給安全芯片上電,主動屏蔽層沒有產(chǎn)生報警信號;使用探針臺的探針和十字PAD連接, 并將探針的另一端和示波器相連進行信號采集,圖8所示為示波器所采集到的安全芯片RAM數(shù)據(jù)總線信號。本論文所提出的主動屏蔽層攻擊方法可以成功攻擊芯片主動屏蔽層,避開主動屏蔽層的檢測報警機制,探測捕獲到芯片存儲器數(shù)據(jù)總線信號上的傳輸信息。
2.3.2 激活芯片測試模式
測試電路是安全芯片必不可少的組成部分。為提高測試效率、降低電路設計復雜度,測試電路一般可以訪問芯片內部所有資源,測試模式的安全級別非常高;一旦攻擊者侵入芯片測試模式,可對存儲器或引導程序進行惡意篡改,盜取芯片內部關鍵數(shù)據(jù),因此安全芯片完成測試后須將測試電路可靠地、不可逆地予以廢止[7]?,F(xiàn)有技術通常將某個控制信號放置到劃片槽,在芯片測試完成后通過劃片方式將其劃斷,此后安全芯片不能再進入測試模式;劃片槽內信號走線采用注入層N阱,增大了用FIB 等手段重新連接已劃斷信號的難度,而該控制信號在芯片內部仍然采用低層金屬走線,走線上方有主動屏蔽層覆蓋保護,使得攻擊者難以恢復測試電路再次進入芯片測試模式。
使用本論文所提出的主動屏蔽層攻擊方法,避開主動屏蔽層的檢測報警機制,將通過劃片已被劃斷的控制信號在芯片內部的金屬走線部分使用FIB進行連接,恢復安全芯片的測試模式,從而獲取芯片敏感信息。如圖9所示為重新連接上的測試模式信號,切開A和B兩點的有源屏蔽線,將下方露出來的被劃片切斷的測試模式控制信號進行金屬淀積相連;將B點兩側使用FIB切斷以避免信號短路;再將有源屏蔽線的C和D兩點進行連接避免主動屏蔽層報警。給安全芯片上電,主動屏蔽層沒有產(chǎn)生報警信號,芯片可進入測試模式操作。
3 結論
該論文中所提出的主動屏蔽層攻擊方法,通過將預探測的關鍵信號上方的有源屏蔽線切斷,引出關鍵信號進行探測監(jiān)聽,并將切斷的有源屏蔽線繞開引出的關鍵信號重新連接,避免主動屏蔽層報警。該攻擊方法簡單直觀,可操作性極強,無論是靜態(tài)還是動態(tài)檢測的主動屏蔽層,該方案均可實施攻擊,為侵入式攻擊芯片提供了極大的便利,同樣也為芯片安全防護設計提供了重要指導意義。
參考文獻
[1] 張赟,趙毅強,劉軍偉,等.一種抗物理攻擊防篡改檢測技術[J].微電子學與計算機,2016,33(4):121-124.
[2] 張繼成,唐永建,吳衛(wèi)東.聚焦離子束系統(tǒng)在微米/納米加工技術中的應用[J].材料導報,2006,20(f11):40-43.
[3] 徐敏.抗物理攻擊安全芯片關鍵技術研究[D].天津:天津大學,2012.
[4] 劉文娟.基于安全存儲的抗攻擊關鍵技術研究[D].天津:天津大學,2014.
[5] 張穎,潘亮等.一種高安全芯片有源屏蔽物理保護結構的設計方法:中國,103646137[P].2013.
[6] 王勇,張萍等.有源屏蔽線的布線方法:中國,105574241[P].2015.
[7] 王連成,蘇揚,陳波濤.一種芯片測試模式的防護方法:中國,103530575A[P].2014.
作者信息:
王 敏1,2,劉 瑩3,邵 瑾1,2,胡曉波1,2,劉 亮1,2,趙東艷1,2,張海峰1,2,尹國龍1,4
(1.北京智芯微電子科技有限公司,國家電網(wǎng)公司重點實驗室電力芯片設計分析實驗室,北京100192;
2.北京智芯微電子科技有限公司,北京市電力高可靠性集成電路設計工程技術研究中心,北京100192;
3.國家電網(wǎng)公司 信息通信部,北京100088;4.國網(wǎng)寧夏電力公司,寧夏 銀川750001)