• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      軍事裝備軟件的安全性測(cè)試研究

      2018-02-25 02:39:06顧濱兵李海浩王勇利
      電子技術(shù)與軟件工程 2018年7期

      顧濱兵 李海浩 王勇利

      摘要 裝備軟件的安全性是裝備安全的重要內(nèi)容。軍事裝備軟件運(yùn)行在特殊的使用環(huán)境下,從其遇到的安全性問(wèn)題入手,闡明了軍事裝備的軟件安全性和安全性測(cè)試,并分析軍事裝備軟件的相應(yīng)安全需求。并著重在軟件測(cè)試階段,針對(duì)性提出測(cè)試需求分析、探索建立測(cè)試思路和研究具體的測(cè)試方法。

      【關(guān)鍵詞】軟件安全性 安全性測(cè)試 需求分析軟件等級(jí)

      隨著信息技術(shù)的不斷發(fā)展,軟件安全性的問(wèn)題也日益突出。裝備軟件的安全性是裝備安全性的重要內(nèi)容,安全性也是裝備軟件質(zhì)量的重要特性。由于應(yīng)用環(huán)境的特殊性,軍事裝備軟件經(jīng)常處于應(yīng)急狀態(tài),對(duì)軟件出現(xiàn)不可避免的隨意性、混亂性操作,這些特殊的運(yùn)行特點(diǎn),決定了裝備軟件中各種信息關(guān)系更為復(fù)雜,在安全性上要求更高、更為脆弱,如果程序處理不當(dāng),將極有可能導(dǎo)致安全問(wèn)題的發(fā)生,因此裝備軟件的安全性測(cè)試顯得尤為重要。

      因此必須研究軟件測(cè)試針對(duì)性的手段方法,解決目前軟件測(cè)試中安全性測(cè)試及評(píng)判理論缺乏等問(wèn)題,形成系統(tǒng)成熟的對(duì)裝備軟件安全性的測(cè)試及評(píng)估方法,促進(jìn)裝備軟件的安全性能力設(shè)計(jì)與實(shí)現(xiàn)水平的提高,來(lái)保證其能夠被“放心”地使用。

      1 裝備軟件的安全性

      (1) MicroSoft對(duì)軟件安全性的定義是:對(duì)應(yīng)用程序及其數(shù)據(jù)提供安全的能力稱(chēng)為安全性。

      (2) GJB/Z 102A-2012中定義的軟件安全性采用了Nancy教授于1986年提出的:軟件運(yùn)行不引起系統(tǒng)事故的能力。GJB5236-2004《軍用軟件質(zhì)量度量》對(duì)其概念進(jìn)行了細(xì)化:安全性是指軟件產(chǎn)品在指定使用周境下,達(dá)到對(duì)人類(lèi)、業(yè)務(wù)、軟件、財(cái)產(chǎn)或環(huán)境造成損害的可接受的風(fēng)險(xiǎn)級(jí)別的能力。

      (3)也有人從軟件實(shí)體可信屬性的角度將安全性定義為:指軟件系統(tǒng)對(duì)數(shù)據(jù)和信息提供保密性、完整性、可用性和真實(shí)性保障的能力,具體包括機(jī)密性,即軟件系統(tǒng)中的信息不被非法用戶(hù)所獲取;完整性,即軟件系統(tǒng)中的信息不被非法篡改。

      軟件代碼本身不具備直接造成災(zāi)難性事故或者重大損失的能力,但可通過(guò)系統(tǒng)的傳導(dǎo)產(chǎn)生較為嚴(yán)重的后果。定義1和定義3更偏重于軟件本身的能力和后果,而定義2雖然簡(jiǎn)略,但更全面地表達(dá)出軟件的安全性所包含兩層含義:

      (1)軟件自身運(yùn)行避免出現(xiàn)失效,不引起系統(tǒng)事故的能力;

      (2)軟件為了避免由于缺陷所導(dǎo)致不可接受風(fēng)險(xiǎn)的能力。

      以直升機(jī)快速回收軟件舉2個(gè)例子:

      (1)為了具有對(duì)重要數(shù)據(jù)(如回收參數(shù))進(jìn)行保護(hù)和備份的能力,避免非法訪問(wèn)所做的密碼、權(quán)限等的設(shè)置,都是保證安全性的措施,但是對(duì)數(shù)據(jù)非法訪問(wèn)不一定會(huì)造成人員傷害、直升機(jī)損壞,即使有這樣的風(fēng)險(xiǎn),上面的安全性措施也不對(duì)這樣的風(fēng)險(xiǎn)進(jìn)行處理;

      (2)軟件運(yùn)行不當(dāng),可能導(dǎo)致直升機(jī)駕駛員、相關(guān)艦面人員傷亡,直升機(jī)、相關(guān)保障設(shè)施損壞,為了避免這樣的風(fēng)險(xiǎn)所作的防護(hù)、保護(hù)、應(yīng)急處理等是保證安全性的另一類(lèi)措施。這樣的情況有可能是數(shù)據(jù)被非法訪問(wèn)所導(dǎo)致的,也有可能是正常操作導(dǎo)致的。所以這兩類(lèi)安全性的措施和具有的能力是不同的。

      從以上的例子可以看出,相比于軟件應(yīng)該做什么,軟件安全性更加關(guān)注軟件不應(yīng)該做什么。程序開(kāi)發(fā)者為了保證軟件的安全性,必須在正常功能外,加入額外的代碼來(lái)實(shí)現(xiàn)確保安全性的相關(guān)措施。

      2 裝備軟件的安全性測(cè)試

      實(shí)際上,在當(dāng)前軟件工程思想中,軟件分析、設(shè)計(jì)和實(shí)現(xiàn)的過(guò)程,同時(shí)伴隨著軟件測(cè)試。MicroSoft對(duì)軟件安全性測(cè)試的定義是:有關(guān)驗(yàn)證應(yīng)用程序的安全服務(wù)和識(shí)別潛在安全性缺陷的過(guò)程。裝備軟件相關(guān)測(cè)試標(biāo)準(zhǔn)中的安全性測(cè)試是檢驗(yàn)軟件中已存在的安全性、安全保密性措施是否有效的測(cè)試,是保證系統(tǒng)安全性的重要手段。

      安全性測(cè)試并不最終證明應(yīng)用程序是安全的,而是只用于驗(yàn)證所設(shè)立對(duì)策的有效性,這些對(duì)策是基于威脅分析階段所做的假設(shè)而選擇的。還以上面的直升機(jī)快速回收軟件為例,如果該軟件從需求分析、設(shè)計(jì)到實(shí)現(xiàn)過(guò)程中沒(méi)有對(duì)重要數(shù)據(jù)進(jìn)行保護(hù)和備份,而導(dǎo)致數(shù)據(jù)被非法訪問(wèn),這是需求不充分所導(dǎo)致的,但如果有這樣需求,安全性措施未設(shè)計(jì)實(shí)現(xiàn)或失效,這是安全性測(cè)試要發(fā)現(xiàn)的問(wèn)題。

      3 裝備軟件安全性測(cè)試的一般思路

      對(duì)于軍事裝備來(lái)說(shuō),安全性測(cè)試主要面向的是安全性措施,而安全性措施來(lái)源于安全性需求。以下是從安全性需求到安全性測(cè)試需求的過(guò)程:

      首先根據(jù)裝備的安全性、關(guān)鍵性要求確定裝備軟件等級(jí),一般分為A、B、C、D四個(gè)等級(jí)。項(xiàng)目需求人員結(jié)合項(xiàng)目應(yīng)用背景提出安全性要求,然后由軟件需求人員根據(jù)安全性要求,轉(zhuǎn)化為軟件安全性需求,這些提出的安全性要求及安全性需求一定要符合之前確定的軟件等級(jí),如將軟件等級(jí)確定為A,就一定要提出防止人員死亡或系統(tǒng)報(bào)廢的安全性要求和需求。然后根據(jù)軟件應(yīng)用領(lǐng)域所積累的安全防護(hù)經(jīng)驗(yàn),完善軟件安全性需求,由設(shè)計(jì)人員根據(jù)軟件安全性需求,結(jié)合具體技術(shù)實(shí)現(xiàn)手段轉(zhuǎn)化為軟件安全性設(shè)計(jì),最后由編碼人員完成最終的代碼編寫(xiě)。

      在軟件測(cè)試階段,測(cè)試人員對(duì)照系統(tǒng)及軟件技術(shù)文檔檢查軟件需求、軟件設(shè)計(jì)中的安全性描述,并據(jù)此進(jìn)行安全性測(cè)試。

      對(duì)照軟件安全性測(cè)試的定義,裝備軟件安全性測(cè)試的指導(dǎo)思想為:

      (1)明確軟件需要保護(hù)什么東西,如操作的人、使用的電子設(shè)備、飛行器等;

      (2)明確軟件要禁止哪種危險(xiǎn)狀態(tài)發(fā)生,如程序失效、錯(cuò)誤或意料外的輸出、非法侵入等。

      明確了安全性測(cè)試的指導(dǎo)思想后,可以進(jìn)一步明確軍事裝備軟件安全性測(cè)試的一般思路,即軟件為保證安全性所作的種種措施,安全性測(cè)試就是測(cè)試這些措施是否正確有效。

      針對(duì)指導(dǎo)思想(1)的安全性措施:

      1.防止對(duì)人的可能瞬間傷害,軟件采取的措施,如避免引發(fā)裝備爆炸、飛機(jī)墜落;

      2.防止對(duì)人的長(zhǎng)期損害,軟件采取的措施,如避免電磁長(zhǎng)期照射、屏幕閃爍引發(fā)職業(yè)病;

      3.防止對(duì)關(guān)聯(lián)系統(tǒng)的損壞,軟件采取的措施,如直升機(jī)回收設(shè)施軟件應(yīng)盡量考慮避免可能造成對(duì)直升機(jī)的損壞;

      4.對(duì)自身系統(tǒng)的破壞,軟件采取的措施,如為防止電流過(guò)大而燒毀自身電路所做的軟件設(shè)計(jì);

      5.用戶(hù)登錄及相關(guān)權(quán)限的處理來(lái)保護(hù)系統(tǒng),防止系統(tǒng)被蓄意或無(wú)意的破壞;

      6.防止被非法侵入后竊取、篡改數(shù)據(jù)等所做的軟件數(shù)據(jù)安全處理;

      7.確保重要數(shù)據(jù)的完整性、有效性所做的備份、恢復(fù)、管理等;

      8.確保重要數(shù)據(jù)的機(jī)密不被泄漏而作的保密機(jī)制;

      針對(duì)指導(dǎo)思想(2)的安全性措施:

      1.禁止用戶(hù)非正常登錄或非法得到及使用權(quán)限;

      2.防止程序非正常失效所作的監(jiān)視、檢測(cè),以及失效后的處理(重啟、復(fù)位)等;

      3.防止被非授權(quán)攻擊、漏洞攻擊、木馬植入等手段所做的軟件防范性處理;

      4.為避免程序異常輸出而采取的軟件措施:

      5.為確保不因程序意外故障而導(dǎo)致任務(wù)失敗的,軟件恢復(fù)、應(yīng)急功能、降功能使用等臨時(shí)措施和應(yīng)急手段;

      6.為應(yīng)付各種非法侵入、異常操作、快速操作而進(jìn)行的軟件容忍、恢復(fù)處理;

      7.為避免軟件或系統(tǒng)在異常條件、復(fù)雜環(huán)境下導(dǎo)致故障或非法輸出等而采取的相關(guān)措施;

      8.對(duì)硬件受損后軟件的自我調(diào)整、恢復(fù)處理。

      4 裝備軟件安全性測(cè)試的方法

      軍事裝備的軟件測(cè)試一般分為四個(gè)階段,本文從這四個(gè)階段描述裝備軟件安全性測(cè)試方法及手段。

      4.1 測(cè)試需求分析與策劃階段

      根據(jù)軟件等級(jí)來(lái)考慮安全性需求,進(jìn)行分析策劃。比如飛機(jī)起降引導(dǎo)的軟件就必須考慮由于軟件失效所導(dǎo)致飛機(jī)發(fā)生事故的風(fēng)險(xiǎn),對(duì)這種風(fēng)險(xiǎn)回溯到軟件的需求分析、設(shè)計(jì)和實(shí)現(xiàn)階段,就是安全性需求。如果確實(shí)在所有的文檔中都沒(méi)有這方面的描述,那么有理由去質(zhì)疑軟件需求分析、設(shè)計(jì)的合理性,應(yīng)交由文檔審查強(qiáng)度測(cè)試或功能測(cè)試來(lái)解決,并不是安全性測(cè)試的范疇,安全性測(cè)試一定是要針對(duì)采取了安全性措施的。

      4.2 測(cè)試設(shè)計(jì)階段

      軟件安全性測(cè)試主要集中在以下三個(gè)方面:

      (1)程序運(yùn)行安全;

      (2)網(wǎng)絡(luò)及通信環(huán)境安全;

      (3)數(shù)據(jù)安全。

      在這一階段要確定整個(gè)軟件中的安全性關(guān)鍵部件,重點(diǎn)加以測(cè)試,從以下三方面的因素綜合加以考慮:

      (1)根據(jù)軟件的實(shí)際使用背景確定軟件的核心部件尤其是那些必須確保安全可靠的核心部件;

      (2)根據(jù)對(duì)軟件設(shè)計(jì)、開(kāi)發(fā)的掌握,分析軟件可能存在隱患和漏洞,梳理出防范隱患和漏洞處理的相關(guān)實(shí)現(xiàn)部分;

      (3)評(píng)估安全風(fēng)險(xiǎn),對(duì)安全風(fēng)險(xiǎn)高的處理代碼進(jìn)行識(shí)別。

      在這一階段,如果條件允許,可以先結(jié)合自身的安全性測(cè)試技術(shù)和工具對(duì)關(guān)鍵代碼進(jìn)行靜態(tài)分析、代碼審查等先期工作,及早發(fā)現(xiàn)軟件安全性方面的問(wèn)題。

      在安全性測(cè)試中不要照搬軟件需求文檔中的安全性描述,文檔中不但存在需求不充分的問(wèn)題,對(duì)安全性需求也常常描述不足,在這一階段最重要的是挖掘隱含的安全性需求,并對(duì)其開(kāi)展測(cè)試設(shè)計(jì)。

      比如:飛機(jī)降落時(shí)3個(gè)起落架都放下剎車(chē)(不滿(mǎn)足則不剎車(chē),復(fù)飛)。在文檔描述中出現(xiàn)了未考慮的需求(如迫降)。

      如描述:三個(gè)都放下、剎車(chē);沒(méi)有都放下,不剎車(chē)。

      而忽略了不正常的需求:前起落架沒(méi)放下;后起落架沒(méi)放下。

      再舉兩個(gè)例子:

      (1)對(duì)“O”、穿越“0”以及從兩個(gè)方向趨近于“O”的輸入值的測(cè)試。

      首先要分析這個(gè)“0”是否是可能導(dǎo)致安全性隱患的關(guān)鍵點(diǎn),是否進(jìn)行了特殊處理。如果某電源控制器軟件能處理-10V到+10V電壓數(shù)據(jù),該軟件處理的-10- 10的連續(xù)數(shù)據(jù),ov不是一個(gè)關(guān)鍵點(diǎn),也沒(méi)有特殊的安全性處理措施,就沒(méi)有必要進(jìn)行安全性測(cè)試。對(duì)OV作這樣的測(cè)試是沒(méi)有意義的。

      而又如對(duì)于飛機(jī)飛行管理中凌晨零點(diǎn)零分由于涉及跨天操作,是一個(gè)關(guān)鍵點(diǎn),就需要對(duì)零點(diǎn)零分,穿越零點(diǎn)零分(從第一天到第二天),分別從第一天的23: 59和第二天的0:01分分別趨向于零點(diǎn)零分進(jìn)行測(cè)試。

      (2)對(duì)雙工切換、多機(jī)替換的正確性和連續(xù)性的測(cè)試。

      比如雙網(wǎng)卡的切換,最起碼不能只關(guān)注軟件是否正常運(yùn)行,最起碼要在大數(shù)據(jù)量傳輸?shù)那闆r下,還要完成分析切換是否丟失數(shù)據(jù)、丟失多少數(shù)據(jù),丟失的數(shù)據(jù)對(duì)功能有無(wú)影響等多項(xiàng)測(cè)試工作。對(duì)于在多機(jī)系統(tǒng)出現(xiàn)故障或數(shù)據(jù)備份切換時(shí),要記錄并比較發(fā)生故障或切換前后軟件的功能、數(shù)據(jù)是否完整、一致,而不能只看軟件能夠正常運(yùn)行。

      4.3 測(cè)試執(zhí)行階段

      在測(cè)試執(zhí)行階段,裝備軟件的安全性測(cè)試要采用實(shí)際的測(cè)試技術(shù)、測(cè)試工具和測(cè)試方法對(duì)軟件的安全性保密性措施是否有效進(jìn)行測(cè)試。除了通用的黑盒測(cè)試方法和白盒測(cè)試方法,安全性測(cè)試方法還主要采用基于猜錯(cuò)法的測(cè)試、基于故障樹(shù)的測(cè)試、基于接口語(yǔ)法的軟件安全性測(cè)試、基于安全漏洞的檢測(cè)技術(shù)、形式化安全性測(cè)試等。在此階段,可以在前期分析設(shè)計(jì)的基礎(chǔ)上根據(jù)被測(cè)軟件的實(shí)際情況和安全性需求綜合采用各種方法手段。

      4.4 測(cè)試總結(jié)階段

      按照指標(biāo)體系來(lái)確定軍事裝備軟件安全性的評(píng)價(jià)需求、設(shè)計(jì)軍事裝備軟件安全性的評(píng)價(jià)規(guī)格說(shuō)明模板,明確評(píng)價(jià)范圍,制定評(píng)價(jià)計(jì)劃模板,提出裝備軟件安全測(cè)試充分性評(píng)價(jià)的層次分析模型,結(jié)合裝備軟件的特性,定義了裝備軟件安全測(cè)試充分性評(píng)價(jià)函數(shù)。通過(guò)該模型對(duì)基于裝備軟件安全性測(cè)試效果進(jìn)行評(píng)估,并對(duì)裝備軟件的安全性進(jìn)行評(píng)價(jià)。

      5 結(jié)束語(yǔ)

      安全性是軍事裝備軟件質(zhì)量的重要特性。經(jīng)過(guò)多年的軟件工程實(shí)踐,軟件測(cè)試己成為驗(yàn)證軟件功能性和安全性的重要手段。通過(guò)軍事裝備軟件的安全性測(cè)試可有效提升軟件的安全性。從安全性需求的提出、實(shí)現(xiàn)到安全性測(cè)試的分析設(shè)計(jì),軍事裝備軟件的安全性測(cè)試是一個(gè)系統(tǒng)性、全壽命周期的質(zhì)量活動(dòng),只有考慮軟件研制全過(guò)程,并將安全性分析和實(shí)際測(cè)試手段結(jié)合起來(lái),才能從根本上提高軍事裝備軟件的安全性。

      參考文獻(xiàn)

      [1]總裝備部電子信息基礎(chǔ)部標(biāo)準(zhǔn)化研究中心,軍用軟件工程系列標(biāo)準(zhǔn)實(shí)施指南[M].北京:航空工業(yè)出版社,2006 (129).

      [2] Haralambos Mouratidis編著,米磊,趙鎧譯,軟件安全性理論與實(shí)踐[M].北京:電子工業(yè)出版社,2015 (11).

      [3]朱少民著.全程軟件測(cè)試[M].北京:電子工業(yè)出版社,2014 (25).

      [4]何鑫,鄭軍,劉暢.軟件安全性測(cè)試研究綜述[J],計(jì)算機(jī)測(cè)量與控制,2011,19 (03): 493-496

      [5] GJB/Z 102A-2012軍用軟件安全性設(shè)計(jì)指南,

      [6] GJB/Z 141-2004軍用軟件測(cè)試指南.

      房山区| 七台河市| 双城市| 定安县| 山东| 靖江市| 临湘市| 鞍山市| 商河县| 商城县| 镇坪县| 谷城县| 牟定县| 古蔺县| 黔江区| 洪湖市| 西畴县| 浏阳市| 丁青县| 荔波县| 崇左市| 沐川县| 醴陵市| 黄冈市| 湖南省| 道真| 牡丹江市| 新龙县| 绥芬河市| 德格县| 山西省| 稻城县| 镇安县| 吉水县| 湘西| 英山县| 平潭县| 定日县| 聂荣县| 大理市| 蒲城县|