李偉
【摘要】 計(jì)算機(jī)系統(tǒng)的安全性是信息安全的重中之重。軟件安全檢測(cè)是軟件研發(fā)過程中的關(guān)鍵環(huán)節(jié),目的是及時(shí)找出軟件的故障并對(duì)程序予以執(zhí)行,以有效的更正軟件中所暗藏的風(fēng)險(xiǎn)。軟件安全檢測(cè)的目標(biāo)是運(yùn)用盡量少的測(cè)試用例而實(shí)現(xiàn)最大化的檢測(cè)覆蓋,以很好的找出軟件內(nèi)在的問題。文章主要是探討安全性測(cè)試的主要方法、技術(shù)和工具。
【關(guān)鍵詞】 計(jì)算機(jī) 注意事項(xiàng) 軟件安全 檢測(cè)方式 安全測(cè)試
一、計(jì)算機(jī)軟件安全檢測(cè)的相關(guān)綜述
所謂的安全檢測(cè)其實(shí)是計(jì)算機(jī)軟件研發(fā)過程中的一個(gè)十分關(guān)鍵的環(huán)節(jié),一旦缺少這個(gè)環(huán)節(jié),那么計(jì)算機(jī)軟件研發(fā)必將不完整。借助對(duì)軟件的檢測(cè),可以了解其安全性能,還能發(fā)現(xiàn)軟件中的一些缺陷及漏洞,從而及時(shí)的予以彌補(bǔ),使軟件獲得優(yōu)化并且完善。但這種安全檢測(cè)的手段并不是避免軟件出現(xiàn)錯(cuò)誤的手段,這是由于計(jì)算機(jī)安全檢測(cè)的任務(wù)僅為查找到程序內(nèi)較易出現(xiàn)的錯(cuò)誤。在目前的技術(shù)里,軟件安全檢測(cè)主要有2種,即為靜態(tài)和動(dòng)態(tài)檢測(cè)。
計(jì)算機(jī)軟件安全檢測(cè)的本質(zhì)為:利用技術(shù)手段對(duì)軟件的漏洞以及缺陷予以系統(tǒng)化的檢測(cè),從而確保軟件研發(fā)的實(shí)際功能跟預(yù)期的基本一致。就目前來說,軟件安全檢測(cè)技術(shù)通常有3個(gè)方面:分別是滲透測(cè)試、功能測(cè)試以及檢驗(yàn)過程。跟其它的軟件比較看,安全軟件有其獨(dú)特的方面,其檢測(cè)的過程主要是防止軟件工作范圍以外的事物,普通軟件與之比較,是以軟件所應(yīng)做的事為主。用戶對(duì)軟件的依賴度,要用軟件的安全性去測(cè)試,安全檢測(cè)所承擔(dān)的角色可以說十分重要,其能查出軟件內(nèi)的風(fēng)險(xiǎn)與隱患所在,甚至能識(shí)別到部分軟件的設(shè)計(jì)缺陷對(duì)計(jì)算機(jī)帶來的安全風(fēng)險(xiǎn)。
二、匯總計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)時(shí)需要注意的方面
對(duì)計(jì)算機(jī)軟件進(jìn)行安全檢測(cè),需要借助于科學(xué)的方案,另外,對(duì)于檢測(cè)的工作人員同樣具有一定的要求,一是能夠?qū)浖M(jìn)行安全檢測(cè)工作有足夠的了解,二是能夠熟練知曉計(jì)算機(jī)的特征。因?yàn)檫@兩方面是最基本的能力,這樣在實(shí)施檢測(cè)方案的時(shí)候才能夠有效。另外,對(duì)于實(shí)施軟件檢測(cè)的人要求具有一定的專業(yè)素養(yǎng),能夠具有相關(guān)的技術(shù),能夠與計(jì)算機(jī)人員有效配合,使得檢測(cè)工作順利實(shí)施,這樣才能使計(jì)算機(jī)的軟硬件以及安全等各個(gè)方面都能夠達(dá)到預(yù)期。
對(duì)計(jì)算機(jī)進(jìn)行安全檢測(cè)至關(guān)重要,技術(shù)人員進(jìn)行軟件安全檢測(cè)的時(shí)候,要求對(duì)各種設(shè)備進(jìn)行深入全面的分析,能夠充分利用其自身綜合素質(zhì),這樣在一定程度上能夠提高計(jì)算機(jī)軟件的安全性。有些軟件系統(tǒng)所涉及的編程非常復(fù)雜,而且規(guī)模巨大,這樣的情況,就會(huì)使得檢測(cè)人員在進(jìn)行軟件安全檢測(cè)的時(shí)候,更加重視代碼以及需求級(jí)等方面的檢測(cè)。
三、闡述計(jì)算機(jī)軟件所涉及的安全檢測(cè)各種方式方法
1、形式化安全測(cè)試。這種檢測(cè)方法主要是建立起軟件的數(shù)學(xué)模型,利用規(guī)格說明語言的支持進(jìn)行形式化的規(guī)格說明。平時(shí)最常用到的形式規(guī)格語言主要有基于有限狀態(tài)的語言、模型的語言以及行為的語言三種。其中包括定理證明和模型檢測(cè)2類形式化安全檢測(cè)的手段。
2、進(jìn)行靜態(tài)分析的安全測(cè)試。此種安全測(cè)試的方式是安全掃描源代碼,匹配軟件安全規(guī)則庫和其中的數(shù)據(jù)流、語義等方面的各種信息,進(jìn)而尋找存在的各種安全漏洞。在編碼初期找到存在風(fēng)險(xiǎn)的代碼,這樣開發(fā)人員就能夠很快的解決其前期安全問題。
3、對(duì)語法進(jìn)行測(cè)試。這種測(cè)試手段主要用被測(cè)軟件功能接口的語法得到軟件的測(cè)試輸入,借助此種手段來檢測(cè)軟件對(duì)不同類型輸入的反應(yīng)狀況。運(yùn)用此手段測(cè)試的一般程序?yàn)椋簩?duì)軟件接口的語言予以識(shí)別,定義語言的語法,而后以語法為基礎(chǔ)得到測(cè)試用例并且進(jìn)行安全檢測(cè)。
4、建立模型的安全測(cè)試。這種測(cè)試方法主要是對(duì)計(jì)算機(jī)軟件的行為及結(jié)構(gòu)借助建模的手段得到測(cè)試模型,再以模型為基礎(chǔ)得到檢測(cè)用例,從而驅(qū)動(dòng)軟件進(jìn)行安全檢測(cè)。最常用到的模型安全測(cè)試手段包括有限狀態(tài)機(jī)及馬爾可夫鏈等。
5、在故障的基礎(chǔ)上所進(jìn)行的安全性測(cè)試。此種安全檢測(cè)的方法相對(duì)成熟,能夠有效提高檢測(cè)的自動(dòng)化程度。具體來說,主要是利用故障分析樹和故障數(shù)最小割集來檢測(cè)其生產(chǎn)用命。而所謂的故障樹分析法是將此系統(tǒng)最不可能發(fā)生問題的時(shí)間看做其頂事件,在找尋事故是否發(fā)生的可能性中的底事件和中間事件,借助于邏輯門的各種符號(hào)把底、中間以及頂事件連接,形成所謂的故障樹。
結(jié)語:是在科技迅猛發(fā)展的當(dāng)下,計(jì)算機(jī)軟件和網(wǎng)絡(luò)下的各種應(yīng)用越來越廣泛的進(jìn)入各行各業(yè),逐步成為人們生活與工作的重要組成,但是軟件安全檢測(cè)能夠保證計(jì)算機(jī)軟件的很好的被應(yīng)用,所以,在日后要更加重視和強(qiáng)化對(duì)計(jì)算機(jī)安全檢測(cè)以及檢測(cè)方法的探究。
參 考 文 獻(xiàn)
[1]王清.軟件漏洞分析技術(shù)[M].北京:電子工業(yè)出版社,2011,6.
[2]艾倫.軟件安全工程[M].北京:機(jī)械工業(yè)出版社,2009,4.
[3]李龍.軟件測(cè)試實(shí)用技術(shù)與常用模板[M].北京:機(jī)械工業(yè)出版社,2010,10.
[4] 陳璇.淺談關(guān)于軟件安全性測(cè)試方法研究[J].電腦知識(shí)與技術(shù),2009(3).
[5]施寅生,鄧世偉,古天陽.軟件安全性測(cè)試方法研究[J].微計(jì)算機(jī)信息.2008, 24 (1-3):56-58.
[6]王曉華.軟件安全測(cè)試方法研究.農(nóng)業(yè)網(wǎng)絡(luò)信息.2010(3).