那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

嵌入式系統(tǒng)12種常見攻擊及防范方法

jf_pJlTbmA9 ? 來源:strongerHuang ? 作者:strongerHuang ? 2023-09-21 17:26 ? 次閱讀

以前的嵌入式系統(tǒng)對安全問題相對不那么重視,但隨著時間的推移,你會發(fā)現(xiàn)很多嵌入式設(shè)備都在做各種“保護(hù)措施”,你平時在產(chǎn)品開發(fā)和設(shè)計時,有注意安全問題嗎?

嵌入式系統(tǒng)12種常見攻擊

嵌入式系統(tǒng)的攻擊可根據(jù)其目標(biāo)分為三類:

基于軟件的攻擊

基于網(wǎng)絡(luò)的攻擊

旁道攻擊

wKgZomUD9nuAYWzsAAIY8TLnRVg978.png

讓我們找出針對這些類型攻擊的關(guān)鍵特征,常見示例以及可能的對策。

第一類:基于軟件的攻擊

基于軟件的攻擊針對系統(tǒng)的大腦-管理設(shè)備的應(yīng)用程序。對軟件的成功攻擊使黑客能夠訪問數(shù)據(jù)或獲得對嵌入式系統(tǒng)的控制。

搜索軟件設(shè)計和代碼中的漏洞是最常見的攻擊手段,因為可以遠(yuǎn)程進(jìn)行此類攻擊。而且,基于軟件的攻擊不需要黑客的專業(yè)知識,因為他們可以使用典型的攻擊,例如部署惡意軟件和暴力破解。

最普遍的基于軟件的攻擊包括:

· 惡意軟件

· 暴力訪問

· 內(nèi)存緩沖區(qū)溢出

· 利用web服務(wù)

對嵌入式系統(tǒng)的惡意軟件攻擊與任何其他系統(tǒng)的工作方式相同:黑客部署了一段惡意代碼,這些代碼試圖攔截存儲在系統(tǒng)內(nèi)部的數(shù)據(jù),控制受害系統(tǒng)或?qū)ζ溥M(jìn)行破壞。通常,黑客會偽造固件更新,驅(qū)動程序或安全補丁來分發(fā)惡意軟件。

為了防止此類攻擊,可以實施以下保護(hù)措施:

應(yīng)用黑名單方法,即開發(fā)人員為系統(tǒng)檢測到的任何新惡意軟件創(chuàng)建簽名,并將這些簽名添加到嵌入式系統(tǒng)固件中。當(dāng)系統(tǒng)檢測到具有已知簽名的軟件時,它將不會運行它。

使用白名單保護(hù),為所有受信任的軟件源創(chuàng)建特定的簽名。這允許系統(tǒng)只運行具有正確簽名的軟件。

簡單地說,強制訪問憑證就是猜測憑證的過程。大多數(shù)嵌入式系統(tǒng)提供對圖形用戶界面(GUI)的遠(yuǎn)程訪問,黑客可以利用該界面進(jìn)行攻擊。你可以通過使用強密碼和限制登錄嘗試次數(shù)來防止暴力強制攻擊。

內(nèi)存緩沖區(qū)溢出是一種攻擊,當(dāng)黑客手動溢出分配給包含在嵌入式系統(tǒng)中移動的數(shù)據(jù)的內(nèi)存緩沖區(qū)時。黑客部署的漏洞攻擊使內(nèi)存緩沖區(qū)充滿了過多的數(shù)據(jù)。在這種情況下,嵌入式操作系統(tǒng)將把其中的一些數(shù)據(jù)記錄到緩沖區(qū)旁邊的內(nèi)存段中。記錄的數(shù)據(jù)可能包含外殼代碼或其他漏洞,幫助黑客獲取憑據(jù)并提升其訪問權(quán)限。

通過創(chuàng)建一個沙箱將溢出的數(shù)據(jù)與系統(tǒng)隔離,可以解決此問題。請記住,你的沙箱必須非常復(fù)雜,因為許多現(xiàn)代漏洞利用了躲避沙箱的技術(shù)。

第2類:基于網(wǎng)絡(luò)的攻擊

這種攻擊利用網(wǎng)絡(luò)基礎(chǔ)設(shè)施漏洞,也可以遠(yuǎn)程執(zhí)行。利用這些漏洞,黑客可以偵聽、攔截和修改嵌入式系統(tǒng)傳輸?shù)牧髁俊?/p>

讓我們看一下最常見的基于網(wǎng)絡(luò)的攻擊:

· 中間人(MITM)

· 域名系統(tǒng)(DNS)中毒

· 分布式拒絕服務(wù)(DDoS)

· 會話劫持

· 信號干擾

MITM攻擊用于攔截或更改嵌入式系統(tǒng)傳輸?shù)臄?shù)據(jù)。為了執(zhí)行它,黑客改變兩個設(shè)備的連接參數(shù),以便在它們之間放置第三個設(shè)備。如果黑客可以獲得或更改這兩個設(shè)備使用的加密密鑰,他們就可以以一種很難檢測到的方式進(jìn)行竊聽,因為這不會對網(wǎng)絡(luò)造成干擾。

通過加密傳輸?shù)臄?shù)據(jù)并使用Internet協(xié)議安全(IPsec)安全地傳輸密鑰和數(shù)據(jù),可以防止或阻止MITM攻擊。

DNS中毒會迫使本地DNS服務(wù)器根據(jù)黑客的需求修改其記錄。DNS服務(wù)器將可記憶的域名和主機名轉(zhuǎn)換為相應(yīng)的IP地址。通過使用DNS服務(wù)器的漏洞并毒害其緩存,黑客可以將流量從目標(biāo)網(wǎng)站重新路由到任何其他地址。

域名系統(tǒng)安全擴展(DNS-SEC)協(xié)議通過對DNS發(fā)布或傳輸?shù)娜魏螖?shù)據(jù)進(jìn)行數(shù)字簽名來防止DNS服務(wù)器中毒。

DDoS是一種眾所周知的攻擊,它通過來自不同來源的請求使系統(tǒng)溢出從而使系統(tǒng)不可用。這種攻擊很難阻止,因為請求量巨大。沒有針對DDoS攻擊的通用保護(hù)。但是,在你的嵌入式軟件中添加防火墻以及流量分析和過濾算法將大大提高防止DDoS攻擊或及時檢測它們的機會。

會話劫持類似于MITM攻擊,但目標(biāo)不同:黑客偵聽嵌入式系統(tǒng)流量以獲取身份驗證憑據(jù)。執(zhí)行劫持的方法有多種:固定用戶會話標(biāo)識符,竊取會話緩存,跨站點腳本等等。

防范此類攻擊的方法很經(jīng)典:對憑據(jù)和可能包含憑據(jù)的任何數(shù)據(jù)進(jìn)行加密,定期更改憑據(jù),以及在會話結(jié)束時處置與會話相關(guān)的任何數(shù)據(jù)。

信號干擾在無線網(wǎng)絡(luò)中很常見。借助這種技術(shù),黑客會在網(wǎng)絡(luò)中造成干擾,從而干擾或扭曲來自設(shè)備的通信。根據(jù)干擾器的類型,它可能會阻塞信道上的任何通信,在目標(biāo)設(shè)備傳輸數(shù)據(jù)時開始工作,或者在檢測到特定數(shù)據(jù)包時被激活。這樣的攻擊會使嵌入式系統(tǒng)不可用。

要停止信號干擾,請部署適合你軟件的抗干擾機制 [PDF]。請記住,此保護(hù)措施還將保護(hù)你的嵌入式系統(tǒng)免受其他設(shè)備造成的意外干擾。

第3類:旁道攻擊

旁道攻擊是利用嵌入式系統(tǒng)中的硬件安全缺陷來攻擊它們。旁道攻擊是最困難和最昂貴的攻擊類型,因為它需要精確了解目標(biāo)系統(tǒng)的硬件設(shè)計和物理可用性。為了進(jìn)行側(cè)信道攻擊,黑客收集系統(tǒng)功耗、電磁泄漏、操作時間等信息

因此,他們可以計算出系統(tǒng)和連接設(shè)備的內(nèi)部操作,竊取密碼密鑰,甚至獲得對系統(tǒng)的控制權(quán)。

以下是最常見的旁道攻擊列表:

· 功率分析

· 定時攻擊

· 電磁分析

功耗分析攻擊需要對嵌入式系統(tǒng)進(jìn)行物理訪問,以便探測其連接并檢測功耗的變化。這些變化取決于系統(tǒng)處理的數(shù)據(jù),因此黑客可以檢測到系統(tǒng)何時處理特定類型的信息并截獲它。要防止此攻擊,請使用數(shù)據(jù)屏蔽技術(shù)修改敏感內(nèi)容,使其看起來像不重要的數(shù)據(jù)。

定時攻擊是基于嵌入式系統(tǒng)操作的時間。它們用于獲取信息,如應(yīng)用的加密算法、指令時間和代碼分支中的數(shù)據(jù)依賴差異、緩存訪問時間等等。這種類型的攻擊還需要對設(shè)備進(jìn)行物理訪問和對嵌入式系統(tǒng)架構(gòu)的深入了解。

由于定時攻擊強烈依賴于線性和可預(yù)測的軟件操作,你可以通過使用隨機數(shù)對空閑周期中的活動進(jìn)行重新安排來防止此類攻擊。基于此對嵌入式系統(tǒng)的時序分析將具有極大的挑戰(zhàn)性。

電磁分析為黑客提供了另一種無需黑客攻擊就能查看嵌入式軟件的方法。黑客可以使用電磁分析來記錄和分析設(shè)備的發(fā)射,找出其加密操作,甚至提取秘密

密鑰。這是最耗時且成本最高的攻擊類型,因為它需要:

· 物理上接近嵌入式系統(tǒng)

· 有關(guān)系統(tǒng)嵌入到的設(shè)備的布局的信息

· 與其他設(shè)備隔離以保護(hù)系統(tǒng)免受電磁干擾

硬件設(shè)計師可以通過降低信號強度或增加物理保護(hù)(例如使用某些類型的膠水或電路和電線屏蔽)來使收集電磁信號變得困難。隨機性和加密過程的中斷也是對抗電磁分析的有效措施。

我們上面討論的嵌入式系統(tǒng)的網(wǎng)絡(luò)安全措施可以幫助你預(yù)防或阻止特定類型的攻擊。在下一部分中,我們提供了11條建議來有效保護(hù)嵌入式硬件和軟件。

保護(hù)嵌入式系統(tǒng)的11個最佳實踐

在開始編碼之前,請研究嵌入式軟件開發(fā)的行業(yè)標(biāo)準(zhǔn),以發(fā)現(xiàn)有效的安全措施和開發(fā)實踐。

例如,注意:
· OWASP嵌入式應(yīng)用程序安全性
· IEEE標(biāo)準(zhǔn)
· NIST 為物聯(lián)網(wǎng)設(shè)備制造商提供的基礎(chǔ)網(wǎng)絡(luò)安全活動 [PDF]
· IPA的嵌入式系統(tǒng)開發(fā)過程參考指南 [PDF]

通過以下實踐,你可以在從設(shè)計到支持的所有開發(fā)階段使你的保護(hù)更加可靠:

wKgZomUD9nyAHKqbAAGvAUvAUTI951.png

提高嵌入式系統(tǒng)安全性的11個最佳實踐。

第一類:設(shè)計和軟件配置

1.使用安全的語言。在編寫第一行代碼之前,請針對你選擇的語言研究嵌入式軟件開發(fā)標(biāo)準(zhǔn)。例如,如果你要使用C或C ++,請首先學(xué)習(xí)MISRA-C / C ++。

2.啟用安全啟動。此功能允許微處理器在執(zhí)行固件之前驗證加密密鑰和固件的位置。為了增強這種保護(hù),您還可以啟用處理器的受信任執(zhí)行環(huán)境功能,該功能在微處理器中創(chuàng)建一個安全區(qū)域來存儲固件。

3.禁用不安全和不必要的服務(wù)。要定義此類服務(wù),你需要分析系統(tǒng)的操作。通常,此類服務(wù)的列表包括Telnet和瑣碎文件傳輸協(xié)議,調(diào)試代理,開放端口等。

第2類:內(nèi)存和應(yīng)用程序安全

1.限制內(nèi)存分配。實現(xiàn)一個內(nèi)存管理單元,為緩沖區(qū)、操作系統(tǒng)和應(yīng)用程序分配足夠的內(nèi)存。內(nèi)存管理單元有助于保持嵌入式系統(tǒng)運行的平衡,并防止內(nèi)存緩沖區(qū)溢出。此外,盡可能將內(nèi)存切換到只讀模式。

2.創(chuàng)建分區(qū)。將嵌入式系統(tǒng)的重要部分(如操作系統(tǒng)、GUI和安全應(yīng)用程序)劃分為不同的分區(qū),有助于將它們彼此隔離并包含攻擊。分區(qū)可以是物理分區(qū)和虛擬分區(qū)。

第3類:通訊安全

1.實施訪問控制。不受保護(hù)地訪問嵌入式系統(tǒng)的任何部分都是對黑客的公開邀請。要保護(hù)您的訪問點,請使用強憑據(jù)并對其進(jìn)行加密,實現(xiàn)最小權(quán)限原則,并盡可能啟用身份驗證。

2.保護(hù)通信通道。實現(xiàn)IPsec、DNS-SEC、SSH或SSL協(xié)議,并使用VPN保護(hù)與嵌入式系統(tǒng)的任何通信。部署防火墻來過濾流量也是一個很好的做法。

第4類:數(shù)據(jù)保護(hù)

1.加密所有內(nèi)容。所有固件更新、傳輸和處理的數(shù)據(jù)以及存儲的憑證都必須加密。使用加密簽名來驗證從可信來源獲得的文件并檢測可疑的修改。

2.混淆目標(biāo)代碼。混淆是一個過程,使你的代碼糾纏在一起,對黑客來說不清楚,但在嵌入式系統(tǒng)中是可執(zhí)行的。甚至可以通過混淆來加速代碼的執(zhí)行。這項措施將使黑客更難對你的代碼進(jìn)行反向工程。

第5類:發(fā)布和支持

1.進(jìn)行端到端威脅評估。完整的安全評估包括:

a.從設(shè)備制造商,軟件開發(fā)人員和最終用戶的角度執(zhí)行完整的生命周期分析并識別潛在威脅
b.創(chuàng)建風(fēng)險矩陣,并通過每個可能的渠道估算攻擊的可能性和成功率
c.自己模擬黑客攻擊或進(jìn)行黑盒滲透測試

2.定期更新軟件。無論為舊的嵌入式系統(tǒng)開發(fā)軟件有多么困難,這樣做總是有益的。在新的軟件版本中,你可以推出其他安全措施,以抵消新型攻擊或修補漏洞(如果在產(chǎn)品發(fā)布后發(fā)現(xiàn)一個漏洞)。別忘了添加如上所述的黑名單和白名單保護(hù)。這些方法將阻止從不受信任的來源安裝軟件。

有了這些實踐,你就可以使網(wǎng)絡(luò)犯罪分子更難為嵌入式系統(tǒng)盜用你的軟件。

最后

為嵌入式系統(tǒng)開發(fā)軟件是一個很大的挑戰(zhàn)。開發(fā)人員必須實現(xiàn)所有必需的功能,同時要考慮多個設(shè)備的限制并保護(hù)軟件免受攻擊。

當(dāng)然,威脅可能來自不同的來源和渠道,因此在微處理器和少量內(nèi)存中安裝針對所有這些威脅的保護(hù)似乎是不可能的。

轉(zhuǎn)載來源:strongerHuang
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5092

    文章

    19177

    瀏覽量

    307670
收藏 人收藏

    評論

    相關(guān)推薦

    LDO在嵌入式系統(tǒng)中的應(yīng)用 常見LDO故障及解決方法

    的應(yīng)用及其常見故障和解決方法的概述。 應(yīng)用場景 電源轉(zhuǎn)換 :LDO可以將電池電壓或其他電源電壓轉(zhuǎn)換為嵌入式系統(tǒng)所需的穩(wěn)定電壓。 噪聲抑制 :LDO能有效降低電源線上的噪聲,為敏感的模擬
    的頭像 發(fā)表于 12-13 09:08 ?866次閱讀

    嵌入式系統(tǒng)開發(fā)中的測試方法 嵌入式系統(tǒng)開發(fā)與AI結(jié)合應(yīng)用

    嵌入式系統(tǒng)開發(fā)中的測試方法 嵌入式系統(tǒng)開發(fā)是一個復(fù)雜的過程,涉及到硬件和軟件的緊密結(jié)合。測試是確保系統(tǒng)
    的頭像 發(fā)表于 12-09 10:22 ?530次閱讀

    嵌入式系統(tǒng)開發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)開發(fā)常見問題解決

    嵌入式系統(tǒng)開發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)是專為特定應(yīng)用設(shè)計的計算機系統(tǒng),它們通常嵌入在所控制的設(shè)備
    的頭像 發(fā)表于 12-09 09:38 ?418次閱讀

    嵌入式系統(tǒng)與物聯(lián)網(wǎng)的結(jié)合

    。這兩者的結(jié)合,為智能設(shè)備和智能系統(tǒng)的發(fā)展提供了強大的動力。 一、嵌入式系統(tǒng)與物聯(lián)網(wǎng)的基本概念 嵌入式系統(tǒng)
    的頭像 發(fā)表于 11-06 10:23 ?446次閱讀

    嵌入式系統(tǒng)的原理和應(yīng)用

    嵌入式系統(tǒng)是一專用的計算機系統(tǒng),其設(shè)計初衷是執(zhí)行特定任務(wù),而非作為通用計算機使用。這類系統(tǒng)通常作為更大
    的頭像 發(fā)表于 10-05 17:03 ?1205次閱讀

    嵌入式主板是什么意思?嵌入式主板全面解析

    嵌入式主板,通常被稱為嵌入式系統(tǒng)的核心組件,是一用于控制和數(shù)據(jù)處理的計算機硬件,其設(shè)計旨在嵌入特定設(shè)備中執(zhí)行專門任務(wù)。
    的頭像 發(fā)表于 09-30 10:05 ?972次閱讀

    嵌入式開發(fā)常見問題排查

    歸結(jié)為相對簡單的小問題。接下來,我們將討論一些嵌入式開發(fā)中常見的問題及其解決方法。一、問題復(fù)現(xiàn)要有效解決問題,首先需要能夠穩(wěn)定地復(fù)現(xiàn)它。一般來說,容易復(fù)現(xiàn)的問題也相對
    的頭像 發(fā)表于 09-22 08:04 ?408次閱讀
    <b class='flag-5'>嵌入式</b>開發(fā)<b class='flag-5'>常見</b>問題排查

    嵌入式常見模擬電路

    嵌入式系統(tǒng)設(shè)計中,模擬電路是不可或缺的一部分。它們負(fù)責(zé)處理真實世界中的信號,如聲音、溫度、壓力等,并將這些信號轉(zhuǎn)換成數(shù)字信號,或者對這些信號進(jìn)行放大、濾波等處理。以下是五常見的模擬
    發(fā)表于 08-28 15:31

    嵌入式QT常見開發(fā)方式有哪些?

    功能。 3.Qt Quick/QML開發(fā): 利用QML語言和Qt Quick框架來創(chuàng)建流暢且動畫豐富的用戶界面,QML是一聲明性語言,適合于快速原型開發(fā)和移動設(shè)備、嵌入式系統(tǒng)的現(xiàn)代界面設(shè)計。同時可以結(jié)合
    發(fā)表于 08-12 10:05

    嵌入式系統(tǒng)怎么學(xué)?

    一系列課程和技術(shù),包括但不限于以下內(nèi)容: 1、基礎(chǔ)知識:學(xué)習(xí)計算機組成原理、數(shù)字電路、模擬電路等基礎(chǔ)知識,建立對計算機硬件的認(rèn)知與理解。 2、編程語言:掌握至少一嵌入式系統(tǒng)常用的編程語言,如C
    發(fā)表于 07-02 10:10

    如何提升嵌入式編程能力?

    /C++:大多數(shù)嵌入式系統(tǒng)使用C或C++編程語言,因此深入學(xué)習(xí)這兩語言是非常重要的。 8. 理解操作系統(tǒng):學(xué)習(xí)嵌入式操作
    發(fā)表于 06-21 10:01

    入門嵌入式系統(tǒng)這些知識你知道嗎?

    嵌入式系統(tǒng)是一專用的計算機系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個控制程序存儲在R
    發(fā)表于 05-03 09:54 ?636次閱讀

    維諦嵌入式開關(guān)電源常見告警處理方法

    維諦嵌入式開關(guān)電源常見告警處理方法
    的頭像 發(fā)表于 04-09 17:15 ?1532次閱讀
    維諦<b class='flag-5'>嵌入式</b>開關(guān)電源<b class='flag-5'>常見</b>告警處理<b class='flag-5'>方法</b>

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一解決方案。嵌入式系統(tǒng)是一
    的頭像 發(fā)表于 03-15 14:29 ?1377次閱讀

    嵌入式系統(tǒng)發(fā)展前景?

    嵌入式系統(tǒng)發(fā)展前景? 嵌入式系統(tǒng),從定義上來說,是一專用的計算機系統(tǒng),它被設(shè)計用來控制、監(jiān)視或
    發(fā)表于 02-22 14:09
    任我赢百家乐官网软件| 大发888娱乐场下载iyou qrd| 帝王百家乐官网的玩法技巧和规则 | 百家乐游戏机的玩法| 百家乐官网最新打法| 全讯网hg9388.com| 百家乐官网永利娱乐场开户注册 | 百家乐在线怎么玩| 百家乐官网巴厘岛娱乐城| 威尼斯人娱乐城网| 杨公风水24山| 百家乐官网视频游戏网站| 大发888 yule| 太阳城百家乐网址--| 百家乐官网娱乐场真人娱乐场| 蓝盾百家乐| 状元百家乐的玩法技巧和规则| 乐中百家乐官网的玩法技巧和规则 | 赌百家乐官网心里技巧| 大发888网页ban| 电投百家乐网站| 百家乐官网大路小路三珠路| 丘北县| 百家乐赌的是心态吗| 百家乐官网博娱乐场| 江北区| 百家乐试玩活动| 百家乐官网投注方法网| 欢乐谷娱乐城| 百家乐电影网| 百家乐赌场占多大概率| 三星百家乐官网的玩法技巧和规则 | 青海省| 百家乐官网mediacorp| 大发888游戏平台 新葡京| 百家乐打线| K7百家乐官网的玩法技巧和规则 | 在线龙虎斗| 威尼斯人娱乐城网址是| 网上百家乐骗人的| A8百家乐官网娱乐|