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

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

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

安全關(guān)鍵時(shí)代的遺留代碼

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:BILL ST. CLAIR ? 2022-11-07 14:28 ? 次閱讀

當(dāng)考慮安全和安全關(guān)鍵風(fēng)險(xiǎn)時(shí),遺留代碼重用的成本和便利性優(yōu)勢可能會(huì)降低或復(fù)雜化。如果遺留代碼被證明在功能上正確且在操作上可行,則其接受是基于對(duì)預(yù)期會(huì)發(fā)生什么的假設(shè)。但是,通常會(huì)導(dǎo)致故障的是意外情況,而結(jié)構(gòu)測試提供了一種緩解意外情況的方法。

今天,對(duì)遺留軟件的“構(gòu)建”接受正在受到更多的審查。這是由于在軍事和商業(yè)系統(tǒng)中,越來越強(qiáng)調(diào)安保和安全評(píng)價(jià)標(biāo)準(zhǔn)。關(guān)于認(rèn)證的軟件方面,必須提供可重復(fù)驗(yàn)證過程的證據(jù)和支持該過程的分析。結(jié)構(gòu)測試是驗(yàn)證此證據(jù)的一種機(jī)制。

雖然曾經(jīng)被視為不必要的成本負(fù)擔(dān),但嚴(yán)格的、基于標(biāo)準(zhǔn)的開發(fā)和驗(yàn)證過程是全球嵌入式系統(tǒng)行業(yè)安全重要性的新興全球視角的結(jié)果。這種觀點(diǎn)的定義是與商業(yè)航空旅行、醫(yī)療設(shè)備產(chǎn)品部署、全球汽車產(chǎn)品開發(fā)標(biāo)準(zhǔn)化以及國防和安全等各種活動(dòng)相關(guān)的風(fēng)險(xiǎn)。在這些應(yīng)用程序中,與意外軟件和系統(tǒng)行為相關(guān)的責(zé)任、成本和任務(wù)影響被認(rèn)為是不可接受的。

作為美國聯(lián)邦航空局國際飛行軟件工作組的成員,該工作組正在制定下一版DO-178軟件標(biāo)準(zhǔn),我目睹了人們?cè)絹碓揭庾R(shí)到在飛行軟件系統(tǒng)中使用遺留軟件。工作組努力確保遺留代碼得到適當(dāng)?shù)墓芾砗万?yàn)證,并且它實(shí)際上不會(huì)成為“死”或無法訪問的代碼,在這種代碼中,它可能無意中被調(diào)用用于運(yùn)行時(shí)執(zhí)行,而無需事先進(jìn)行適當(dāng)?shù)臏y試。從歷史上看,死代碼被視為意外軟件行為的原因,并對(duì)飛行安全構(gòu)成重大風(fēng)險(xiǎn)。

隨著嵌入式系統(tǒng)中面向?qū)ο髴?yīng)用程序的出現(xiàn),使用C++、JavaAda 2005等語言,工作組還意識(shí)到重用遺留代碼的可能性呈指數(shù)級(jí)增長。舊組件可以與新組件共享成員函數(shù),并且在運(yùn)行時(shí)執(zhí)行之前,這些共享函數(shù)的精確行為實(shí)際上不可見。在面向?qū)ο蟮南到y(tǒng)中,意外發(fā)生的可能性更高。

美國軍方也認(rèn)識(shí)到與意外軟件行為相關(guān)的風(fēng)險(xiǎn),特別是在安全漏洞的背景下。空軍研究實(shí)驗(yàn)室與國家安全局、國防部主要承包商、學(xué)術(shù)界和軟件供應(yīng)商合作,正在管理一個(gè)多獨(dú)立級(jí)別的安全/安全(MILS)計(jì)劃,將DO-178B與安全標(biāo)準(zhǔn)相結(jié)合。這包括共同標(biāo)準(zhǔn)和中央情報(bào)局局長指令6/3,保護(hù)信息系統(tǒng)中的敏感隔離信息。雖然MILS計(jì)劃不直接解決遺留代碼,但其許多目標(biāo)正在應(yīng)用于包含遺留軟件的新項(xiàng)目和部署。MILS 程序的軟件開發(fā)和驗(yàn)證指南主要來自 DO-178B,現(xiàn)在給軟件供應(yīng)商和系統(tǒng)集成商帶來了實(shí)施可重復(fù)驗(yàn)證流程和降低與意外軟件行為相關(guān)的風(fēng)險(xiǎn)的巨大挑戰(zhàn)。

鑒于與安全和安全關(guān)鍵型軟件相關(guān)的挑戰(zhàn),我們需要確定有關(guān)遺留代碼的最佳實(shí)踐,并提出一種維護(hù)和更新遺留代碼的方法。這些挑戰(zhàn)可以通過結(jié)構(gòu)測試來解決。結(jié)構(gòu)測試(有時(shí)稱為“軟件測試軟件”)提供了一個(gè)運(yùn)行時(shí)環(huán)境,在該環(huán)境中,自動(dòng)生成測試用例,以基于系統(tǒng)范圍的路徑級(jí)代碼分析來執(zhí)行軟件行為。盡管過去結(jié)構(gòu)測試因沒有明確驗(yàn)證功能正確性而受到批評(píng),但這種觀點(diǎn)沒有認(rèn)識(shí)到結(jié)構(gòu)測試的目標(biāo)是練習(xí)整個(gè)軟件結(jié)構(gòu),捕獲異常并測量結(jié)果代碼覆蓋率 - 而不是顯式測試軟件功能。

除非正確分析遺留軟件的“竣工”架構(gòu),否則無法預(yù)測更改的影響,也無法有效地應(yīng)用更改。幸運(yùn)的是,結(jié)構(gòu)測試固有的靜態(tài)分析也可以生成架構(gòu)的圖形表示,包括調(diào)用樹圖、控制流圖、數(shù)據(jù)耦合表和設(shè)置/使用表。這些可視化對(duì)于處理來自多個(gè)來源的代碼(如建模工具、手動(dòng)代碼和軟件庫)的工程師特別有用。結(jié)構(gòu)測試靜態(tài)分析維度的另一個(gè)副產(chǎn)品是將編碼規(guī)則自動(dòng)應(yīng)用于源代碼,確保舊代碼和新代碼之間的實(shí)現(xiàn)一致性。

測試技術(shù)的進(jìn)步催生了新一代工具,而不僅僅是另一種工具。這些進(jìn)步恰逢其時(shí),以滿足國際軟件標(biāo)準(zhǔn)化、嵌入式軟件市場的全球化以及安保和安全關(guān)鍵驗(yàn)證標(biāo)準(zhǔn)的日益重視的需求?,F(xiàn)在,傳統(tǒng)軟件用戶可以排除意外的軟件行為,并幫助確保我們的安全。

審核編輯:郭婷

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

    關(guān)注

    19

    文章

    2973

    瀏覽量

    104905
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2113

    瀏覽量

    73742
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4808

    瀏覽量

    68814
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何提高嵌入式代碼質(zhì)量?

    有著明顯的區(qū)別,主要體現(xiàn)在以下幾個(gè)方面: 1. 資源受限:嵌入式系統(tǒng)通常具有有限的內(nèi)存和處理能力,因此代碼效率和內(nèi)存占用是關(guān)鍵考量因素。 2. 實(shí)時(shí)性要求:某些嵌入式系統(tǒng)需要實(shí)時(shí)響應(yīng),即使在資源緊張
    發(fā)表于 01-15 10:48

    芯盾時(shí)代入選《API安全技術(shù)應(yīng)用指南(2024版)》API安全十大代表性廠商

    近日,國內(nèi)知名網(wǎng)絡(luò)安全媒體安全牛正式發(fā)布《API安全技術(shù)應(yīng)用指南(2024版)》報(bào)告,幫助用戶更好地開展API安全規(guī)劃和安全建設(shè),并提供有效
    的頭像 發(fā)表于 12-18 11:04 ?388次閱讀
    芯盾<b class='flag-5'>時(shí)代</b>入選《API<b class='flag-5'>安全</b>技術(shù)應(yīng)用指南(2024版)》API<b class='flag-5'>安全</b>十大代表性廠商

    芯盾時(shí)代連續(xù)入選“中國網(wǎng)絡(luò)安全企業(yè)100強(qiáng)”

    日前,國內(nèi)知名網(wǎng)絡(luò)安全媒體安全牛正式發(fā)布“中國網(wǎng)絡(luò)安全企業(yè)100強(qiáng)(第十二版)”。芯盾時(shí)代作為領(lǐng)先的零信任業(yè)務(wù)安全產(chǎn)品方案提供商,憑借在企業(yè)
    發(fā)表于 12-02 11:58 ?121次閱讀

    如何安全有效的刪代碼?

    和建議,幫助你更安全有效地刪除代碼: 確定范圍 優(yōu)化總是被鼓勵(lì)的,但方式和時(shí)間是同時(shí)需要被考慮進(jìn)去的因素 方式:這個(gè)方案是否好,有無漏洞?投入產(chǎn)出效益比如何? 時(shí)間:是否要在這個(gè)版本,哪個(gè)版本能使所有開發(fā)投入時(shí)間最少
    的頭像 發(fā)表于 11-20 10:39 ?260次閱讀

    電梯報(bào)警顯示終端:智能電梯時(shí)代如何重塑安全管理?

    在現(xiàn)代都市的摩天大樓中,電梯作為垂直交通的重要工具,其安全性直接關(guān)系到每一位乘客的生命財(cái)產(chǎn)安全。隨著科技的進(jìn)步,電梯報(bào)警顯示終端作為電梯安全管理系統(tǒng)的重要組成部分,正逐步成為提升電梯運(yùn)行安全
    的頭像 發(fā)表于 09-10 11:08 ?406次閱讀

    SDV三大關(guān)鍵應(yīng)用的安全考慮因素

    鑒于未來人工智能 (AI) 賦能的軟件定義汽車 (SDV) 將包含高達(dá)十億行代碼,加上顯著提高的網(wǎng)聯(lián)特性,汽車受攻擊面也將持續(xù)擴(kuò)大并不斷演進(jìn)。在之前的博文里我們?cè)懻撨^,更大的受攻擊面將對(duì)汽車網(wǎng)絡(luò)安全
    的頭像 發(fā)表于 09-05 15:45 ?2108次閱讀

    RFID無線測溫系統(tǒng),守護(hù)電廠安全運(yùn)行的關(guān)鍵力量

    RFID無線測溫系統(tǒng)在電廠設(shè)備溫度監(jiān)測中起著關(guān)鍵作用。它可以實(shí)時(shí)監(jiān)測設(shè)備溫度,及時(shí)發(fā)現(xiàn)設(shè)備故障,保障電廠安全穩(wěn)定運(yùn)行。
    的頭像 發(fā)表于 08-15 15:03 ?339次閱讀
    RFID無線測溫系統(tǒng),守護(hù)電廠<b class='flag-5'>安全</b>運(yùn)行的<b class='flag-5'>關(guān)鍵</b>力量

    安全服務(wù)加密存儲(chǔ)代碼怎么查

    安全服務(wù)加密存儲(chǔ)代碼的查詢與實(shí)現(xiàn)是一個(gè)復(fù)雜的過程,涉及到多個(gè)方面,包括數(shù)據(jù)加密、密鑰管理、訪問控制等。 1. 引言 隨著云計(jì)算的快速發(fā)展,越來越多的企業(yè)和個(gè)人將數(shù)據(jù)存儲(chǔ)在云端。然而,數(shù)據(jù)安全問題也
    的頭像 發(fā)表于 07-02 09:28 ?392次閱讀

    安全主要考慮的關(guān)鍵技術(shù)有哪些

    安全是指在云計(jì)算環(huán)境中保護(hù)數(shù)據(jù)和應(yīng)用免受攻擊和威脅的一系列技術(shù)和策略。隨著云計(jì)算的普及,云安全已經(jīng)成為企業(yè)和個(gè)人用戶關(guān)注的焦點(diǎn)。本文將詳細(xì)介紹云安全關(guān)鍵技術(shù),包括數(shù)據(jù)加密、身份認(rèn)證
    的頭像 發(fā)表于 07-02 09:27 ?727次閱讀

    安全關(guān)鍵技術(shù)有哪些

    安全是確保云計(jì)算環(huán)境中數(shù)據(jù)和應(yīng)用程序安全的一種技術(shù)。隨著云計(jì)算的普及,云安全已成為企業(yè)和個(gè)人關(guān)注的焦點(diǎn)。本文將詳細(xì)介紹云安全關(guān)鍵技術(shù),包
    的頭像 發(fā)表于 07-02 09:20 ?729次閱讀

    該如何提高代碼容錯(cuò)率、降低代碼耦合度?

    提高RT-Thread代碼的容錯(cuò)率和降低耦合度是確保代碼質(zhì)量和可維護(hù)性的關(guān)鍵,下面列舉了幾種在編寫代碼時(shí),提高代碼容錯(cuò)率和降低耦合度的思路。
    的頭像 發(fā)表于 06-26 08:10 ?707次閱讀
    該如何提高<b class='flag-5'>代碼</b>容錯(cuò)率、降低<b class='flag-5'>代碼</b>耦合度?

    工業(yè)安全與通信并進(jìn):大核桃防爆手機(jī)助力工業(yè)4.0時(shí)代安全發(fā)展!

    在數(shù)字化浪潮席卷全球的今天,工業(yè)4.0時(shí)代正以前所未有的速度推動(dòng)著各行業(yè)的深刻變革。在這個(gè)充滿創(chuàng)新與挑戰(zhàn)的時(shí)代,工業(yè)安全與通信的并進(jìn)顯得尤為關(guān)鍵。大核桃防爆手機(jī),作為工業(yè)
    的頭像 發(fā)表于 06-21 16:18 ?321次閱讀
    工業(yè)<b class='flag-5'>安全</b>與通信并進(jìn):大核桃防爆手機(jī)助力工業(yè)4.0<b class='flag-5'>時(shí)代</b><b class='flag-5'>安全</b>發(fā)展!

    半導(dǎo)體發(fā)展的四個(gè)時(shí)代

    代工廠來開發(fā)和交付。臺(tái)積電是這一階段的關(guān)鍵先驅(qū)。 半導(dǎo)體的第四個(gè)時(shí)代——開放式創(chuàng)新平臺(tái) 仔細(xì)觀察,我們即將回到原點(diǎn)。隨著半導(dǎo)體行業(yè)的不斷成熟,工藝復(fù)雜性和設(shè)計(jì)復(fù)雜性開始呈爆炸式增長。工藝技術(shù)、EDA
    發(fā)表于 03-27 16:17

    半導(dǎo)體發(fā)展的四個(gè)時(shí)代

    交給代工廠來開發(fā)和交付。臺(tái)積電是這一階段的關(guān)鍵先驅(qū)。 半導(dǎo)體的第四個(gè)時(shí)代——開放式創(chuàng)新平臺(tái) 仔細(xì)觀察,我們即將回到原點(diǎn)。隨著半導(dǎo)體行業(yè)的不斷成熟,工藝復(fù)雜性和設(shè)計(jì)復(fù)雜性開始呈爆炸式增長。工藝技術(shù)
    發(fā)表于 03-13 16:52

    芯盾時(shí)代中標(biāo)秦農(nóng)銀行 構(gòu)建安全便捷的業(yè)務(wù)體系

    芯盾時(shí)代中標(biāo)陜西秦農(nóng)農(nóng)村商業(yè)銀行股份有限公司(以下簡稱“秦農(nóng)銀行”)!芯盾時(shí)代運(yùn)用統(tǒng)一終端安全、零信任網(wǎng)絡(luò)訪問和智能決策大腦等技術(shù),為秦農(nóng)銀行建設(shè)統(tǒng)一身份認(rèn)證平臺(tái),面向銀行各應(yīng)用系統(tǒng)提供統(tǒng)一的、
    的頭像 發(fā)表于 03-12 11:05 ?653次閱讀
    芯盾<b class='flag-5'>時(shí)代</b>中標(biāo)秦農(nóng)銀行 構(gòu)建<b class='flag-5'>安全</b>便捷的業(yè)務(wù)體系