国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向安全性分析的嵌入式軟件測試方法淺析

2023-04-29 18:23:59范娜李全洲
信息系統(tǒng)工程 2023年6期
關(guān)鍵詞:安全性分析嵌入式軟件測試方法

范娜?李全洲

摘要:隨著軟件開發(fā)技術(shù)不斷發(fā)展,不同類型的新興軟件持續(xù)增加,特別是嵌入式軟件,在各個行業(yè)中廣泛應(yīng)用,相關(guān)理論研究和實踐探索也大量涌現(xiàn)。嵌入式軟件在應(yīng)用過程中一旦失效,便會影響設(shè)備運行,甚至威脅行業(yè)的財產(chǎn)安全。針對嵌入式軟件的安全測試要求進行簡要分析,討論軟件測試技術(shù)以及面向安全性分析的嵌入式軟件測試方法,以供參考。

關(guān)鍵詞:嵌入式軟件;安全性分析;測試方法

一、前言

目前,嵌入式軟件應(yīng)用相當(dāng)廣泛。在金融系統(tǒng)、信息系統(tǒng)、醫(yī)療器械行業(yè)乃至國防系統(tǒng)中,安全嵌入式軟件均發(fā)揮著重要作用。若嵌入式軟件在運行過程中出現(xiàn)問題,將直接影響整個系統(tǒng)運行的安全性與穩(wěn)定性。因此,要提升嵌入式軟件安全性,避免其影響整個系統(tǒng)運行安全。

二、嵌入式軟件安全性測試要求

在嵌入式軟件的安全性測試過程中,主要檢查嵌入式軟件是否具備安全性、穩(wěn)定性以及保密性。需要全面檢查嵌入式軟件,避免嵌入式軟件處于危險狀態(tài),為后續(xù)運行提供保障。為保證系統(tǒng)的安全運行水平,除了制定科學(xué)合理的設(shè)計方案外,還需要對設(shè)計過程進行嚴格控制,從軟件代碼、編程風(fēng)格以及設(shè)計規(guī)范標準等方面入手,確保系統(tǒng)的質(zhì)量符合標準,提升系統(tǒng)的整體穩(wěn)定性、安全性以及可靠性。在檢查系統(tǒng)安全性和驗證安全性措施過程中,應(yīng)注意嵌入式軟件安全性測試要求。嵌入式軟件安全性測試要求,主要有以下幾項:

(一)健壯性測試要求

健壯性測試,即對嵌入式軟件中各個安全措施全面檢查。健壯性測試要求,主要包括以下幾點:第一,對關(guān)鍵等級嵌入式軟件及嵌入式模塊,需要采取針對性安全測試,保證嵌入式軟件各個零部件具備安全性。第二,在嵌入式代碼檢查過程中,從算法模型、數(shù)據(jù)結(jié)構(gòu)、中斷處理和容錯能力等方面,對代碼進行檢查,提升嵌入式代碼的安全性。第三,在健壯性測試過程中,應(yīng)保證在標準安全測試環(huán)境下,對嵌入式軟件進行安全測試,應(yīng)重點檢測嵌入式軟件外部環(huán)境,提升安全測試結(jié)果的精準性。第四,在進行健壯性測試時,不僅需要測試正常零部件,還需要測試異常硬件。第五,需要對嵌入式軟件邊界點、邊界內(nèi)以及邊界外進行安全性測試。

(二)運行強度測試要求

運行強度測試,主要是在嵌入式軟件運行中對異常軟件進行安全性測試。其中需要注意的是,仍然需要檢查嵌入式軟件運行強度,也就是針對性能、降級能力、系統(tǒng)健壯性能力三個方面進行強度測試,還要進行飽和度測試,確保測試準確。

(三)系統(tǒng)余量測試要求

系統(tǒng)余量測試,主要查看嵌入式軟件中的余量是否達到系統(tǒng)設(shè)計規(guī)范標準要求。另外,由于部門系統(tǒng)設(shè)計沒有明確的規(guī)范標準,需要保留20%的系統(tǒng)余量,再按照系統(tǒng)的測試標準進行全面測試。系統(tǒng)余量測試對象主要包括系統(tǒng)、輸入輸出、儲存、功能等方面。

(四)恢復(fù)性測試要求

恢復(fù)性測試,主要是對嵌入式軟件中已經(jīng)重置功能軟件或者已經(jīng)恢復(fù)的功能軟件進行測試,檢查重置或者恢復(fù)的實際情況,確保嵌入式軟件的重置和恢復(fù)功能保持良好狀態(tài)?;謴?fù)性測試是在系統(tǒng)硬件發(fā)生故障后,檢查系統(tǒng)是否能夠繼續(xù)運行,并且保證系統(tǒng)不會受到損害。該項測試內(nèi)容主要包括錯誤檢查、備用硬件啟動情況、運行和維護狀態(tài)等。當(dāng)系統(tǒng)故障恢復(fù)后,第一時間檢查并記錄系統(tǒng)狀態(tài),觀察系統(tǒng)是否在無錯誤狀態(tài)下執(zhí)行測試作業(yè)[1]。

三、軟件測試技術(shù)分析

(一)數(shù)據(jù)交叉測試技術(shù)

數(shù)據(jù)交叉測試技術(shù),在嵌入式軟件安全測試中不僅具有重要作用,還是測試的規(guī)范標準。在測試過程中,需要先對嵌入式軟件后臺數(shù)據(jù)重點測試,再進行交叉運行測試。在信息技術(shù)飛速發(fā)展的背景下,數(shù)據(jù)交叉測試技術(shù)逐漸完善。目前,數(shù)據(jù)交叉測試技術(shù)已經(jīng)相當(dāng)成熟,并且廣泛應(yīng)用在各個行業(yè)安全性測試中。數(shù)據(jù)交叉測試首先是對主機的程序編寫進行檢測,及時傳達測試指令。嵌入式軟件利用測試代理,對軟件后臺數(shù)據(jù)進行實時監(jiān)控,監(jiān)測嵌入式軟件是否具備穩(wěn)定性,一旦監(jiān)測到后臺數(shù)據(jù)出現(xiàn)漏洞或者其他安全問題,測試代理便會立即啟動。通過有針對性地生成問題解決腳本,為技術(shù)人員制定修改方案,發(fā)揮在檢測環(huán)節(jié)的重要參考作用。

(二)嵌入式軟件結(jié)構(gòu)組織化測試

嵌入式軟件結(jié)構(gòu)組織化測試,是嵌入式安全性測試技術(shù)中的關(guān)鍵部分。測試過程主要包括元素和特定兩個結(jié)構(gòu)組織測試部分。元素結(jié)構(gòu)測試,需要針對元素結(jié)構(gòu)運行和研發(fā)周期、硬件設(shè)備、軟件等結(jié)構(gòu)測試技術(shù)元件,形成標準的安全性測試環(huán)境,并根據(jù)嵌入式軟件結(jié)構(gòu)組織的運行要求、種類和運行環(huán)境等因素,科學(xué)合理選擇安全性測試形式。嵌入式軟件結(jié)構(gòu)組織,可以最大化發(fā)揮安全性測試的作用。也就是說,在選擇合理的測試軟件基礎(chǔ)上,結(jié)合嵌入式軟件結(jié)構(gòu)組織,可以為嵌入式軟件結(jié)構(gòu)組織化測試結(jié)果的精準性提供一定保障[2]。

(三)安全測試的組織和環(huán)境

目前,嵌入式軟件類型較多,但是由于軟件質(zhì)量和測試環(huán)境存在一定差異,要想選擇科學(xué)合理的軟件,必須將重點放在嵌入式安全測試的組織和環(huán)境兩個方面,進而提升嵌入式軟件的可靠性。技術(shù)人員應(yīng)定期對嵌入式軟件進行安全測試,確保安全性檢測環(huán)境符合規(guī)定的標準,再結(jié)合嵌入式軟件的組織結(jié)構(gòu)以及運行環(huán)境等因素,全面提升嵌入式軟件運行的可靠性與合理性。正常情況下,嵌入式軟件在安全測試主要包括單元測試和集成測試兩個環(huán)節(jié)。其中,單元測試需要通過測試指令軟件對嵌入式軟件的單元輸入數(shù)據(jù),才可以順利完成安全性檢測。并且,這項測試還可以對嵌入式軟件進行整體檢測。集成測試則是通過固定的軟件系統(tǒng),檢測嵌入式軟件運行速度。嵌入式軟件存在缺陷的情況下,無法第一時間對故障反饋,通過集成測試便可以解決這一缺陷。

四、面向安全性分析的嵌入式軟件測試方法

(一)嵌入式軟件交叉測試平臺

目前,嵌入式軟件安全測試技術(shù)較多,安全測試技術(shù)已經(jīng)應(yīng)用在各個行業(yè)中。嵌入式安全測試過程中應(yīng)用最多的安全測試方法便是交叉測試技術(shù),并且交叉測試技術(shù)已經(jīng)逐漸成熟。嵌入式交叉測試步驟,主要包括以下幾點:第一,在宿主機環(huán)境下,需要編寫宿主機程序。生成安全測試腳本后,翻譯成安全測試指令,傳送到安全測試的主機上,采用測試代理的方式將安全測試指令在測試的主機中快速執(zhí)行。第二,由于安全測試主機具有資源匱乏的特點,安全測試工具主要在測試主機中選擇。在安全測試執(zhí)行過程中,需要對測試數(shù)據(jù)深入研究與分析,將監(jiān)測的數(shù)據(jù)傳送到宿主機,由技術(shù)人員對測試結(jié)果的精準性進行分析,保證測試數(shù)據(jù)結(jié)果的精準性。第三,宿主機接收到安全測試指令后,測試代理遵照安全測試指令,對嵌入式軟件進行測試,安全測試完成后,便會自動生成測試數(shù)據(jù),先傳送到測試代理,再轉(zhuǎn)送宿主機。圖1為嵌入式軟件交叉測試結(jié)構(gòu)。

(二)軟件測試策略

軟件測試過程中,利用結(jié)構(gòu)化的組織方法,需要按照規(guī)定的軟件測試規(guī)范標準要求。嵌入式軟件安全測試方式,主要分為兩種。一方面,無論是哪種嵌入式軟件,都會采用元素基本測試法。元素測試方法主要包括嵌入式軟件生命周期、硬件設(shè)備以及基本技術(shù)等。另一方面,嵌入式軟件指定的測試方法,主要包括指定嵌入式系統(tǒng)以及指定測試方法。選取安全測試策略時,通過將元素測試方法和指定測試方法充分結(jié)合,能夠?qū)崿F(xiàn)嵌入式測試方法和方案的完美契合。

(三)安全測試的組織方式和環(huán)境搭建

安全測試組織,是嵌入式軟件安全測試中十分常見的使用方法。目前,嵌入式結(jié)構(gòu)組織測試主要通過元素結(jié)構(gòu)和指定結(jié)構(gòu)組織進行測試。元素結(jié)構(gòu)組織,主要是根據(jù)嵌入式軟件的運行周期、硬件設(shè)備以及基本技術(shù)和元件等,搭建嵌入式軟件測試環(huán)境。指定結(jié)構(gòu)組織,主要按照嵌入式軟件類型、運行系統(tǒng)和運行環(huán)境等,選擇指定的測試方法,通過對嵌入式軟件結(jié)構(gòu)組織進行測試,將嵌入式軟件的價值充分發(fā)揮,促使嵌入式測試結(jié)果具備正確性。

從安全分析角度來看,嵌入式軟件測試過程主要包括以下幾點:第一,為保證嵌入式軟件測試結(jié)構(gòu)的精準性,技術(shù)人員應(yīng)率先對單元軟件進行測試,輸入單元測試軟件的基本單位,確保基本單位輸入正確,再通過嵌入式軟件內(nèi)部邏輯預(yù)防策略,避免嵌入式軟件安全受到威脅。第二,集成測試階段,重點查看嵌入式軟件安全性,檢測平臺環(huán)境是否存在風(fēng)險。在集成測試過程中,技術(shù)人員需要注意真正模擬目標,避免嵌入式軟件出現(xiàn)安全漏洞,將一切可疑的安全漏洞消除,通過滲透活動對軟件整體安全性反復(fù)驗證。第三,嵌入式軟件安全測試過程中,由于安全測試技術(shù)及安全測試方式相對復(fù)雜,技術(shù)人員可通過仿真和模擬技術(shù),對目標機運行環(huán)境真實模擬。為保證在Android系統(tǒng)下順利完成安全測試,技術(shù)人員需要在PC機安裝模擬器,使模擬器與Java程序相互契合,先安裝Java環(huán)境,再對AndroidSDK解壓包和環(huán)境變量合理分配。

(四)基于分類的應(yīng)用軟件安全測試

1.軟件的功能性安全測試

嵌入式軟件功能性安全測試過程中,需要對嵌入式安全需求進行全方面分析。在對嵌入式軟件功能性反復(fù)驗證后,再針對軟件功能進行性能設(shè)計。為保證嵌入式軟件的安全性,應(yīng)根據(jù)安全需求,對應(yīng)增加系統(tǒng)安全防護方法。例如,分別在權(quán)限管理、數(shù)據(jù)加密以及數(shù)據(jù)備份與恢復(fù)等方面,對應(yīng)設(shè)置系統(tǒng)安全防護方法。另外,正式對嵌入式軟件進行測試之前,應(yīng)對嵌入式軟件的方法多次驗證,找到最有效的安全測試方法。其中,黑盒測試方法是嵌入式安全測試中常見的驗證方法[3]。

2.嵌入式軟件的漏洞性安全測試

嵌入式安全測試過程中,需要重點檢測安全漏洞。技術(shù)人員應(yīng)站在攻擊者的角度,對嵌入式軟件漏洞進行檢查,盡量找到最多的安全漏洞,其具體安全測試流程如圖2所示。圖2為漏洞性安全測試基本流程。

由于嵌入式安全漏洞產(chǎn)生的原因不盡相同,解決安全漏洞的方式也是千差萬別??赏ㄟ^DREAR模型對嵌入式安全漏洞風(fēng)險進行全面檢測,并對安全漏洞設(shè)置風(fēng)險等級。安全漏洞的可利用性,是安全漏洞風(fēng)險檢測的關(guān)鍵因素。要先判定安全漏洞可利用性,技術(shù)人員明確安全漏洞等級后,再按照漏洞的風(fēng)險等級設(shè)計入侵矩陣以及對應(yīng)的測試用例,消除嵌入式軟件中安全漏洞,避免安全漏洞被放大后對嵌入式軟件造成更大危害[4]。

(五)安全測試的執(zhí)行與分析

1.安全測試前的安全性分析

安全測試前,對程序語言進行安全性測試,并且對Android平臺安全機制進行測試,對嵌入式應(yīng)用軟件IReader深入研究與分析。在該嵌入軟件結(jié)構(gòu)中,技術(shù)人員通過C++編寫代碼。C++類型的代碼可以直接翻譯成機器碼,再由處理器來執(zhí)行安全測試。另外,安全測試處于托管的代碼狀態(tài)下,技術(shù)人員應(yīng)將注意力全部集中在本機代碼中,因本機代碼處于虛擬機范圍外,本機代碼中的托管風(fēng)險將一直處于最高點。在嵌入式軟件建模和風(fēng)險分析過程中,應(yīng)將IReader分為多個文件格式,并且將AndroidShell導(dǎo)入文件格式中,通過FileFuzz對嵌入式軟件進行安全測試[5]。

2.安全測試的執(zhí)行與分析

嵌入式軟件的安全漏洞測試過程中,需要對嵌入式軟件系統(tǒng)中的不足和缺陷較多的區(qū)域進行重點測試,因為攻擊者入侵的首要行為,便是在嵌入式軟件系統(tǒng)中制造漏洞。技術(shù)人員需要根據(jù)應(yīng)用軟件以及基本的操作規(guī)范,對嵌入式軟件系統(tǒng)中的C++代碼漏洞進行測試,還需要對整體的Java代碼進行漏洞測試。漏洞檢測過程中,采用動態(tài)分析方法。此方法是目前嵌入式安全測試中使用率最高的測試方法,其漏洞檢測效果十分理想。但是該測試方法可能會產(chǎn)生漏報或者誤報的問題,尤其是在已經(jīng)擁有程序代碼的測試狀態(tài)下,仍會發(fā)生誤報或者漏報的情況。技術(shù)人員為改善這一缺陷,將這部分安全漏洞檢測,通過靜態(tài)分析工具以及使用cppcheck的方式,對嵌入式軟件中的C++代碼進行靜態(tài)檢測。技術(shù)人員尚未檢測出安全漏洞,僅發(fā)現(xiàn)部分不規(guī)范編程錯誤后,將不規(guī)范的編程方式導(dǎo)入FindBugs靜態(tài)分析工具中,由FindBugs按照規(guī)定的安全測試規(guī)范標準深度挖掘安全漏洞的具體位置。對安全漏洞可能產(chǎn)生的攻擊行為全面分析,有助于制定對應(yīng)的漏洞修補方案。針對嵌入式軟件的攻擊程度,需要對Maliciouscodevul-nerability深入研究與分析,匯總成一個完整數(shù)據(jù)表,如表1所示。技術(shù)人員將不規(guī)范的編程導(dǎo)入FindBugs靜態(tài)分析工具,繼而發(fā)現(xiàn)嵌入式軟件中的安全漏洞,主要包括Field沒有被定義為final類型、Field作為一個不穩(wěn)定的數(shù)組以及Field應(yīng)該受到保護。技術(shù)人員為避免再次出現(xiàn)此類安全漏洞,將所有安全漏洞掃描后,自動生成XML文件。在后續(xù)安全測試中,技術(shù)人員僅需通過XML文件中便可查詢嵌入式安全漏洞,并精準定位到安全漏洞位置,根據(jù)安全漏洞的嚴重程序建立對應(yīng)的入侵矩陣,有助于嵌入式軟件中的安全漏洞驗證。表1為惡意代碼漏洞。

五、結(jié)語

綜上所述,隨著軟件開發(fā)技術(shù)不斷發(fā)展,嵌入式軟件已應(yīng)用在各個行業(yè),并且已經(jīng)成為計算機領(lǐng)域發(fā)展的熱點。為提升嵌入式軟件應(yīng)用的穩(wěn)定性,相關(guān)部門應(yīng)定期對嵌入式軟件進行安全測試,制定完善的安全測試方案,做好相關(guān)編程工作,提升嵌入式軟件安全性,促使嵌入式軟件在各個行業(yè)領(lǐng)域中發(fā)揮重要價值。

參考文獻

[1]孫潔.基于大數(shù)據(jù)分析的嵌入式軟件測試系統(tǒng)設(shè)計[J].自動化與儀器儀表,2023,280(2):209-212+217.

[2]鄒小花,王淵.基于DDS的機載嵌入式軟件仿真自測試方法[J].計算機仿真,2022,39(10):50-53+172.

[3]劉棟,方麗萍,李國要.基于覆蓋率的嵌入式軟件測試方法研究[J].電腦與電信,2022,309(10):94-97.

[4]黃錚,周潔,朱學(xué)海.一種基于Azure DevOps的面向嵌入式軟件的持續(xù)集成及自動測試環(huán)境[J].工業(yè)控制計算機,2022,35(9):17-19+23.

[5]李紅衛(wèi).基于改進遺傳算法的嵌入式軟件時序測試數(shù)據(jù)自動生成方法[J].自動化與儀器儀表,2022,275(9):75-78+83.

猜你喜歡
安全性分析嵌入式軟件測試方法
基于泊松對相關(guān)的偽隨機數(shù)發(fā)生器的統(tǒng)計測試方法
基于云計算的軟件自動化測試方法
電子制作(2019年16期)2019-09-27 09:34:56
DLD-100C型雷達測試方法和應(yīng)用
電子制作(2019年15期)2019-08-27 01:12:02
實時嵌入式軟件的測試技術(shù)
電子測試(2018年10期)2018-06-26 05:54:08
全景相機遙控器嵌入式軟件V1.0 相關(guān)操作分析
電子制作(2017年17期)2017-12-18 06:40:56
高齡非瓣膜病性房顫患者長期運用華法林抗凝治療的療效與安全性分析
系統(tǒng)安全性分析技術(shù)在空空導(dǎo)彈中的應(yīng)用
航空兵器(2016年4期)2016-11-28 21:52:12
云環(huán)境中數(shù)據(jù)安全及訪問控制模型研究
科技傳播(2016年7期)2016-04-28 23:15:00
對改良的三種最小抑菌濃度測試方法的探討
民用飛機安全性分析研究
科技資訊(2015年19期)2015-10-09 19:35:44
靖州| 收藏| 冷水江市| 高阳县| 论坛| 南丹县| 福鼎市| 宣武区| 恩平市| 连南| 鹤岗市| 海阳市| 吴忠市| 开原市| 定襄县| 建平县| 太和县| 盐边县| 临夏市| 罗平县| 吉隆县| 越西县| 耒阳市| 徐闻县| 渝中区| 湖南省| 伊春市| 甘肃省| 成武县| 和平区| 遂溪县| 外汇| 含山县| 景谷| 辉县市| 青神县| 抚宁县| 渑池县| 临清市| 梅州市| 枣阳市|