• 晶片資安第一站

無止境的軍備競賽:晶片新防護方案帶來了新隱憂

當先進晶片的使用年限因技術精進而延長,而像量子計算等新興科技虎視眈眈的要破解最複雜的加密機制,各種新的且不同的資安策略顯得更為重要。

這些方案包羅萬象,從無需解碼即可處理數據的同態加密,到在量子世界裡安全傳輸與接收數據的各種方式都有。除此之外,如今的資安變得更模組化,更靈活,分佈更廣,讓系統得以在更加漫長的生命週期中能進行更新,還能運用氣隙技術的基礎,透過信任和身分認證的雙重機制進行更安全的無線更新;這也是因應市場上希望供應鏈資訊可視化日漸高漲的聲浪。

為了達到最佳效力,安全設置必須安裝在軟硬體的各個層面,而且相關設計必須以能提供給更廣泛的系統使用為前提。但即使做到如此,隱憂仍然存在 ─ 因為資訊安全是一場永恆的軍備競賽,而我們的敵人背後很可能是個擁有無限資源,無限資金且動機強烈的國家。

高效能技術為安全性埋下炸彈

對於晶片製造商來說,讓他們最頭痛的問題之一,就是他們不知道將來他們的技術會如何被應用在產品上,或是未來會出現什麼新的威脅。

最初推動「推測執行」和「分支預測」技術,是為了提升處理器效能,好用來彌補擴充所帶來的遞減效應;但要是從安全性的角度出發的話,這個技術卻是潛伏了各種問題。十年後,Spectre 和 Meltdown 使得這些安全漏洞無所遁形,迫使處理器供應商必須想出法子,修正掉原本這些改良效能的作法。

自此之後,設計開始大量走向模組化,在封裝內的圖塊或是小晶片上,或是同個裸晶片上的區塊,加上了一定程度的可編程性。透過這樣的方式,讓認證金鑰跟安全啟動資訊可以儲存在一個或是多個地方,並透過防竄改技術保護相關安全資訊。

安謀控股公司對 TrustZone 採取了些不一樣的作法。其新的處理器架構設計讓安全組件基本上可以跟其他程序隔離開來,因此,就算遭受攻擊,系統也有辦法安全的重新啟動。

異常偵測的困難與美學

處理安全性問題的困難之處,在於我們不光要了解設備是否正在執行它該做的事情,同時還有確認它是否做了它不應該做的事。要做到這樣,我們需要針對異常活動進行持續性監測,因為有時睡眠電路會在幾個月或是幾年後突然運作。但同時,極其靈敏的感測器也是必備的,因為某些惡意電路可以透過 AI 系統學習並模擬正常的流量模式。

有時候,設計師會添加特殊電路,來確認電路的表現是否跟預期有所不同;這也可能只是某個晶片的設計錯誤,或是可能矽智財被植入了木馬程式。如果是後者的話,這就成了硬體攻擊的一種。

避免類似狀況的解決方法之一,是實際去檢查晶片,並將其透過照片跟原始設計做比對;但因為晶片變得越來越複雜,也因為它們跟其他晶片一起封裝在內,隨著這些設備內部的功能持續壓縮,這變得更加困難。

另一種解決方式是建立晶片設計的數位分身,用來跟實體設備進行對比。假如偵測到了安全性問題,可以先行使用數位模組進行修復並測試,確認沒問題以後再進行實體設備修復。

第三種解決方式可以和其他方式結合併用,那就是使用正規技術,在整個系統中追蹤潛在的或是實際問題。驗證功能在對抗網路攻擊的這場戰役裡逐漸成為一個重要的工具,而形式化在跟蹤潛在的漏洞,透過晶片或更大的系統的攻擊路徑顯得特別有效。

同態加密

近年資安的流行用語之一,就是全同態加密(FHE)。這個概念已經流傳了將近十年之久,但最近才開始被認真看待。特別在一些領域中,數據洩漏可能會造成極大的災難,如軍用電腦。其整體理念是,要是數據可以維持在加密狀態,而不是得在處理數據之前得先解密,接著使用完後再重新加密,那麼這樣的數據要是沒有解密金鑰的話,幾乎不可能被破解。

大多數針對數據的攻擊,都是發生在數據處於未加密狀態,特別是傳輸過程中的未加密數據。全同態加密能使數據即使在不安全的網路下仍能安全地進行處理。全同態加密使用了網格密碼為基礎的加密方式,隨著量子計算的盛行,這種加密方式有望可以變得更加普及,因爲它可以抵抗來自於量子電腦的攻擊。

但同態加密也有屬於它自己的挑戰。一個是為了處理這些網格密碼程式架構的原始馬力。這主要是來自於那些加密專家所說的「噪音」,在加密領域中,這些噪音會轉換為錯誤的代碼。雖然有辦法控制這些「噪音」,但條件是需要極大的運算能力。

許多專注於處理這個問題的新創公司已經有所斬獲,像是 Cornami 或是 Borsetta,他們都在量子演算法的基礎下研究全同態加密。但若要採用這樣的方式,可能需要不同的晶片架構跟軟體開發策略,如仔細的選擇那些部分需要加密,而那些則不需要。同時它也需要不同的工具,才有辦法設計並驗證這些系統。

比暴力破解更暴力的量子運算

量子科技確實為安全性增加了另一個隱憂。透過量子電腦,現行密碼可以輕易遭到破解。隨著量子科技變得普及,人們開始擔心現有的安全防護措施會突然就不敷使用。

主要問題之一是現有的加密程式語言使用較多位元來強化其安全金鑰。但對於量子科技來說,位元可以是 1 或是 0,加密程式語言的架構是建立在網格方式而不是線性方式。換句話說,破解金鑰的時間從指數增長變成了線性增長,大量降低了時間消耗。

因此,一次性密碼成為了應對這現象的解方之一,因為攻擊者沒有足夠資訊進行破解;數據在傳輸過程中變更了一次性金鑰,它就更不可能可以被破解了。與此同時,使用者還是需要一個安全的方式來傳輸這些金鑰,而這可以透過量子通訊完成。

但這只是解決方式的一小部分。真正的問題在演算法本身。目前我們還沒有所謂標準的抗量子演算法,雖然在當下這看起來不成問題,若考慮到前瞻性設計來說的話,選錯了演算法可能會演變成日後的大麻煩 ─ 萬一你所堅信的演算法有先天的漏洞呢?而在真正的抗量子演算法問世之前,我們仍必須持續仰賴現有的作法,並期望這當中不會有落差產生。

儘管我們還無法預測量子運算實用化的時間點,但它的誕生已是板上釘釘的事實。接下來的挑戰將是涉及到改善結果的準確性以及延長量子位元的壽命。

更多的擔憂

幾乎在每場安全會議上,專家都持續重申更多的晶片和更高的複雜性擴大了攻擊範圍,而白帽駭客則在在荷蘭舉行的 hardware.io 會議上解釋了一些可能的攻擊媒介。

專門為公司提供逆向工程技術諮商的顧問 John McMaster 表示,「我只專注在韌體上,因為韌體控制了晶片上許多的高階功能,而我可以擷取這些部分而不用去擔心其他細節。有些時候我們在韌體上發現漏洞,但大多數的時間我們必須把它跟另一次的攻擊疊加在一起。因此,當攻擊發生時,我們才能在韌體上進行檢查的動作。接著我才可以透過電壓故障去解鎖程式代碼。某些時候我必須要知道何時要執行這樣的動作,而這變成了一個多重步驟的流程。」

問題是,許多晶片供應商希望可以集中掌控這些功能。當他們設計韌體來執行這樣的任務時,他們同時也讓攻擊者了解到,一旦找到方式駭入就可以同時控制多台設備。如今駭客技術已經變得相當成熟,可以在較短的時間內駭入最新的科技;從目前的攻擊數量和複雜度來看,在在都證明了他們不斷增強的實力。

結論

安全性一直以來都是個找到漏洞並將其填補好的遊戲。在過去,大多數的修補動作都是在軟體上完成的。但隨著駭客的目光越來越鎖定在半導體上,這些漏洞有時比軟體更難被修補。它們需要廣泛的架構性跟系統性的改變,並更注重在靈活性跟持續監控上。

事實上,晶片產業對待這件事情採取了嚴肅的態度,這是一個正確的方向。但即使伴隨著最好的打算跟幾近無限的資源,漏洞仍會持續存在。眼前面臨的挑戰是如何能避免這樣的狀況擴散出去,並在問題發生時能儘速將其解決。晶片供應商最終意識到了這個情況,但要能在夠大的範圍內將這些改變實行並產生重大的影響,仍需要一些時間。

原文編譯自:New Security Approach, New Threat

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