博客專欄

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

工程師應該知道的硬件安全漏洞

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


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

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

工程師通常不太喜歡談論安全問題。然而,這并不能否定工程師了解密碼學的重要性,這樣他們才能在未來的設計中解決它。

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

現在是學習黑客如何破解密碼學的時候了,這樣您就可以開始漫長的旅程來保護您的設計免受常見攻擊。

為什么電氣工程師應該關心安全性
image.png


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

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

“從來沒有一匹馬是不能騎的。從來沒有一個騎手不能被扔掉?!?/span>

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

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

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

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

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

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

電磁側信道攻擊
image.png


幾十年來,研究人員已經了解電磁側信道攻擊。每當機械開關或晶體管改變狀態(tài)時,電磁波就會沿著導體向外傳播。如果該電磁波被黑客****,他們通??梢灾亟ㄓ糜趧?chuàng)建電磁波的數據。請參閱Van Eck Phreaking、Tempest或下面的視頻了解更多信息。

減輕電磁側信道攻擊

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

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

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

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

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

差分功率分析攻擊
image.png


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

當微控制器中的數字門切換時,它們會干擾通向微控制器的電源軌。黑客已經學會在電源軌上放置一個 50 Ω 電阻器和一個模數轉換器,以記錄微控制器運行期間電流的微小變化。

微控制器通過 SPI 編程/調試接口進行詢問,同時記錄差分功率測量數據。隨后,對數據進行分析,并使用峰值和脈沖來關聯和識別各個微控制器的動作。

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

減輕差分功率分析攻擊

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

或者,使用基于硬件的安全核心,因為它們不太容易受到這種黑客攻擊(它們仍然可以被黑客攻擊)。工程師了解此漏洞并以多種方式對其進行設計。例如,Silicon Labs Wireless Gecko 系列 2具有集成的安全內核,Microchip 生產一系列安全 IC,包括您可以在設計中使用的加密模塊。

中間人攻擊
image.png


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

當您通過名為“MyTunes”的藍牙揚聲器播放計算機中的音樂時,數據會直接從計算機傳輸到揚聲器。但是,當您將計算機連接到名為“AllAboutCircuits.com”的外部網站時,您可能會或可能不會意識到您的計算機并未立即直接連接到另一臺名為“AllAboutCircuits”的計算機。

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

image.png


Windows 10 PC 上的 DNS 條目。

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

image.png


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

中間人攻擊的設置

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

image.png

來自ThisPersonDoesNotExist.com的“Bob”圖片

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

image.png

來自ThisPersonDoesNotExist.com的“Mallory”圖片

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

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

她可以這樣做是因為:

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

  • 絕大多數最終用戶不會更改他們的默認密碼。

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

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

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

攻擊

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

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

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


黑客攻擊的后果

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

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

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


保證您的設備安全的最簡單方法是讓您的產品難以被黑客入侵。

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

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

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

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

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

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

  3. 閱讀安全性,向專家提問,并將您的設計發(fā)送給設備制造商的應用工程師,以接收有關您提出的安全方案、電路板布局等的反饋。

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

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

本系列文章只是對安全性的介紹。作為工程師,您有責任確保物聯網對每個人都安全。


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



關鍵詞: 工程師 漏洞

相關推薦

技術專區(qū)

關閉