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

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

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

DevSecOps 為嵌入式安全帶來(lái)深度防御

abdkjshd ? 來(lái)源:abdkjshd ? 作者:abdkjshd ? 2022-07-15 16:08 ? 次閱讀

雖然連接的系統(tǒng)帶來(lái)了更容易的監(jiān)控、升級(jí)和增強(qiáng),但它們也呈現(xiàn)出更易受攻擊的表面。防御此類攻擊可能很困難。

應(yīng)用多個(gè)安全級(jí)別——例如,正確加載圖像的安全啟動(dòng)、域分離和減少攻擊面——確保如果一個(gè)級(jí)別失敗,其他級(jí)別仍然存在。雖然單獨(dú)的安全應(yīng)用程序代碼無(wú)法在不安全的環(huán)境中提供足夠的保護(hù),但它確實(shí)在設(shè)計(jì)時(shí)考慮到安全性的系統(tǒng)中發(fā)揮了關(guān)鍵作用。

無(wú)論首選的開發(fā)生命周期如何,這都是正確的。因此,嵌入式開發(fā)團(tuán)隊(duì)越來(lái)越多地接受 DevOps 原則,而其他人則更喜歡傳統(tǒng)上與功能安全標(biāo)準(zhǔn)相關(guān)的 V 模型,例如航空航天的 DO-178C、汽車的 ISO 26262 和醫(yī)療設(shè)備的 IEC 62304。

從 DevOps 到 DevSecOps 深度防御

DevOps 方法整合了開發(fā)和運(yùn)營(yíng)團(tuán)隊(duì),專為應(yīng)對(duì)不斷變化的環(huán)境而設(shè)計(jì)。DevOps 為許多嵌入式應(yīng)用程序帶來(lái)了明顯的好處。例如,通過(guò)更集成的產(chǎn)品開發(fā)可以更快地滿足新的市場(chǎng)需求,也許最重要的是,應(yīng)用程序補(bǔ)丁和更新(例如汽車軟件的無(wú)線 (OTA) 安全性)可以比其他方法更快地應(yīng)用。

DevSecOps(代表開發(fā)安全操作)以“左移”原則擴(kuò)展了 DevOps 原則,在每次軟件迭代中盡早并持續(xù)地設(shè)計(jì)和測(cè)試安全性。

縱深防御和過(guò)程模型

傳統(tǒng)上,安全嵌入式代碼驗(yàn)證的實(shí)踐在很大程度上是被動(dòng)的。代碼是按照相對(duì)寬松的準(zhǔn)則開發(fā)的,然后進(jìn)行性能、滲透、負(fù)載和功能測(cè)試以識(shí)別漏洞。

更主動(dòng)的方法可確保代碼在設(shè)計(jì)上是安全的。這意味著一個(gè)系統(tǒng)的開發(fā)過(guò)程,其中代碼是根據(jù)安全編碼標(biāo)準(zhǔn)編寫的,可以追溯到安全要求,并經(jīng)過(guò)測(cè)試以證明隨著開發(fā)的進(jìn)展符合這些要求。

這種主動(dòng)方法的一種解釋是將與安全相關(guān)的最佳實(shí)踐集成到功能安全領(lǐng)域的開發(fā)人員熟悉的 V 模型軟件開發(fā)生命周期中。由此產(chǎn)生的安全軟件開發(fā)生命周期 (SSDLC) 代表了以安全為中心的應(yīng)用程序開發(fā)人員的左移,確保漏洞是在系統(tǒng)之外設(shè)計(jì)的(圖 1)。

pYYBAGLO89qAIZWAAAPFF3Afed8563.jpg


圖1 V模型中安全測(cè)試工具和技術(shù)的使用基于安全軟件開發(fā)生命周期(SSLDLC)框架。資料來(lái)源:LDRA

盡管 DevSecOps 和 SSDLC 的上下文不同,但向左移動(dòng)對(duì)兩者來(lái)說(shuō)意味著相同的事情——早期和持續(xù)的安全考慮(圖 2)。

poYBAGLO8_eAN3YvAAYYVBjqvTA878.jpg


圖 2 DevSecOps 流程模型利用安全測(cè)試工具和技術(shù)。資料來(lái)源:LDRA

左移:這意味著什么

任何開發(fā)安全關(guān)鍵型應(yīng)用程序的人都應(yīng)該熟悉“左移”原則背后的概念,因?yàn)槎嗄陙?lái),功能安全標(biāo)準(zhǔn)要求采用類似的方法。因此,在功能安全領(lǐng)域證明的以下最佳實(shí)踐也適用于安全關(guān)鍵型應(yīng)用程序:

從一開始就確定要求

未記錄的需求會(huì)導(dǎo)致各方溝通不暢,并造成返工、更改、錯(cuò)誤修復(fù)和安全漏洞。為確保項(xiàng)目順利開發(fā),所有團(tuán)隊(duì)成員必須以相同的方式了解產(chǎn)品的所有部分及其開發(fā)過(guò)程。明確定義的功能和安全要求有助于確保他們這樣做。

這樣的要求可能會(huì)為 V 模型開發(fā)人員定義一個(gè)完整的系統(tǒng),而對(duì)于那些應(yīng)用 DevSecOps 的人來(lái)說(shuō),這只是一個(gè)迭代。但是,原理保持不變。這并不是說(shuō)軟件永遠(yuǎn)不能用作“智力模型粘土”來(lái)創(chuàng)建概念驗(yàn)證,而是這種實(shí)驗(yàn)的最終結(jié)果應(yīng)該是明確定義的需求——并適當(dāng)?shù)亻_發(fā)生產(chǎn)代碼來(lái)滿足這些需求。

提供雙向追溯

雙向可追溯性意味著追溯路徑既向前又向后維護(hù),而自動(dòng)化使在不斷變化的項(xiàng)目環(huán)境中維護(hù)變得更加容易(圖 3)。

poYBAGLO9BGAcOVQAAl-s3q3mgk534.jpg


圖 3 自動(dòng)化使雙向可追溯性更易于維護(hù)。資料來(lái)源:LDRA

前向可追溯性表明所有需求都反映在開發(fā)過(guò)程的每個(gè)階段,包括實(shí)施和測(cè)試。可以通過(guò)應(yīng)用影響分析來(lái)評(píng)估更改的需求或失敗的測(cè)試用例的后果。然后可以重新測(cè)試修訂后的實(shí)施,以提供繼續(xù)遵守雙向可追溯性原則的證據(jù)。

向后追溯,它突出顯示不滿足任何指定要求的代碼,同樣重要。否則,疏忽、錯(cuò)誤邏輯、功能蔓延和惡意后門方法的插入可能會(huì)引入安全漏洞或錯(cuò)誤。

安全嵌入式應(yīng)用程序的任何妥協(xié)都需要更改或新的要求,并且需要立即響應(yīng)——通常是源代碼開發(fā)工程師很長(zhǎng)時(shí)間沒(méi)有觸及的內(nèi)容。在這種情況下,自動(dòng)可追溯性可以隔離所需內(nèi)容并僅對(duì)受影響的功能進(jìn)行自動(dòng)測(cè)試。

使用安全語(yǔ)言子集

對(duì)于 C 或 C++ 開發(fā),研究表明大約 80% 的軟件缺陷源于大約 20% 的語(yǔ)言的不正確使用。為了解決這個(gè)問(wèn)題,開發(fā)人員可以使用通過(guò)禁止有問(wèn)題的結(jié)構(gòu)來(lái)提高安全性和安全性的語(yǔ)言子集。

兩個(gè)常見的子集是 MISRA C 和卡內(nèi)基梅隆軟件工程學(xué)院 (SEI) CERT C,它們都可以幫助開發(fā)人員生成安全代碼。這兩個(gè)標(biāo)準(zhǔn)具有相似的目標(biāo),但實(shí)施方式不同。

一般來(lái)說(shuō),使用 MISRA C 開發(fā)新代碼會(huì)導(dǎo)致更少的編碼錯(cuò)誤,因?yàn)樗哂谢诘谝辉瓌t定義的更嚴(yán)格、更可判定的規(guī)則。參照 MISRA C 編碼標(biāo)準(zhǔn)快速輕松地分析軟件的能力可以提高代碼質(zhì)量和一致性,并縮短部署時(shí)間。相比之下,當(dāng)開發(fā)人員需要追溯應(yīng)用規(guī)則來(lái)編碼時(shí),CERT C 可能是一個(gè)務(wù)實(shí)的選擇。針對(duì) CERT C 分析代碼可識(shí)別大多數(shù)軟件安全攻擊背后的常見編程錯(cuò)誤。

應(yīng)用 MISRA C 或 CERT C 會(huì)產(chǎn)生更安全的代碼。在任何顯著大小的代碼庫(kù)上手動(dòng)執(zhí)行此類標(biāo)準(zhǔn)是不切實(shí)際的,因此需要靜態(tài)分析工具。

遵守以安全為中心的流程標(biāo)準(zhǔn)

在安全關(guān)鍵領(lǐng)域,適當(dāng)?shù)臉?biāo)準(zhǔn)經(jīng)常補(bǔ)充那些關(guān)注功能安全的標(biāo)準(zhǔn)。例如,J3061“網(wǎng)絡(luò)物理車輛系統(tǒng)的網(wǎng)絡(luò)安全指南”——即將被 ISO/SAE 21434“道路車輛——網(wǎng)絡(luò)安全工程”取代——補(bǔ)充了汽車 ISO 26262 功能安全標(biāo)準(zhǔn)。如果需要,自動(dòng)化開發(fā)工具可以集成到安全關(guān)鍵系統(tǒng)的開發(fā)人員工作流程中,并且可以同時(shí)滿足功能安全需求。

自動(dòng)化 SAST(靜態(tài))和 DAST(動(dòng)態(tài))測(cè)試過(guò)程

靜態(tài)分析是涉及自動(dòng)檢查源代碼的測(cè)試制度的統(tǒng)稱。相比之下,動(dòng)態(tài)分析涉及部分或全部源代碼的執(zhí)行。此類技術(shù)對(duì)安全問(wèn)題的關(guān)注分別導(dǎo)致靜態(tài)應(yīng)用程序安全測(cè)試 (SAST) 和動(dòng)態(tài)分析安全測(cè)試 (DAST)。

在這些分組中存在很大差異。例如,滲透、功能和模糊測(cè)試都是黑盒 DAST 測(cè)試,不需要訪問(wèn)源代碼即可實(shí)現(xiàn)其功能。黑盒 DAST 測(cè)試是對(duì)白盒 DAST 測(cè)試的補(bǔ)充,白盒測(cè)試包括單元測(cè)試、集成測(cè)試和系統(tǒng)測(cè)試,以通過(guò)動(dòng)態(tài)分析揭示應(yīng)用程序源代碼中的漏洞。

盡早并經(jīng)常測(cè)試

所描述的所有與安全相關(guān)的工具、測(cè)試和技術(shù)在每個(gè)生命周期模型中都有一席之地。在 V 模型中,它們?cè)诤艽蟪潭壬项愃朴诤脱a(bǔ)充通常與功能安全應(yīng)用程序開發(fā)相關(guān)的過(guò)程。

在 V 模型的情況下,需求可追溯性在整個(gè)開發(fā)過(guò)程中得到維護(hù),在 DevSecOps 模型的情況下,需求可追溯性在每個(gè)開發(fā)迭代中得到維護(hù)。

一些 SAST 工具用于確認(rèn)遵守編碼標(biāo)準(zhǔn),確保將復(fù)雜性保持在最低限度,并檢查代碼是否可維護(hù)。其他用于檢查安全漏洞,但僅限于在沒(méi)有執(zhí)行環(huán)境上下文的情況下對(duì)源代碼進(jìn)行此類檢查的范圍內(nèi)。

白盒 DAST 使編譯和執(zhí)行的代碼能夠在開發(fā)環(huán)境中進(jìn)行測(cè)試,或者更好的是,在目標(biāo)硬件上進(jìn)行測(cè)試。代碼覆蓋有助于確認(rèn)代碼滿足所有安全和其他要求,并且所有代碼都滿足一個(gè)或多個(gè)要求。如果系統(tǒng)的關(guān)鍵性需要,這些檢查甚至可以達(dá)到目標(biāo)代碼級(jí)別。

可以在單元測(cè)試環(huán)境中使用健壯性測(cè)試來(lái)幫助證明特定功能是有彈性的,無(wú)論是孤立的還是在其調(diào)用樹的上下文中。傳統(tǒng)的模糊和滲透黑盒 DAST 測(cè)試技術(shù)仍然很有價(jià)值,但在這種情況下,用于確認(rèn)和展示在安全基礎(chǔ)上設(shè)計(jì)和開發(fā)的系統(tǒng)的穩(wěn)健性。

使用自動(dòng)化工具為安全鋪平道路

在開始軟件開發(fā)過(guò)程之前,開發(fā)人員應(yīng)該能夠使用自動(dòng)化工具,例如加快開發(fā)、認(rèn)證和批準(zhǔn)過(guò)程的測(cè)試軟件。使用這些工具在整個(gè)生命周期內(nèi)支持他們的工作,同時(shí)遵循與“左移,早期測(cè)試”方法相關(guān)的最佳實(shí)踐,有助于提高互聯(lián)嵌入式系統(tǒng)的安全性,從而繼續(xù)為行業(yè)帶來(lái)如此重大的變化。


審核編輯 黃昊宇

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

    關(guān)注

    0

    文章

    25

    瀏覽量

    10888
  • devops
    +關(guān)注

    關(guān)注

    0

    文章

    107

    瀏覽量

    11980
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

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

    學(xué)習(xí)hypervisor嵌入式產(chǎn)品安全設(shè)計(jì)

    第一部分(第1~2章)介紹Hypervisor基礎(chǔ),涵蓋虛擬化技術(shù)與實(shí)現(xiàn)、主流的嵌入式Hypervisor產(chǎn)品,以及基于分離內(nèi)核的嵌入式Hypervisor等內(nèi)容。第二部分(第3~12章)介紹嵌入式
    發(fā)表于 08-25 09:11

    ARMxy ARM嵌入式計(jì)算機(jī)搭載 1 TOPS NPU支持深度學(xué)習(xí)

    ARMxy ARM嵌入式計(jì)算機(jī)BL410系列內(nèi)置了1TOPS算力 NPU,它每秒可以執(zhí)行高達(dá)一萬(wàn)億次的浮點(diǎn)運(yùn)算,這復(fù)雜的圖像處理和深度學(xué)習(xí)任務(wù)提供了充足的計(jì)算資源。在產(chǎn)品缺陷檢測(cè)領(lǐng)域,ARMxy ARM
    的頭像 發(fā)表于 08-20 11:53 ?196次閱讀
    ARMxy ARM<b class='flag-5'>嵌入式</b>計(jì)算機(jī)搭載 1 TOPS NPU支持<b class='flag-5'>深度</b>學(xué)習(xí)

    2024上海國(guó)際嵌入式展回顧 Jama需求管理平臺(tái)的功能優(yōu)勢(shì)、與Jira集成及行業(yè)應(yīng)用

    日前,龍智攜嵌入式開發(fā)及管理解決方案亮相2024上海國(guó)際嵌入式展(embedded world China 2024)。展會(huì)期間,我們對(duì)話了多位龍智資深DevSecOps顧問(wèn)及技術(shù)支持專家
    的頭像 發(fā)表于 08-05 13:53 ?109次閱讀

    聚焦嵌入式開發(fā)中的合規(guī)性工具、項(xiàng)目管理工具、版本迭代工具應(yīng)用

    日前,龍智攜嵌入式開發(fā)及管理解決方案亮相2024上海國(guó)際嵌入式展(embedded world China 2024)。展會(huì)期間,我們對(duì)話了多位龍智資深DevSecOps顧問(wèn)及技術(shù)支持專家
    的頭像 發(fā)表于 07-29 15:15 ?369次閱讀

    嵌入式熱門領(lǐng)域有哪些?

    通過(guò)物聯(lián)網(wǎng)連接各種物理設(shè)備和傳感器,促使它們之間實(shí)現(xiàn)信息的交換和數(shù)據(jù)的共享。從智能家居到智能城市,物聯(lián)網(wǎng)的應(yīng)用不斷擴(kuò)展,嵌入式系統(tǒng)工程師帶來(lái)了廣泛的就業(yè)機(jī)會(huì)和發(fā)展前景。 自動(dòng)駕駛 自動(dòng)駕駛技術(shù)作為
    發(fā)表于 07-16 09:23

    深度學(xué)習(xí)算法在嵌入式平臺(tái)上的部署

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)算法在各個(gè)領(lǐng)域的應(yīng)用日益廣泛。然而,將深度學(xué)習(xí)算法部署到資源受限的嵌入式平臺(tái)上,仍然是一個(gè)具有挑戰(zhàn)性的任務(wù)。本文將從嵌入式平臺(tái)的特點(diǎn)、
    的頭像 發(fā)表于 07-15 10:03 ?959次閱讀

    聚焦嵌入式開發(fā)的測(cè)試工具,確保安全合規(guī):靜態(tài)代碼分析Perforce Helix QAC&amp;Klocwork、單元測(cè)試TESSY

    開發(fā)與管理領(lǐng)域的最新趨勢(shì)、工具選擇以及DevSecOps實(shí)踐應(yīng)用等方面展開了深入探討。 本期對(duì)話龍智資深DevSecOps顧問(wèn)張鼎凱,聚焦于嵌入式開發(fā)的趨勢(shì)與挑戰(zhàn),以及龍智嵌入式開發(fā)解
    的頭像 發(fā)表于 07-01 14:26 ?390次閱讀

    下周見!飛凌嵌入式即將亮相2024上海國(guó)際嵌入式

    ,聚焦人工智能、智慧交通、工業(yè)互聯(lián)網(wǎng)、智慧醫(yī)療、電力與儲(chǔ)能等領(lǐng)域,全球客戶帶來(lái)一場(chǎng)技術(shù)與創(chuàng)新的盛宴。誠(chéng)摯地邀請(qǐng)大家蒞臨3號(hào)館646飛凌嵌入式展位,讓我們共創(chuàng)嵌入式
    的頭像 發(fā)表于 06-07 08:02 ?535次閱讀
    下周見!飛凌<b class='flag-5'>嵌入式</b>即將亮相2024上海國(guó)際<b class='flag-5'>嵌入式</b>展

    嵌入式技術(shù)領(lǐng)域的視覺(jué)、安全與AI應(yīng)用

    本次2024年度德國(guó)版嵌入式世界展的大獎(jiǎng)評(píng)選共收到全球百余家企業(yè)的申請(qǐng),經(jīng)由評(píng)審團(tuán)嚴(yán)格篩選,最終選出三項(xiàng)候選提名,并于會(huì)場(chǎng)進(jìn)行了隆重的頒獎(jiǎng)儀式。其中,嵌入式視覺(jué)、安全與安防、人工智能等應(yīng)用領(lǐng)域備受矚目。
    的頭像 發(fā)表于 04-29 11:20 ?297次閱讀

    嵌入式會(huì)越來(lái)越卷嗎?

    技術(shù),如加密算法、防火墻等,嵌入式系統(tǒng)能夠更好地保護(hù)數(shù)據(jù)和系統(tǒng)的安全。 融合與互聯(lián)的趨勢(shì) 嵌入式系統(tǒng)不再孤立存在,它們正在與其他技術(shù)和平臺(tái)進(jìn)行深度融合。云計(jì)算、邊緣計(jì)算等技術(shù)的興起,
    發(fā)表于 03-18 16:41

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)中的一種解決方案。嵌入式系統(tǒng)是一種特定應(yīng)用而設(shè)計(jì)的計(jì)算機(jī)系統(tǒng),它通常包括處理器、內(nèi)存、外設(shè)接口等組件,并且被
    的頭像 發(fā)表于 03-15 14:29 ?1119次閱讀

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

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

    什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用

    嵌入式,一般是指嵌入式系統(tǒng)。用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置。
    的頭像 發(fā)表于 12-20 13:33 ?2273次閱讀

    FPGA嵌入式設(shè)計(jì)帶來(lái)了強(qiáng)大的功能與靈活性

    盡管 FPGA 嵌入式設(shè)計(jì)帶來(lái)了強(qiáng)大的功能與靈活性,但額外的開發(fā)流程也給設(shè)計(jì)工作增加了新的復(fù)雜性和限制問(wèn)題。整合傳統(tǒng)的硬件-FPGA-軟件設(shè)計(jì)流程并充分利用 FPGA 的可再編程功能是我們的一個(gè)
    的頭像 發(fā)表于 12-07 09:35 ?446次閱讀