RM新时代网站-首页

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

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

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

TCP/IP 堆棧漏洞是嵌入式軟件的警鐘

張英 ? 來源:小佳99 ? 作者:小佳99 ? 2022-07-15 15:43 ? 次閱讀

URGENT/11和其他最近的漏洞(例如與嵌入式 TCP/IP 堆棧相關(guān)的AMNESIA:33)表明在審查和審計(jì)軟件供應(yīng)鏈方面存在缺陷。責(zé)任不僅僅在于軟件供應(yīng)商,還指出嵌入式設(shè)備制造商需要評估的不僅僅是他們目前開發(fā)的產(chǎn)品

同時,這個問題不僅限于嵌入式軟件,或具體的 TCP/IP 堆棧。相反,它暴露了由重用軟件組件和頻繁發(fā)現(xiàn)與之相關(guān)的新漏洞所造成的安全風(fēng)險(xiǎn)。

讓我們仔細(xì)看看 Urgent/11 和 Amnesia:33 漏洞。兩者都在嵌入式 TCP/IP 堆棧中,這是令人擔(dān)憂的,因?yàn)?a target="_blank">網(wǎng)絡(luò)連接是消費(fèi)、醫(yī)療和工業(yè)應(yīng)用中常用的物聯(lián)網(wǎng) (IoT) 設(shè)備最有可能的攻擊媒介。盡管受影響設(shè)備上的網(wǎng)絡(luò)堆棧是一個常見弱點(diǎn),但這些漏洞通常與過時的軟件版本有關(guān)。漏洞令人擔(dān)憂,但可以修復(fù)和修補(bǔ)。

更令人擔(dān)憂的是,已知漏洞并未得到修補(bǔ)。截至 2020 年 12 月,97% 的 URGENT/11易受攻擊的設(shè)備仍未打補(bǔ)丁。這可以部分歸因于嵌入式系統(tǒng)供應(yīng)商、最終用戶、經(jīng)銷商和集成商對他們暴露于這些漏洞的缺乏了解。

知名的漏洞集可能是 URGENT/11,它最初隸屬于 Wind River VxWorks,影響許多流行的嵌入式實(shí)時操作系統(tǒng) (RTOS) 使用的 Interpeak IPnet 嵌入式 TCP/IP 堆棧,并且是商業(yè)軟件。URGENT/11 中的漏洞代表了軟件弱點(diǎn)的名人錄:緩沖區(qū)溢出、整數(shù)下溢、內(nèi)存緩沖區(qū)越界訪問、競爭條件、參數(shù)注入和空指針取消引用。

受影響的產(chǎn)品通常使用 ENEA、GreenHills Software、ITRON、IP Infusion ThreadX 和 Wind River 的嵌入式操作系統(tǒng) (OS)。在所有情況下,這些供應(yīng)商都更新或替換了其產(chǎn)品中受影響的 IPnet TCP/IP 堆棧。但是,這些操作系統(tǒng)的舊版本仍在數(shù)百萬臺設(shè)備上運(yùn)行。

與 URGENT/11 類似,AMNESIA:33 漏洞集與一組嵌入式開源 TCP/IP 堆棧(uIP-Contiki、uIP、open-iscsi、picoTCP、FNET 和 Nut/Net)有關(guān)。軟件弱點(diǎn)也直接來自CWE Top 25;整數(shù)環(huán)繞、越界讀寫、整數(shù)溢出、不正確的輸入驗(yàn)證和不正確的空終止。

pYYBAGLO-b2AUWA9AAK1DBl-GCQ315.png




picoTCP 是一種占用空間非常小的開源 TCP/IP 堆棧,用于許多 IoT 設(shè)備,現(xiàn)在在無數(shù)產(chǎn)品中都容易受到 Amnesia:33 漏洞的影響。(來源:GrammaTech)。

TCP/IP 堆棧漏洞(例如 URGENT/11 和 AMNESIA:33)在商業(yè)和開源嵌入式組件中都很普遍,并說明了對將要集成到設(shè)備中的所有類型的第三方軟件進(jìn)行盡職調(diào)查的重要性。

審計(jì)和管理嵌入式設(shè)備軟件組件漏洞的最有效方法是維護(hù)軟件材料清單 (SBOM)。這種方法不僅考慮了定制軟件,還考慮了 RTOS、庫(商業(yè)和開源)、板級支持包以及產(chǎn)品中使用的所有內(nèi)容。SBOM 還將包括構(gòu)成商業(yè)的組件(例如 RTOS 和附加組件,例如 TCP/IP 堆棧)和開源產(chǎn)品,包括所有版本和已知漏洞的詳細(xì)說明。SBOM 的整體性很重要,因?yàn)槿魏萎a(chǎn)品的安全性都取決于其中最不安全的組件。

SBOM 是使用軟件組成分析 (SCA) 創(chuàng)建的。但是,SCA 工具不能僅依賴源代碼的可用性,因?yàn)樵S多商業(yè)產(chǎn)品僅作為二進(jìn)制文件提供。相反,需要使用二進(jìn)制分析的 SCA 工具來檢測和檢查在開發(fā)的發(fā)布、集成和構(gòu)建階段創(chuàng)建的二進(jìn)制文件。

例如,依賴源代碼的 SCA 工具無法檢測二進(jìn)制代碼中的漏洞,而這是提供第三方產(chǎn)品的最有可能的方式。RTOS 和其他嵌入式軟件通常是為特定目標(biāo)架構(gòu)預(yù)構(gòu)建的,只有板支持包是由客戶在本地定制和編譯的。

SBOM 應(yīng)該在產(chǎn)品生命周期的各個階段進(jìn)行維護(hù),因?yàn)槁┒床粩啾话l(fā)現(xiàn),并且以前安全的組件可能變得不安全。它使開發(fā)團(tuán)隊(duì)能夠?qū)λ麄兪褂玫牡谌疆a(chǎn)品進(jìn)行盡職調(diào)查。只要二進(jìn)制簽名可用于漏洞,就有可能檢測到有風(fēng)險(xiǎn)的組件。在這個早期階段,很容易修補(bǔ)、更新或更換產(chǎn)品。將 SBOM 更新為任何現(xiàn)有流程的一部分也很重要,無論是 CI/CD 管道還是其他流程。

在安全方面,運(yùn)輸或報(bào)廢的產(chǎn)品通常很少受到關(guān)注。URGENT/11 和 AMNESIA:33 與過時和報(bào)廢產(chǎn)品有關(guān)的事實(shí)表明,安全是整個生命周期的關(guān)注點(diǎn)。使用二元分析的優(yōu)勢在于可以分析現(xiàn)有和遺留產(chǎn)品以創(chuàng)建整個產(chǎn)品線的 SBOM。這為嵌入式設(shè)備開發(fā)人員以及他們所依賴的供應(yīng)商提供了可能的安全風(fēng)險(xiǎn)預(yù)警。

這種場景的一個很好的例子是 picoTCP,這是一種占用空間非常小的開源 TCP/IP 堆棧,用于許多 IoT 設(shè)備。在過去的幾年里,這個項(xiàng)目似乎已經(jīng)走到了生命的盡頭,幾乎沒有什么發(fā)展(看看 GitHub 的活動,寫這篇文章時的最新提交是 15 個月前,大部分源代碼在四年多的時間里都沒有被觸及。 ) 盡管有這一事實(shí),但它仍被用于無數(shù)產(chǎn)品中,這些產(chǎn)品現(xiàn)在很容易受到 Amnesia:33 漏洞的影響。

使用 SCA 為產(chǎn)品組合創(chuàng)建 SBOM 是對組件和集成第三方軟件進(jìn)行編目以檢測已知漏洞存在的重要步驟。這種方法允許制造商建立和維護(hù)一個組織范圍的開源和內(nèi)部/閉源庫和可執(zhí)行文件的存儲庫,因此他們知道他們交付的軟件中實(shí)際包含什么。

審核編輯 黃昊宇

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

    關(guān)注

    4

    文章

    240

    瀏覽量

    26641
  • 堆棧
    +關(guān)注

    關(guān)注

    0

    文章

    182

    瀏覽量

    19753
  • 漏洞
    +關(guān)注

    關(guān)注

    0

    文章

    204

    瀏覽量

    15366
收藏 人收藏

    評論

    相關(guān)推薦

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

    嵌入式系統(tǒng)開發(fā)與硬件的關(guān)系 嵌入式系統(tǒng)是專為特定應(yīng)用設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它們通常嵌入在所控制的設(shè)備中。這些系統(tǒng)的關(guān)鍵特點(diǎn)是它們與硬件的緊密集成,這意味著軟件必須為特定的硬件平臺量身定制。
    的頭像 發(fā)表于 12-09 09:38 ?233次閱讀

    什么是嵌入式?一文讀懂嵌入式主板

    在現(xiàn)代科技浪潮中,嵌入式技術(shù)已成為支撐各種智能設(shè)備和系統(tǒng)運(yùn)行的核心力量。那么,究竟什么是嵌入式?嵌入式系統(tǒng),顧名思義,是將計(jì)算機(jī)的硬件和軟件嵌入
    的頭像 發(fā)表于 10-16 10:14 ?922次閱讀

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+ Hypervisor應(yīng)用場景調(diào)研

    ,比如系統(tǒng)軟件和應(yīng)用軟件自身的漏洞、病毒和網(wǎng)絡(luò)攻擊、以及人為操作導(dǎo)致的破壞,Hypervisor的出現(xiàn)就是為了構(gòu)建高可靠性的嵌入式系統(tǒng),原來如此??! 讀到這里,我感覺Hyperviso
    發(fā)表于 10-14 11:21

    EsDA,一站嵌入式軟件

    ,旨在提高嵌入式軟件開發(fā)的效率、性能和可擴(kuò)展性。EsDA全稱是嵌入式系統(tǒng)設(shè)計(jì)自動化,它是一個由AWorksLP、AWStudio、AXPI、AWTK、ZWS等多種軟件
    的頭像 發(fā)表于 09-15 08:10 ?279次閱讀
    EsDA,一站<b class='flag-5'>式</b><b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>

    嵌入式軟件開發(fā)與AI整合

    嵌入式軟件開發(fā)與AI整合是當(dāng)前技術(shù)發(fā)展的重要趨勢之一。隨著人工智能技術(shù)的快速發(fā)展,嵌入式系統(tǒng)越來越多地集成了AI算法,以實(shí)現(xiàn)更復(fù)雜的智能功能。以下是關(guān)于嵌入式
    的頭像 發(fā)表于 07-31 09:25 ?692次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>開發(fā)與AI整合

    USB嵌入式主機(jī)堆棧

    在USB標(biāo)準(zhǔn)下,USB設(shè)備之間不能直接通信。它們只能與控制一個或多個設(shè)備通信的總線的 USB 主機(jī)通信。常見的 USB 主機(jī)是 PC。本應(yīng)用筆記討論了 USB 嵌入式主機(jī),它可以使嵌入式應(yīng)用程序在各種 USB 設(shè)備中使用。
    發(fā)表于 05-03 09:13 ?188次閱讀
    USB<b class='flag-5'>嵌入式</b>主機(jī)<b class='flag-5'>堆棧</b>

    為什么嵌入式系統(tǒng)需要堆棧分析?如何進(jìn)行監(jiān)控堆棧分析呢?

    隨著代碼行數(shù)從幾千到上百萬不等,嵌入式軟件變得日益復(fù)雜,但總體目標(biāo)依然是實(shí)現(xiàn)穩(wěn)健、正確且快速執(zhí)行的軟件。
    的頭像 發(fā)表于 03-28 10:23 ?802次閱讀

    嵌入式軟件設(shè)計(jì)的原則分享

    嵌入式軟件開發(fā)如果具有更好的閱讀性、擴(kuò)展性以及維護(hù)性,就需要考慮很多因素。今天給大家分享幾個嵌入式軟件設(shè)計(jì)的原則。
    發(fā)表于 02-25 10:54 ?679次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>設(shè)計(jì)的原則分享

    嵌入式軟件開發(fā)應(yīng)該掌握哪些知識?

    嵌入式軟件開發(fā)應(yīng)該掌握哪些知識? 一、 什么是嵌入式軟件? 嵌入式軟件通常是指
    發(fā)表于 02-19 11:23

    高端嵌入式實(shí)驗(yàn)平臺

    一、整體概述 該嵌入式平臺具有前沿性、專業(yè)性、高集成度、功能豐富等特點(diǎn),平臺涵蓋嵌入式計(jì)算機(jī)技術(shù)、嵌入式硬件接口、嵌入式系統(tǒng)軟件等關(guān)鍵技術(shù)點(diǎn)
    的頭像 發(fā)表于 01-29 09:55 ?513次閱讀
    高端<b class='flag-5'>嵌入式</b>實(shí)驗(yàn)平臺

    汽車嵌入式軟件的技能要求

    如果你希望開始在汽車嵌入式軟件領(lǐng)域的職業(yè)生涯,必須掌握符合行業(yè)需求的全面技能。下面是一個路線圖,列出了需要學(xué)習(xí)的關(guān)鍵技術(shù)和技能。
    的頭像 發(fā)表于 01-23 11:09 ?1707次閱讀
    汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>的技能要求

    嵌入式軟件開發(fā)和軟件開發(fā)的區(qū)別

    嵌入式軟件開發(fā)和軟件開發(fā)是兩個不同的概念,它們在一些關(guān)鍵方面有著明顯的區(qū)別。嵌入式軟件開發(fā)是指開發(fā)嵌入
    的頭像 發(fā)表于 01-22 15:27 ?2267次閱讀

    基于功能安全的汽車嵌入式軟件單元驗(yàn)證技術(shù)研究

    隨著汽車嵌入式軟件功能的不斷疊加,軟件復(fù)雜性不斷提升,對汽車嵌入式軟件的安全性提出了更高要求,基于功能安全的
    的頭像 發(fā)表于 01-07 11:27 ?1045次閱讀
    基于功能安全的汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>單元驗(yàn)證技術(shù)研究

    嵌入式系統(tǒng)中堆棧監(jiān)控的作用

    在微控制器或微處理器中,堆棧是內(nèi)存的一個保留區(qū)域,用于存儲臨時數(shù)據(jù)和函數(shù)調(diào)用信息,管理函數(shù)的執(zhí)行,跟蹤返回地址、局部變量和函數(shù)參數(shù)。堆棧監(jiān)控是嵌入式系統(tǒng)運(yùn)行中起關(guān)鍵作用的一項(xiàng)安全措施,促進(jìn)了
    的頭像 發(fā)表于 01-05 11:13 ?490次閱讀

    聊聊嵌入式軟件分層

    今天以控制LED閃爍為例,聊聊嵌入式軟件分層
    的頭像 發(fā)表于 12-28 09:22 ?672次閱讀
    RM新时代网站-首页