博客專欄

EEPW首頁 > 博客 > 工程師應(yīng)該知道的硬件安全漏洞

工程師應(yīng)該知道的硬件安全漏洞

發(fā)布人:電子資料庫 時間:2022-09-11 來源:工程師 發(fā)布文章
image.png


工程師為什么要關(guān)心硬件安全?因為它們可以通過設(shè)計幫助防止漏洞!

工程師為什么要關(guān)心硬件安全?因為它們可以通過設(shè)計幫助防止漏洞!

工程師通常不太喜歡談?wù)摪踩珕栴}。然而,這并不能否定工程師了解密碼學(xué)的重要性,這樣他們才能在未來的設(shè)計中解決它。

到目前為止,我們已經(jīng)討論了一位工程師對密碼學(xué)的(簡要)介紹、Diffie-Hellman 交換以及ECC(橢圓曲線密碼學(xué))的工作原理。

現(xiàn)在是學(xué)習(xí)黑客如何破解密碼學(xué)的時候了,這樣您就可以開始漫長的旅程來保護(hù)您的設(shè)計免受常見攻擊。

為什么電氣工程師應(yīng)該關(guān)心安全性
image.png


如果您負(fù)責(zé)為企業(yè)級或安全關(guān)鍵設(shè)計提供安全設(shè)備,您應(yīng)該在設(shè)計過程的每個階段與您的芯片供應(yīng)商和/或安全研究人員討論您的設(shè)計。Microchip、SiLabs、WolfSSL 等公司都有工程師,可以幫助您進(jìn)行設(shè)計并教育您了解安全性。

畢竟,可以說沒有 100% 安全的系統(tǒng)。

“從來沒有一匹馬是不能騎的。從來沒有一個騎手不能被扔掉。”

安全研究人員與黑客進(jìn)行了終生的貓捉老鼠游戲。一次又一次,“牢不可破”的加密被打破了。您的消息是否保持加密取決于部件選擇、電路設(shè)計的好壞、代碼實現(xiàn)的好壞,以及攻擊者是否有足夠的動機(jī)和裝備來擊敗您的設(shè)計。作為工程師,您的工作是盡一切可能保護(hù)您的私鑰。

您可能已經(jīng)意識到,您幾乎無法采取任何措施來保護(hù)您的私鑰免受民族國家的侵害。各種政府機(jī)構(gòu)可以用來對付電子和人類目標(biāo)的資源是巨大的和壓倒性的。即使間諜無法從設(shè)備上取回私鑰,他們也總能破解對設(shè)備進(jìn)行編程的計算機(jī),潛入制造 IC 的工廠,危害員工……

幸運的是,您不必?fù)?dān)心民族國家會入侵您的設(shè)備。 不幸的是,這通常比我們想相信的要簡單得多。一個擁有價值約 250 美元硬件并可以訪問 YouTube 培訓(xùn)視頻的青少年可以在一個下午從微控制器中取出私鑰。惡意程序員可以在幾分鐘內(nèi)竊取數(shù)據(jù)。

為了為安全設(shè)計做好準(zhǔn)備,了解手頭的威脅非常重要。以下是一些眾所周知的基于硬件的安全漏洞的高級視圖,以及您可以采取哪些措施來緩解這些漏洞。

嵌入式系統(tǒng)安全問題示例

讓我們看一些主要的硬件漏洞示例,并討論一些更安全設(shè)計的技巧。

電磁側(cè)信道攻擊
image.png


幾十年來,研究人員已經(jīng)了解電磁側(cè)信道攻擊。每當(dāng)機(jī)械開關(guān)或晶體管改變狀態(tài)時,電磁波就會沿著導(dǎo)體向外傳播。如果該電磁波被黑客****,他們通常可以重建用于創(chuàng)建電磁波的數(shù)據(jù)。請參閱Van Eck Phreaking、Tempest或下面的視頻了解更多信息。

減輕電磁側(cè)信道攻擊

在設(shè)計和布局 PCB 時使用行業(yè)最佳實踐。

  1. 將去耦電容盡可能靠近電源引腳放置。

  2. 在您的 IC 下方使用堅固的接地層。

  3. 在您的 IC 上使用EMI 屏蔽。

它不會阻止可以物理訪問您設(shè)備的人,但會使他們的工作變得更加艱難。

差分功率分析攻擊
image.png


要破解大多數(shù)微控制器上的加密,您只需要一個 0.005 美元的電阻器、一個模數(shù)轉(zhuǎn)換器以及對 Python 編程語言的初步了解。

當(dāng)微控制器中的數(shù)字門切換時,它們會干擾通向微控制器的電源軌。黑客已經(jīng)學(xué)會在電源軌上放置一個 50 Ω 電阻器和一個模數(shù)轉(zhuǎn)換器,以記錄微控制器運行期間電流的微小變化。

微控制器通過 SPI 編程/調(diào)試接口進(jìn)行詢問,同時記錄差分功率測量數(shù)據(jù)。隨后,對數(shù)據(jù)進(jìn)行分析,并使用峰值和脈沖來關(guān)聯(lián)和識別各個微控制器的動作。

通過仔細(xì)分析,黑客可以從微控制器中提取他們想要的幾乎任何信息。

減輕差分功率分析攻擊

這種黑客攻擊很容易使用基于軟件的加密代碼完成,因此請盡可能使用實施 DPA 對策的加密硬件加速器。和以前一樣,在設(shè)計和布局中使用行業(yè)最佳實踐。選擇 BGA 封裝并在 PCB 的中間層中運行您的電源軌,如果您確實有理由擔(dān)心,請將您的 IC 嵌入 PCB 的中間層,上下都有銅平面,并在四周通過縫合使用。畢竟,如果壞人無法到達(dá)電源軌,他們就無法輕松進(jìn)行差分電源分析。

或者,使用基于硬件的安全核心,因為它們不太容易受到這種黑客攻擊(它們?nèi)匀豢梢员缓诳凸簦?。工程師了解此漏洞并以多種方式對其進(jìn)行設(shè)計。例如,Silicon Labs Wireless Gecko 系列 2具有集成的安全內(nèi)核,Microchip 生產(chǎn)一系列安全 IC,包括您可以在設(shè)計中使用的加密模塊。

中間人攻擊
image.png


有幾種中間人攻擊。 本文 演示了“無效曲線攻擊”。以下更簡單的假設(shè)示例只是一種可能的攻擊向量。

當(dāng)您通過名為“MyTunes”的藍(lán)牙揚聲器播放計算機(jī)中的音樂時,數(shù)據(jù)會直接從計算機(jī)傳輸?shù)綋P聲器。但是,當(dāng)您將計算機(jī)連接到名為“AllAboutCircuits.com”的外部網(wǎng)站時,您可能會或可能不會意識到您的計算機(jī)并未立即直接連接到另一臺名為“AllAboutCircuits”的計算機(jī)。

發(fā)生的第一件事是您的計算機(jī)聯(lián)系您的路由器,您的路由器聯(lián)系域名服務(wù)器 (DNS),該服務(wù)器將名稱 AllAboutCircuits.com 轉(zhuǎn)換為 IPV4 或 IPV6 地址 (104.20.234.39)。這通常發(fā)生得很快,并且數(shù)據(jù)存儲在本地以加快未來的瀏覽速度。

image.png


Windows 10 PC 上的 DNS 條目。

然后數(shù)據(jù)從計算機(jī)反彈到路由器,再到網(wǎng)關(guān),再到交換機(jī)等……到 IP 地址與 104.20.234.39 匹配的計算機(jī)。跳數(shù)因網(wǎng)站和位置而異。在每個位置,如果計算機(jī)不安全,則數(shù)據(jù)可能會被截獲、流量重定向或完全其他方式。

image.png


此路由跟蹤顯示從我的筆記本電腦到 AllAboutCircuits.com 網(wǎng)站的所有“躍點”

中間人攻擊的設(shè)置

中間人攻擊可能會以多種方式發(fā)生。只考慮這一種攻擊。

image.png

來自ThisPersonDoesNotExist.com的“Bob”圖片

鮑勃買了一個花哨的新無線路由器。他把他的玩具帶回家并將其連接到他的家庭網(wǎng)絡(luò)。為了確定他沒有在新玩具上花太多錢,他在電腦上查看了他的****賬戶余額。

image.png

來自ThisPersonDoesNotExist.com的“Mallory”圖片

馬洛里是一名黑客。她使用網(wǎng)站shodan.io (或類似網(wǎng)站)來識別互聯(lián)網(wǎng)上的路由器、網(wǎng)絡(luò)攝像頭、Raspberry Pi 或物聯(lián)網(wǎng)設(shè)備,看到 Bob 的新路由器,咧嘴笑著,威脅地搓著手,因為她現(xiàn)在也有了一個新玩具。

Mallory 使用所有設(shè)備附帶的默認(rèn)用戶名/密碼(admin/default、admin/admin、admin/password 等)。大多數(shù)制造商對所有設(shè)備都使用相同的用戶名/密碼,而且大多數(shù)人不會費心去更改它們,因此她不會花費太多時間來找到一個或多個入口點。Mallory 只需登錄設(shè)備,用她自己的固件刷新它,然后將 DNS 服務(wù)器更改為她選擇的 DNS 服務(wù)器。

她可以這樣做是因為:

  • 制造商懶惰地在其所有設(shè)備上使用相同的用戶名/密碼。

  • 絕大多數(shù)最終用戶不會更改他們的默認(rèn)密碼。

  • 設(shè)備制造商要么不需要簽名的固件,要么他們的私鑰被泄露并且在野外。

現(xiàn)在,馬洛里可以訪問專用網(wǎng)絡(luò)。她不再是網(wǎng)絡(luò)上的黑客,她現(xiàn)在在 Bob 的個人家庭網(wǎng)絡(luò)中,并且可以觀察數(shù)據(jù)來回移動。數(shù)據(jù)是加密的,所以她不一定能看到它是什么——但她可以看到 Bob 非常頻繁地訪問和登錄 ThisBankDoesNotExist.com (123.123.123.123),所以她開始著手設(shè)置服務(wù)器和網(wǎng)頁Bob 這是 ThisBankDoesNotExist.com 登錄頁面的像素完美副本。

然后,Mallory 將 Bob 的 ThisBankDoesNotExist.com 的 DNS 條目更改為 (123.45.67.89)

攻擊

Bob 導(dǎo)航到 ThisBankDoesNotExist.com。他不會費心在域名前輸入 https://,并且通過 Mallory 的黑客攻擊,他沒有連接到正確的計算機(jī),他在
http://ThisBankDoesNotExist.com - 所以沒有證書警告彈出。

鮑勃對此一無所知。他看到了像素完美的副本,并在 Mallory 的計算機(jī)中輸入了他的用戶名/密碼,正如他所期望的那樣,帳戶信息出現(xiàn)了。

除了現(xiàn)在,Mallory 可以看到一切——每筆交易、每個授權(quán)賬戶持有人,甚至 Bob 用來保護(hù)賬戶信息的超級復(fù)雜的用戶名/密碼 (bob/letmein)。


黑客攻擊的后果

幾乎所有網(wǎng)站都使用端到端加密。這意味著數(shù)據(jù)只能在 Bob 的計算機(jī)和****計算機(jī)上解密。Mallory 引入了一個新的端點。Bob 的流量在他的計算機(jī)上編碼并在 Mallory 的計算機(jī)上解碼。然后數(shù)據(jù)在馬洛里的計算機(jī)上重新編碼,并在****的計算機(jī)上解碼。對于 Bob 和****來說,這仍然顯示為端到端加密。

但是有一個中間端點——馬洛里的電腦。Mallory 可以使用相同的技巧來查找 Bob 的醫(yī)院記錄、電子郵件等。

如何保護(hù)嵌入式系統(tǒng)
image.png


保證您的設(shè)備安全的最簡單方法是讓您的產(chǎn)品難以被黑客入侵。

如果他們遇到阻力,黑客就有機(jī)會繼續(xù)攻擊下一個目標(biāo)。另一方面,個人或小公司很難阻止民族國家的黑客攻擊。幸運的是,許多“黑客”只是“腳本小子”,缺乏開發(fā)新攻擊和解決問題的專業(yè)知識。如果您的設(shè)備沒有 YouTube 視頻和 GitHub,他們將不知道該做什么,他們會繼續(xù)前進(jìn)。

此外,請與您的微芯片供應(yīng)商聯(lián)系,了解有關(guān)保護(hù)您設(shè)備的更多信息。Microchip 和 Silicon Labs 都在本系列文章中占據(jù)重要位置,因為兩家公司都為這些文章提供了工程師的采訪機(jī)會。

如果您設(shè)計物聯(lián)網(wǎng)設(shè)備,您可以采取多種措施來降低您的客戶因疏忽的工程和編程實踐而失去挽救生命的可能性。

除了上面提到的想法,考慮這些額外的步驟:

  1. 使用支持固件身份驗證(AKA 安全啟動)的微控制器和工具鏈進(jìn)行設(shè)計。 只有正確簽名的數(shù)字固件才能在微控制器上運行,并且只有您知道私鑰。Silicon Labs和Microchip (以及其他供應(yīng)商)都有支持安全啟動的微控制器。

  2. 盡可能使用具有安全調(diào)試功能的微控制器。 其中一些黑客攻擊是可能的,因為黑客可以從主機(jī)微控制器注入和檢索數(shù)據(jù),并使用它來確定微控制器封裝內(nèi)發(fā)生了什么。如果數(shù)據(jù)出現(xiàn)混亂或根本沒有,他們會感到沮喪并繼續(xù)前進(jìn)。同樣,Silicon Labs 和 Microchip(以及其他供應(yīng)商)也具備這種能力。

  3. 閱讀安全性,向?qū)<姨釂枺⒛脑O(shè)計發(fā)送給設(shè)備制造商的應(yīng)用工程師,以接收有關(guān)您提出的安全方案、電路板布局等的反饋。

  4. 如果設(shè)備被篡改,請使用防篡改技術(shù)從內(nèi)存中擦除您的私鑰。TE Connectivity 制造的壓電薄膜片可以完全包裹在您的 PCB 周圍。如果板材被切割、干擾、熔化等,它將產(chǎn)生電壓以指示篡改情況。使用電容或電感傳感器(例如來自 TI 的傳感器)來檢測項目外殼何時打開,或使用霍爾效應(yīng)傳感器來檢測外殼螺釘何時旋轉(zhuǎn)。

  5. 假設(shè)當(dāng)您的設(shè)備到達(dá)第一個客戶手中時,它已經(jīng)被盜用了。 創(chuàng)建一個項目安全藍(lán)圖,允許一個或多個單獨的設(shè)備受到攻擊,而不會影響您的整個項目。

本系列文章只是對安全性的介紹。作為工程師,您有責(zé)任確保物聯(lián)網(wǎng)對每個人都安全。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: 工程師 漏洞

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉