摘要:計(jì)算機(jī)現(xiàn)在已經(jīng)在不同領(lǐng)域中廣泛應(yīng)用,其中,計(jì)算機(jī)軟件是計(jì)算機(jī)進(jìn)行各項(xiàng)活動(dòng)必須的設(shè)備,對(duì)軟件進(jìn)行安全檢測(cè)是十分必要的,本文從計(jì)算機(jī)安全檢測(cè)技術(shù)涉及的內(nèi)容入手,繼而分析了計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)時(shí)的注意事項(xiàng),最后討論了計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)技術(shù)適用的方法,希望對(duì)計(jì)算機(jī)軟件行業(yè)的相關(guān)人員有所啟發(fā)。
關(guān)鍵詞:計(jì)算機(jī)軟件;安全檢測(cè)技術(shù);分析
中圖分類號(hào):TP393.08 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 15-0000-02
不同類別的計(jì)算機(jī)軟件能夠滿足用戶的不同需求,軟件開(kāi)發(fā)在我國(guó)以及世界上都屬于發(fā)展興旺的產(chǎn)業(yè),在設(shè)計(jì)軟件之前,設(shè)計(jì)者都要提出相應(yīng)的設(shè)計(jì)目標(biāo),比如軟件的性能、應(yīng)用領(lǐng)域、設(shè)計(jì)思路等都需要進(jìn)行考慮,軟件開(kāi)發(fā)完成后,需要對(duì)其進(jìn)行安全性的檢測(cè),目的是檢測(cè)設(shè)計(jì)完畢的軟件是否能夠達(dá)到預(yù)期的應(yīng)用目的,在安全檢測(cè)的過(guò)程中,會(huì)發(fā)現(xiàn)軟件中潛藏的風(fēng)險(xiǎn)性漏洞,發(fā)現(xiàn)后也及時(shí)采取措施進(jìn)行排除,以便保證計(jì)算機(jī)軟件在真正使用時(shí)的安全性能。
1 計(jì)算機(jī)安全檢測(cè)技術(shù)涉及的內(nèi)容
在計(jì)算機(jī)進(jìn)行軟件開(kāi)發(fā)的過(guò)程中,需要對(duì)其進(jìn)行安全檢測(cè)或者測(cè)試工作,安全檢測(cè)技術(shù)是非常必要的,它能夠在檢測(cè)的過(guò)程中了解軟件的性能,對(duì)于軟件的安全隱患能夠及時(shí)發(fā)現(xiàn)并消除,計(jì)算機(jī)軟件的安全檢測(cè),有一個(gè)明確的追求,那就是希望檢測(cè)技術(shù)能夠?qū)浖M(jìn)行全方位的檢測(cè),而且盡量減少檢測(cè)的次數(shù),這樣能夠節(jié)省時(shí)間和資源,另一方面,要注意檢測(cè)的效率,既發(fā)現(xiàn)軟件運(yùn)行過(guò)程中出現(xiàn)的異常情況。就目前來(lái)看,計(jì)算機(jī)軟件進(jìn)行的安全檢測(cè),方法有兩種,一種是動(dòng)態(tài)檢測(cè),一種是靜態(tài)檢測(cè)。
在設(shè)計(jì)特定軟件之前,首先要明確軟件的性能和要求,在安全檢測(cè)中,參照的標(biāo)準(zhǔn)就是軟件在運(yùn)行的過(guò)程中是否與既定的要求相符;計(jì)算機(jī)軟件的安全檢測(cè)一般包括三個(gè)環(huán)節(jié),一是對(duì)功能進(jìn)行的各項(xiàng)測(cè)試,二是滲透測(cè)試,第三是驗(yàn)證的過(guò)程。在安全測(cè)試中,注重的是軟件不能進(jìn)行的任務(wù),而不是應(yīng)該進(jìn)行的任務(wù);在普遍情形之下,安全檢測(cè)由兩個(gè)主要的方面構(gòu)成,其中之一是安全檢測(cè)的功能;另一個(gè)方面叫做安全檢測(cè)漏洞。測(cè)試功能時(shí),參考的指標(biāo)就是軟件的安全性和既定的安全需求是否符合;計(jì)算機(jī)安全檢測(cè)涉及的方面是非常廣的,比如機(jī)密性,訪問(wèn)控制和對(duì)信息的授權(quán)都在測(cè)試的范圍之內(nèi);安全漏洞檢測(cè)并不和計(jì)算機(jī)軟件的安全功能檢測(cè)是一回事,兩者有很大的差異性,主要針對(duì)的是計(jì)算機(jī)軟件在運(yùn)行過(guò)程中的缺陷,而且這些缺陷已經(jīng)嚴(yán)重影響軟件的運(yùn)行和使用。
2 計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)時(shí)的注意事項(xiàng)
計(jì)算機(jī)進(jìn)行安全檢測(cè),很明顯是動(dòng)態(tài)運(yùn)行的,筆者根據(jù)實(shí)踐總結(jié)了以下幾個(gè)方面,希望計(jì)算機(jī)軟件檢測(cè)人員予以重視。
2.1 預(yù)先制定檢測(cè)方案
在制定檢測(cè)方案時(shí),首先要對(duì)計(jì)算機(jī)軟件的要求有一個(gè)綜合的了解,在此基礎(chǔ)上進(jìn)行周密的分析,然后選擇合適的技術(shù)檢測(cè)技術(shù),依據(jù)與計(jì)算機(jī)檢測(cè)相關(guān)的情況,設(shè)置科學(xué)性的檢測(cè)方案;另一方面,在檢測(cè)人員的選擇上,要擺脫單一的人員構(gòu)成,精通計(jì)算機(jī)各方面的專業(yè)人員都要配備,比如安全分析人員,操作人員,軟件的設(shè)計(jì)者都應(yīng)該參與檢測(cè),這樣能夠?qū)τ?jì)算機(jī)軟件不同性能的測(cè)驗(yàn)都有專門人士指導(dǎo)和分析,能夠保證安全檢測(cè)的效率。
2.2 計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)的過(guò)程中要對(duì)不同層級(jí)的系統(tǒng)進(jìn)行細(xì)致分析
軟件安全檢測(cè)的過(guò)程中,應(yīng)該對(duì)代碼級(jí),系統(tǒng)級(jí)以及需求級(jí)進(jìn)行與之相對(duì)應(yīng)的分析。若檢測(cè)的軟件具有龐大的規(guī)模,第一步要做的就是分析設(shè)計(jì)者對(duì)軟件結(jié)構(gòu)的設(shè)計(jì)思路,應(yīng)該結(jié)合現(xiàn)實(shí)需要進(jìn)行分析,分析的方法一定要保持較高的適用度;進(jìn)行分析的環(huán)節(jié)中,為了更好地完成工作,將仿真環(huán)境和分析工具結(jié)合起來(lái)是可行的辦法。
2.3 合理選取安全檢測(cè)的方法
計(jì)算機(jī)軟件的安全檢測(cè)工作,系統(tǒng)性很強(qiáng),需要各方的配合,需要很多的方法,如果只是用一個(gè)檢測(cè)方法,幾乎沒(méi)有可能完成所有的檢測(cè)任務(wù),所以,方法選擇的合理性是非常重要的,應(yīng)該由專業(yè)人員共同商討確定合理的檢測(cè)方法;方法一旦選擇錯(cuò)誤或者不適當(dāng),對(duì)于計(jì)算機(jī)軟件的安全檢測(cè)技術(shù)就沒(méi)有了可靠性。
3 計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)技術(shù)適用的方法分析
計(jì)算機(jī)軟件的安全檢測(cè)需要一定的技術(shù)支持,需要使用特定的技術(shù)。按照正確的方法進(jìn)行檢測(cè)。
3.1 計(jì)算機(jī)軟件安全檢測(cè)適用的程序
一般而言,計(jì)算機(jī)軟件系統(tǒng)如果具有較為龐大的規(guī)模,那么它必定包含很多的子系統(tǒng),而子系統(tǒng)之下又可以進(jìn)行細(xì)分,由不同性質(zhì)的模塊組成,計(jì)算機(jī)軟件進(jìn)行安全檢測(cè)時(shí),一般按照特定的程序或者步驟進(jìn)行,第一步要做的就是要做好單元測(cè)試,一般以模塊為單位進(jìn)行;這個(gè)安全測(cè)試的對(duì)象是軟件的最小構(gòu)成單位,測(cè)試的主要任務(wù)是找出模塊中的不足和缺點(diǎn),及時(shí)發(fā)現(xiàn)并解決。模塊的安全測(cè)試能夠?yàn)槠渌臏y(cè)試做好鋪墊工作,模塊測(cè)試完成以后,遵循既定的設(shè)計(jì)程序,將不同的模塊匯合成一個(gè)系統(tǒng),接下來(lái)檢測(cè)的部位就是系統(tǒng)的結(jié)構(gòu)構(gòu)成。
3.2 計(jì)算機(jī)安全檢測(cè)適用的方法
首先,是形式化的安全檢測(cè),適用的方法是根據(jù)軟件的特點(diǎn)建立教學(xué)模型,依據(jù)此種形式選用支持的語(yǔ)言,然后確定具有某種形式特點(diǎn)的規(guī)格。形式規(guī)格語(yǔ)言的種類很多,比如依據(jù)模型的語(yǔ)言、依據(jù)行為的語(yǔ)言等。
第二個(gè)方面,是對(duì)模型安全功能進(jìn)行的檢測(cè)。一般的方法是明確計(jì)算機(jī)軟件的各種任務(wù)行為,以及具體的結(jié)構(gòu),然后構(gòu)建適合的模型,使之可以用于安全性檢測(cè)的需要,然后在此前提下形成檢測(cè)的用例,進(jìn)而驅(qū)動(dòng)計(jì)算機(jī)軟件實(shí)施安全性的各項(xiàng)檢測(cè)。通過(guò)實(shí)踐運(yùn)用得知,針對(duì)于模型的檢測(cè)方法有如下幾種,比如有限狀態(tài)的機(jī)器、馬爾科夫鏈。
第三,根據(jù)實(shí)際進(jìn)行語(yǔ)法檢測(cè)。語(yǔ)法檢測(cè)的方法能夠反饋計(jì)算機(jī)軟件識(shí)別不同語(yǔ)言的情形,一般步驟是首先要識(shí)別軟件的接口語(yǔ)言,然后定義特定語(yǔ)言的語(yǔ)法類別,與此同時(shí),還要做好計(jì)算機(jī)軟件實(shí)行安全檢測(cè)的任務(wù)。
第四個(gè)方面,是進(jìn)行“模糊測(cè)試”。根據(jù)經(jīng)驗(yàn)方法來(lái)看,模糊測(cè)試是在白盒測(cè)試的基礎(chǔ)上進(jìn)行的安全測(cè)試,與以往的模糊測(cè)試方法相比較而言,這種模糊測(cè)試的方法更加先進(jìn),更加合理;因?yàn)檫@種測(cè)試方法不僅汲取了傳統(tǒng)模糊測(cè)試的優(yōu)點(diǎn),又將白盒模糊測(cè)試技術(shù)應(yīng)用于其中,從而保證了計(jì)算機(jī)軟件安全檢測(cè)技術(shù)的有效性。模糊測(cè)試方法的技術(shù)含量并不高,因此幾乎沒(méi)有技術(shù)上的難度問(wèn)題出現(xiàn),但是它的作用還是很明顯的,能夠?qū)Τ绦蛑惺钟泻康腷ug突出出來(lái),可以對(duì)不正確的模式給予揭示,并能夠告知檢測(cè)者出現(xiàn)的攻擊途徑。
4 總結(jié)
以上分析了有關(guān)計(jì)算機(jī)軟件的安全檢測(cè)技術(shù),主要三個(gè)方面展開(kāi)分析;對(duì)計(jì)算機(jī)軟件進(jìn)行安全性檢測(cè),是為了保證軟件在計(jì)算機(jī)中的使用安全和計(jì)算機(jī)本身安全,從而促使計(jì)算機(jī)完成各項(xiàng)工作,滿足不同領(lǐng)域的人們的不同需求。計(jì)算機(jī)的安全檢測(cè)技術(shù)應(yīng)該有所創(chuàng)新和發(fā)展,軟件檢測(cè)人員應(yīng)該有所追求,爭(zhēng)取用最少的檢測(cè)次數(shù),能夠?qū)⒂?jì)算機(jī)軟件的所有性能都進(jìn)行綜合性的檢測(cè),及時(shí)發(fā)現(xiàn)安全隱患,并在第一時(shí)間內(nèi)采取措施予以解決,從而保證計(jì)算機(jī)軟件的正常應(yīng)用性能。由于筆者的個(gè)人水平有限,對(duì)于本文的分析可能并不完整,希望熱心的讀者能夠在本文的基礎(chǔ)上給予補(bǔ)充或者更新,使更好的計(jì)算機(jī)軟件的安全檢測(cè)技術(shù)全面呈現(xiàn),使更多的從業(yè)人員受益。
參考文獻(xiàn):
[1]馬海濤.計(jì)算機(jī)軟件安全漏洞原理及防范方法[J].科協(xié)論壇(下半月),2009,06.
[2]蔣廷耀,王訓(xùn)宇,馬凱,關(guān)國(guó)翔.基于EAI和AOP的軟件安全測(cè)試及應(yīng)用研究[J].計(jì)算機(jī)科學(xué),2009,04.
[3]李潔.軟件測(cè)試用例設(shè)計(jì)[J].電腦編程技巧與維護(hù),2010,04.
[4]楊洪路,宮云戰(zhàn),高文齡,白哥樂(lè).軟件安全靜態(tài)檢測(cè)技術(shù)與工具[J].信息化縱橫,2009,09.
[5]單錦輝,姜瑛,孫萍.軟件測(cè)試研究進(jìn)展[J].北京大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,01.