肖俊
摘要:目的,探究性分析計(jì)算機(jī)軟件安全檢測(cè)的方法。避免由于軟件應(yīng)用所帶來(lái)的潛在風(fēng)險(xiǎn)。結(jié)論:計(jì)算機(jī)軟件安全檢測(cè)方法的研究對(duì)軟件安全檢測(cè)工作來(lái)說(shuō)有著不可低估的作用,是保障計(jì)算機(jī)軟件安全必不可少的手段之一。
關(guān)鍵詞:計(jì)算機(jī)軟件檢測(cè)方法分析
中圖分類號(hào):TP2文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-3791(2012)01(c)-0032-01
隨著科學(xué)技術(shù)的發(fā)展,計(jì)算機(jī)軟件的應(yīng)用范圍越來(lái)越廣泛。本文從計(jì)算機(jī)軟件安全檢測(cè)的概述出發(fā),在論述計(jì)算機(jī)軟件安全檢測(cè)需要注意問(wèn)題的基礎(chǔ)上分析了計(jì)算機(jī)軟件安全檢測(cè)的方法。
1計(jì)算機(jī)軟件安全檢測(cè)概述
軟件開發(fā)的重要環(huán)節(jié)是計(jì)算機(jī)軟件安全檢測(cè),檢測(cè)的目的是為了發(fā)現(xiàn)軟件所存在的故障而對(duì)程序進(jìn)行執(zhí)行的過(guò)程,從而有效的對(duì)計(jì)算機(jī)軟件潛在的風(fēng)險(xiǎn)進(jìn)行更正。軟件安全檢測(cè)的目標(biāo)是用較少的測(cè)試用例來(lái)達(dá)到最大的軟件檢測(cè)覆蓋,從而極好的發(fā)現(xiàn)軟件存在的問(wèn)題。計(jì)算機(jī)軟件安全檢測(cè)其的存在并不能證明程序中沒有錯(cuò)誤,它僅僅是查找程序錯(cuò)誤的手段。從目前計(jì)算機(jī)軟件安全檢測(cè)情況來(lái)看。進(jìn)行安全測(cè)試的方法主要分為靜態(tài)與動(dòng)態(tài)兩大類。
計(jì)算機(jī)軟件安全檢測(cè)是確定軟件所具有的安全實(shí)現(xiàn)是否能夠與軟件預(yù)期的設(shè)計(jì)要求一致的過(guò)程,這個(gè)過(guò)程包括功能測(cè)試、滲透測(cè)試與驗(yàn)證過(guò)程3個(gè)部門。計(jì)算機(jī)軟件安全檢測(cè)的安壘性與一般的軟件缺陷有一定的區(qū)別,軟件安壘檢測(cè)所強(qiáng)調(diào)的是軟件不應(yīng)該做什么,而不是軟件應(yīng)該做什么。計(jì)算機(jī)軟件安壘檢測(cè)通常分為安全功能與安全漏洞進(jìn)行檢測(cè)兩個(gè)方面。安全功能測(cè)試是檢測(cè)計(jì)算機(jī)軟件安全功能是否與安全需要之間步調(diào)一致。軟件安全功能需求做涉及的內(nèi)容比較廣,具體包括機(jī)密性、授權(quán),訪問(wèn)控制及安全管理等等。而計(jì)算機(jī)軟件安壘漏洞的檢測(cè)則與此不同,其針對(duì)的是軟件可能存在的缺陷,該缺陷有可能導(dǎo)致軟件在應(yīng)用中存在一定的風(fēng)險(xiǎn)。
2計(jì)算機(jī)軟件安全檢測(cè)是應(yīng)注意的問(wèn)題
從計(jì)算機(jī)軟件安全檢測(cè)來(lái)看,其是一個(gè)動(dòng)態(tài)的檢測(cè)過(guò)程。在進(jìn)行軟件安全檢測(cè)是需要關(guān)注到的問(wèn)題有如下幾點(diǎn)。
一是要針對(duì)所檢測(cè)的計(jì)算機(jī)軟件所特有特點(diǎn)與涉及要求,在綜合分析的基礎(chǔ)上通過(guò)選擇適合軟件的檢測(cè)技術(shù)手段,并從實(shí)際出發(fā)的角度制定合理的安全檢測(cè)方案。同時(shí),在進(jìn)行計(jì)算機(jī)軟件安全檢測(cè)時(shí)要關(guān)注檢測(cè)人員的多元化,在計(jì)算機(jī)軟件安全檢測(cè)過(guò)程中不僅僅要配備軟件安壘分析員。還要需要配備對(duì)該軟件系統(tǒng)熟悉同時(shí)是還是該系統(tǒng)的總體設(shè)計(jì)人員參加,只有多領(lǐng)域的配合才能更好的對(duì)軟件安壘進(jìn)行檢測(cè)。二是在進(jìn)行計(jì)算軟件安全檢測(cè)時(shí),系統(tǒng)級(jí)、需求級(jí)與代碼級(jí)的分析是必須的。如果該軟件的規(guī)模比較大。還應(yīng)對(duì)其進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)方面的分析。在具體的分析過(guò)程中從實(shí)際工作需要選擇合理的分析技術(shù),必要時(shí)可以進(jìn)行仿真環(huán)境與分析工具來(lái)協(xié)助檢測(cè)工作。從計(jì)算機(jī)安全檢測(cè)的角度來(lái)看,其過(guò)程是一個(gè)系統(tǒng)化的過(guò)程,無(wú)法通過(guò)簡(jiǎn)單的方法來(lái)解決一個(gè)系統(tǒng)的所有安全檢測(cè)問(wèn)題,因而在具體的家算計(jì)安全檢測(cè)過(guò)程中,需要選擇合理的安全檢測(cè)方法。
3計(jì)算機(jī)軟件安全檢測(cè)方法
3.1形式化安全測(cè)試
該安全檢測(cè)方法是確立軟件的數(shù)學(xué)模型,通過(guò)形式規(guī)格說(shuō)明語(yǔ)言的支持提供形式化的規(guī)格說(shuō)明。比較常用的形式規(guī)格語(yǔ)言有基于模型的語(yǔ)言、基于有限狀態(tài)的語(yǔ)言及基于行為的語(yǔ)言。有定理證明與模型檢測(cè)兩種形式化安全檢測(cè)的方法。
3.2基于模型的安全功能測(cè)試
該方法是對(duì)計(jì)算機(jī)軟件的行為與結(jié)構(gòu)通過(guò)建模的方式生成測(cè)試模型。以測(cè)試模型為基礎(chǔ)生成檢測(cè)用例,進(jìn)而驅(qū)動(dòng)軟件安全檢測(cè)。比較常用的模型安全功能測(cè)試方法有有限狀態(tài)機(jī)與馬爾可夫鏈等等。
3.3語(yǔ)法測(cè)試
該測(cè)試方法是以被檢測(cè)軟件的功能接口的語(yǔ)法生成軟件的測(cè)試輸入,通過(guò)這種方式檢測(cè)軟件對(duì)不同種類輸入的反映情況。用該方法進(jìn)行測(cè)試的通常程序是對(duì)軟件接口的語(yǔ)言進(jìn)行識(shí)別,定義語(yǔ)言的語(yǔ)法,在以語(yǔ)法為基礎(chǔ)生產(chǎn)測(cè)試用例同時(shí)執(zhí)行安全檢測(cè)。
3.4基于故障注入的安全性測(cè)試
該安全檢測(cè)方法是應(yīng)用故障分析樹與故障數(shù)的最小割集來(lái)生產(chǎn)檢測(cè)用命。故障數(shù)分析法用系統(tǒng)最不該發(fā)生的時(shí)間作為頂事件。在尋找導(dǎo)致事故發(fā)生可能的中間事件與底事件,通過(guò)合理的邏輯門符號(hào)將頂事件、中間事件動(dòng)化程度,是比較充分的安全檢測(cè)方法。
3.5模糊測(cè)試
目前所用的是基于白盒的模糊測(cè)試,是對(duì)傳統(tǒng)模糊測(cè)試技術(shù)的進(jìn)步。該檢測(cè)方法有效的結(jié)合傳統(tǒng)的模糊測(cè)試技術(shù)與動(dòng)態(tài)測(cè)試用例。
3.6基于屬性的測(cè)試
該軟件安全檢測(cè)方法是首先確定軟件的安全編程規(guī)則,將確定的規(guī)則編碼作為安全屬性來(lái)驗(yàn)證系統(tǒng)程序的代碼是否對(duì)這些規(guī)則進(jìn)行了遵守。該檢測(cè)方法的優(yōu)勢(shì)是能夠有效分析安全漏洞的交互性及擴(kuò)展性等的。
另外,近年來(lái)基于Web服務(wù)的分布式軟件快速發(fā)展,如何對(duì)Web服務(wù)開展安全性測(cè)試是分布式軟件安全性測(cè)試面臨的嶄新課題。而軟件安全檢測(cè)方法的存在其主要作用就是檢測(cè)、分析軟件或軟件設(shè)計(jì)中存在的這些安全問(wèn)題,從而指導(dǎo)軟件進(jìn)行安全性能改善。
通過(guò)上述分析,計(jì)算機(jī)軟件安全檢測(cè)是信息安全體系中必不可少的組成部分,軟件安全檢測(cè)對(duì)計(jì)算機(jī)軟件應(yīng)用來(lái)說(shuō)是其發(fā)展與應(yīng)用的必然環(huán)節(jié)。應(yīng)進(jìn)一步加強(qiáng)對(duì)計(jì)算機(jī)軟件安全檢測(cè)方法的分析。