91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

嵌入式系統(tǒng)安全性:C/C++編程與SAST靜態(tài)代碼分析在工業(yè)4.0及物聯(lián)網(wǎng)時代的新實踐

龍智DevSecOps ? 2024-08-19 13:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工業(yè)4.0時代,您需要了解的嵌入式系統(tǒng)網(wǎng)絡安全知識


當前,技術的發(fā)展比以往任何時候都要迅猛,每天都有針對各種難以想象的任務的新產(chǎn)品和新功能問世?,F(xiàn)在不僅僅關乎移動應用和計算機了,而是關乎嵌入式系統(tǒng)和物聯(lián)網(wǎng)IoT)設備。無論是在我們的日常生活,還是工業(yè)自動化等行業(yè)中,這些設備都已經(jīng)變得非常普遍。

這些設備似乎無處不在,運行的軟件覆蓋了幾乎所有的東西:嬰兒監(jiān)視器、揚聲器、健身追蹤器、監(jiān)控攝像頭、恒溫器和汽車等,不一而足。

關于這個新世界,建筑師、麻省理工學院教授和作家Nicholas Negroponte表示:“就像空氣和飲用水一樣,數(shù)字化只有在缺失時才會被注意到,而不是在其存在時?!?就Negroponte的觀點而言,我們已經(jīng)被數(shù)字技術所包圍,我們甚至沒有注意到它,直到它消失或成為一個安全問題。

我們所知道的物聯(lián)網(wǎng)設備(包括嵌入式系統(tǒng))通常配備了處理器、傳感器和其他通過互聯(lián)網(wǎng)連接的功能。當說到嵌入式系統(tǒng)時,我們指的是在更大規(guī)模的數(shù)字、機械電氣系統(tǒng)中執(zhí)行特定功能的處理器。嵌入式系統(tǒng)可以是物聯(lián)網(wǎng)設備中的固件,也可以是汽車、機器人、信用卡讀卡器、手機、小工具、網(wǎng)絡設備、醫(yī)療設備或其他任何設備中的電子控制單元(ECU)。

對于企業(yè)而言,工業(yè)4.0正在改變產(chǎn)品的制造和分銷方式。隨著促進生產(chǎn)力和創(chuàng)新的嵌入式系統(tǒng)中增加了更多組件,物聯(lián)網(wǎng)安全和工業(yè)4.0網(wǎng)絡安全面臨的挑戰(zhàn)也與日俱增。再加上云計算、分析、機器學習人工智能等技術,工業(yè)4.0的環(huán)境變得更加負責——不僅涉及多個設備和系統(tǒng),而且分布在多個地點和貢獻者之間。

物聯(lián)網(wǎng)和嵌入式系統(tǒng)的安全管理不能是一個孤立的過程。相反,組織和開發(fā)團隊應著重關注物聯(lián)網(wǎng)所依賴的軟件的安全,因為軟件負責每個設備的性能,并促進設備和系統(tǒng)之間的通信

C和C++為何對嵌入式系統(tǒng)軟件安全至關重要?


由于尺寸和成本的限制,嵌入式系統(tǒng)中的軟件在處理、內(nèi)存和電源方面只能使用有限的計算機資源。由于需要輕量級的軟件,像C和C++這樣的編程語言在嵌入式系統(tǒng)中占據(jù)主導地位,就像它們目前在運行大多數(shù)云服務器中的Linux內(nèi)核上一樣。雖然C++比C需要更多的計算資源,但更強大的微處理器的出現(xiàn)使C++成為全球數(shù)百萬嵌入式系統(tǒng)的首選語言。

嵌入式系統(tǒng)中也使用Python等其他編程語言,但C和C++是主要選擇。還有一種嵌入式C++(EC++),它是C++語言的一個子集,可通過完整C++語言的主要功能提供更大的空間和速度效率?,F(xiàn)在的微處理器可以配備C++編譯器,這使得嵌入式系統(tǒng)的編碼工作變得更加容易。

嵌入式系統(tǒng)的編碼與其他類型的應用程序不同。首先,你會受到資源限制,然后你必須設計容錯功能、實時功能、可靠性,并且大多數(shù)情況下,不能有停機時間。但更重要的是,代碼必須安全可靠。想想嵌入式系統(tǒng)和物聯(lián)網(wǎng)設備在醫(yī)療保健和制藥行業(yè),或汽車和航空航天行業(yè)中的重要性。這種技術的缺失不僅會引起注意,而且如果不夠安全,還將成為一個關鍵問題。

靜態(tài)分析為何對嵌入式系統(tǒng)和物聯(lián)網(wǎng)軟件安全至關重要?


軟件安全漏洞通常是在開發(fā)過程中引入的,因此在編碼過程中盡早主動地發(fā)現(xiàn)漏洞,可以預防安全問題的產(chǎn)生。靜態(tài)分析是確保源代碼不出現(xiàn)可能導致漏洞和攻擊的缺陷的重要工具。靜態(tài)分析也稱為靜態(tài)應用程序安全測試(SAST),它可以掃描應用程序的源代碼,包括用于嵌入式系統(tǒng)和工業(yè)4.0網(wǎng)絡安全應用的代碼。這種高度專業(yè)化的代碼掃描可根據(jù)所使用的相應編程語言和框架查找特定缺陷。靜態(tài)分析工具(如Perforce Helix QAC 和 Klocwork)還會報告是否符合編碼標準。

靜態(tài)分析工具使開發(fā)和安全團隊能夠分析成千上萬甚至數(shù)百萬行的代碼。它們根據(jù)規(guī)則和政策查找代碼中的缺陷,并強制執(zhí)行編碼標準。最重要的是,靜態(tài)分析工具已成為軟件開發(fā)生命周期中不可或缺的一部分,并且是每次代碼更改或新版本發(fā)布前都需要在源代碼上運行的常規(guī)步驟。

隨著組織越來越多地使用嵌入式系統(tǒng)和物聯(lián)網(wǎng),安全的重要性也隨之提高,尤其是在各行各業(yè)的關鍵任務功能方面。通過靜態(tài)分析發(fā)現(xiàn)安全缺陷,可以防止有缺陷設備的大規(guī)模生產(chǎn),從而節(jié)省資金和維護公司聲譽。

嵌入式設備的安全性在于減少漏洞的數(shù)量。漏洞的嚴重程度各不相同,嚴重程度高的漏洞被利用的風險更高。無論部署在何處,所有軟件都存在幾種常見的漏洞類型,例如,遠程代碼執(zhí)行和跨站點腳本漏洞。在嵌入式系統(tǒng)和物聯(lián)網(wǎng)設備中,漏洞大多與內(nèi)存緩沖區(qū)溢出、資源泄漏、訪問控制不當、加密問題和代碼注入有關。這些是靜態(tài)分析掃描在嵌入式系統(tǒng)中發(fā)現(xiàn)的一些最常見的嵌入式安全漏洞。

編碼標準為何對嵌入式系統(tǒng)和工業(yè)4.0安全性至關重要?


如前所述,C和C++主要用于嵌入式系統(tǒng)。多年來,實施工業(yè)4.0和物聯(lián)網(wǎng)的組織已經(jīng)認識到所有代碼中安全的重要性,尤其是對于嵌入式設備中的C 和 C++,因為失敗的代價可能不僅僅是經(jīng)濟上的。為了幫助提高軟件的安全性、可移植性、可靠性和可維護性,編碼標準不斷被創(chuàng)建和改進。靜態(tài)分析除了在源代碼中搜索缺陷和漏洞外,還可以應用編碼標準中的規(guī)則和建議。這對于需要驗證是否符合行業(yè)標準的組織尤其有用。嵌入式系統(tǒng)的常見編碼標準示例包括 MISRA、AUTOSAR 和 CERT。

行業(yè)標準在解決工業(yè)4.0網(wǎng)絡安全方面也發(fā)揮著作用:例如,IEC 62443 解決了自動化和控制系統(tǒng)中技術開發(fā)和運營的網(wǎng)絡安全要求。該標準定義了一個安全的軟件開發(fā)生命周期,包括設計、實施、驗證、確認、缺陷管理和產(chǎn)品報廢。

ISO 27001 等安全標準是一種信息安全標準,旨在確保制造工廠內(nèi)使用的設備安全,為了達到它們的合規(guī)要求,通常需要使用特定的編碼標準。即使在合規(guī)性之外,使用編碼準則進行軟件開發(fā)也被視為一種良好的實踐(如上述IEC 62443所要求)。

在嵌入式系統(tǒng)中進行編碼時,遵循編碼標準,并將靜態(tài)分析作為軟件開發(fā)生命周期的一部分,將使我們的數(shù)字世界更加安全。正如之前所述,“就像空氣和飲用水一樣,數(shù)字化只有在缺失時才會被注意到”,在發(fā)生安全漏洞的情況下也是如此。

- END -

作者簡介:Javier Perez,Perforce開源和安全首席布道師

Javier對技術和開源軟件充滿熱情,是Perforce Software的開源和安全首席布道師。負責開源和應用安全產(chǎn)品組合的技術思想領導和宣傳。

Javier從事應用程序開發(fā)、開源、云計算、應用程序安全、AI、SaaS和移動行業(yè)已有20多年,并有機會在世界各地的行業(yè)活動中發(fā)表演講。Javier擁有計算機系統(tǒng)榮譽學位和工商管理碩士學位。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式軟件單元測試必要與專業(yè)工具重要系統(tǒng)性專業(yè)研究報告

    ?1. 背景:嵌入式系統(tǒng)的特殊與測試困境 嵌入式軟件廣泛應用于汽車電子、醫(yī)療設備、航空航天、工業(yè)控制等?
    發(fā)表于 03-05 10:41

    嵌入式系統(tǒng)安全設計原則

    隨著物聯(lián)網(wǎng)、工業(yè)控制和智能設備的普及,嵌入式系統(tǒng)安全問題越來越突出。一個小小的漏洞,就可能導致設備被入侵、數(shù)據(jù)泄露,甚至對人身
    的頭像 發(fā)表于 01-19 09:06 ?344次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)安全</b>設計原則

    什么是嵌入式應用開發(fā)?

    系統(tǒng)中,用于控制、監(jiān)測或通信等特定用途。與一般計算機系統(tǒng)不同,嵌入式系統(tǒng)通常具有較小的存儲容量、處理能力和功耗,且需要滿足特定的實時、可靠
    發(fā)表于 01-12 16:13

    嵌入式軟件測試找bug的常見方法和秘訣

    對可靠的要求比較高。嵌入式系統(tǒng)安全性的失效可能會導致災難的后果,即使是非安全性系統(tǒng),由于大批
    發(fā)表于 01-12 07:07

    分析嵌入式軟件代碼的漏洞-代碼注入

    惡意的互聯(lián)網(wǎng)環(huán)境中確保他們的嵌入式代碼能夠安全使用的開發(fā)人員,應該將這樣的代碼注入漏洞,開發(fā)周
    發(fā)表于 12-22 12:53

    C語言單元測試嵌入式軟件開發(fā)中的作用及專業(yè)工具的應用

    一、C語言嵌入式開發(fā)中的現(xiàn)狀與重要 C語言嵌入式
    發(fā)表于 12-18 11:46

    CC++之間的聯(lián)系

    控制能力,這一點與C語言相似,使得它們系統(tǒng)編程、嵌入式系統(tǒng)等領域都得到廣泛應用。 3、發(fā)展歷程:
    發(fā)表于 12-11 06:51

    C語言嵌入式開發(fā)中的應用

    語言可以確保實時系統(tǒng)中的任務能夠規(guī)定的時間內(nèi)完成,保證系統(tǒng)的穩(wěn)定性和可靠。 4、嵌入式網(wǎng)絡編程
    發(fā)表于 11-21 08:09

    一文了解Mojo編程語言

    CPU、GPU 和其他加速器的支持,簡化了并行編程模型。 漸進類型系統(tǒng) 結合靜態(tài)類型檢查和類型推導,既保證編譯時安全性,又保留動態(tài)類型的
    發(fā)表于 11-07 05:59

    嵌入式C/C++回歸測試四大最佳實踐(附自動化測試工具TESSY使用教程)

    嵌入式開發(fā)中,一次微小的代碼改動都可能引發(fā)“蝴蝶效應”,如何守護系統(tǒng)的穩(wěn)???推薦專業(yè)的自動化測試工具#TESSY,源自戴姆勒-奔馳,是嵌入式C
    的頭像 發(fā)表于 10-31 14:21 ?420次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>C</b>/<b class='flag-5'>C++</b>回歸測試四大最佳<b class='flag-5'>實踐</b>(附自動化測試工具TESSY使用教程)

    如何采用SAFERTOS和ESM保護嵌入式系統(tǒng)安全

    信任根的重要組成部分是實時操作系統(tǒng)(RTOS),它為應用程序的運行提供了一個安全的平臺。嵌入式系統(tǒng)的具體安全要求取決于其架構以及所面臨的威脅
    的頭像 發(fā)表于 10-24 15:51 ?1488次閱讀

    嵌入式需要掌握哪些核心技能?

    : 1)C語言與底層編程 核心地位:C語言是嵌入式開發(fā)的基石,需精通指針操作、內(nèi)存管理、位運算,直接操控硬件資源。 延伸技能:C++用于復雜
    發(fā)表于 10-21 16:25

    嵌入式軟件測試與專業(yè)測試工具的必要深度解析

    嵌入式系統(tǒng)作為控制、監(jiān)視或輔助裝置運行的專用計算機系統(tǒng),其軟件測試面臨著獨特的挑戰(zhàn)和嚴格的要求。專業(yè)測試工具嵌入式軟件開發(fā)過程中發(fā)揮著不可
    發(fā)表于 09-28 17:42

    入行嵌入式應該怎么準備?

    知識: 一、C/C++編程C/C++嵌入式系統(tǒng)
    發(fā)表于 08-06 10:34

    Perforce QAC產(chǎn)品簡介:面向C/C++靜態(tài)代碼分析工具(已通過SO 26262認證)

    Perforce QAC專為C/C++開發(fā)者打造,支持多種編碼規(guī)范、功能安全標準(ISO 26262)等,廣泛用于汽車、醫(yī)療、嵌入式開發(fā)領域,可幫助快速識別關鍵缺陷、提升
    的頭像 發(fā)表于 07-10 15:57 ?1294次閱讀
    Perforce QAC產(chǎn)品簡介:面向<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>的<b class='flag-5'>靜態(tài)</b><b class='flag-5'>代碼</b><b class='flag-5'>分析</b>工具(已通過SO 26262認證)