摘 要:隨著現代科技的發展,計算機網絡技術逐漸走進人們的生活,并且發揮著越來越大的作用。計算機軟件的開發越來越受到人們的關注,同時人們也更關心計算機軟件的安全問題。本文從計算機軟件安全檢測的概念,內容出發,分析了計算機軟件安全檢測中存在的問題,并結合筆者的實踐經驗,探討了計算機軟件安全檢測存在的問題的處理方法,為計算機軟件的安全檢測提供了可參考模式。
關鍵詞:計算機軟件;安全檢測;解決策略
中圖分類號:TP309 文獻標識碼:A 文章編號:1674-7712 (2014) 02-0000-01
隨著社會經濟的騰飛,人們享受到越來越多的高端產品所帶來的便捷。信息時代給人們的生活帶來了諸多便利,與此同時,計算機安全問題也日益凸顯。攜帶計算機病毒的軟件會破壞客戶機內部配置,給用戶帶來不可估量的損失。所以,計算機軟件的安全檢測顯得格外重要。
一、計算機軟件安全檢測概述
在軟件開發中,計算機軟件安全檢測起到舉足輕重的作用,其目的是發現軟件本身的缺陷,并對應用程序進行改進修復,彌補漏洞,進而對計算機軟件自身的風險進行更正。軟件安全檢測的一個宗旨便是以較少的測試工作量達到盡可能廣的覆蓋面。市面上計算機軟件安全檢查方法眾多,但究其實質,無外乎靜態和動態兩類。
計算機軟件安全檢測包含三方面任務:功能檢查、驗證過程和滲透測試,目的是檢驗軟件是否具備可靠的使用功能,且具備足夠的安全性。計算機軟件安全檢測主要針對安全漏洞和安全性能展開工作。安全功能測試包括機密性驗證、授權等級劃分、訪問控制等,它主要檢測軟件安全性能能夠滿足客戶需要。安全漏洞檢測主要是檢查潛在缺陷,并及時發布補丁程序,以完善軟件性能。
二、計算機軟件面臨的威脅
(一)非法復制。計算機軟件的技術含量較高,在開發過程中需要耗費大量人力成本,軟件的開發成本遠遠高于硬件成本。但是計算機軟件的易復制性卻極大威脅到了軟件產業。根據不完全統計,全球軟件產業因盜版而承受的損失逾120億美元。我國尚處于經濟轉型期,經濟發展迅速,但相關管理體制還不健全,非法復制軟件將會引發嚴重社會問題。
(二)軟件質量問題。軟件開發商提供的軟件難免會存在缺陷,即使諸如微軟公司這樣的大企業也難以避免,軟件漏洞威脅到了軟件系統的安全性能。近年來因軟件漏洞引發的安全事件數見不鮮,并逐年上升。某些軟件高手善于利于軟件漏洞,開發各種各樣的“補丁程序”,利用漏洞做出有悖于正常運行程序的工作,這對于用戶使用和行業發展都很不利。
三、計算機軟件安全檢測中應注意的問題
(一)首先要把握計算機軟件的特點,量體裁衣,對軟件性能進行綜合考量,制定合理的安全檢測方案。再者,計算機安全檢測人員的配置盡量多元化,專門的軟件安全分析員和系統總體設計人員是必不可少的,只有整合人力資源,各方面人才通力配合,才能圓滿完成軟件檢測任務。
(二)在進行軟件安全檢測前,需要完成對系統級、需求級和代碼級的詳細分析。軟件規模不同,軟件結構往往相差很大,這需要測試人員先行分析清楚。計算機安全檢測是一個系統工作,涉及面廣而雜,很難用單一方法解決所有安全問題,實際中選擇合理的檢測方法,并進行靈活搭配,唯有此才能準確完成軟件安全檢測。
四、計算機軟件安全檢測問題的常用處理方法
當前階段,軟件安全檢測方法包括幾種方法:
(一)靜態檢測技術。計算機軟件靜態檢測的對象只要是軟件程序和軟件代碼。檢測前事先建立一個檢測模型,針對內部邏輯結構和軟件特性展開檢測。這個檢測模型對于計算機本身而言要具有良好可讀性。模型隨機產生一組檢測案例,案例對軟件進行測試,將待測系統和模型案例的測試結果與期望結構進行對比,完成計算機軟件檢測。計算機靜態檢測技術經過長時間的實踐積累和理論探索,已經形成了成熟的體系,有限狀態機和馬爾科夫鏈是最常用的兩種方式。
(二)動態檢測技術。動態檢測類似于現場試驗,要將計算機軟件在計算機上運行,分析研究其運行環境變量,檢測其是否有安全漏洞或運行bug。實際中常使用的方法有:內存映射技術檢測、安全共享技術、沙箱技術、非執行棧技術檢測、非執行堆棧與數據技術檢測。對比其他檢測技術,這種檢測手段無需修改計算軟件二進制代碼或源代碼,利于軟件保密性,也正因為這個有點,此法在軟件安全檢測中應用廣泛。
(三)形式化安全檢測技術。先建立一個能描述計算機軟件特性的數學模型,這是為了突顯出計算機軟件的安全缺陷和潛在漏洞,再通過形式規格說明語言提供標準規格說明。實際中常用的說明語言主要有:基于模型的語言、有限狀態語言和基于用戶行為的語言,訂立證明和模型檢測是兩種常用方法。
(四)故障安全檢測技術。這類似于專家診斷系統,將一些常見的軟件故障輸入計算機軟件,藉由這種形式分析檢測計算機軟件的使用狀況。故障分析樹和故障最小割集是兩個基本因素。故障樹將最不可能出現的故障問題所發生的時間置頂,分析研究頂事件的原因,這些原因的集合謂之中間事件,再分析中間事件,它們的原因成為底事件,這一系列的事件結合在一起便構成了一個典型的故障樹。
五、結束語
近年來軟件產業發展迅猛,隨之而來的便是軟件安全隱患,這對計算機軟件安全檢測提出了新挑戰。很多軟件安全問題需要特定檢測方法,良好的檢測方案有助于指導軟件進行安全性能改善,進而不斷提升軟件性能。計算機軟件安全檢測在軟件工程中是不可或缺的一環,為了有效發揮軟件功用,軟件安全檢測是一項很重要的工作。計算機軟件工程師在學習工作中要加強對軟件安全檢測方法的研究,使之更好地服務于客戶。
參考文獻:
[1]趙妍.計算機軟件安全檢測方法探討[J].科技傳播,2010(16).
[2]柳淑玉,孔維廣.軟件安全漏洞挖掘技術的研究[J].山東紡織經濟,2010(05).
[3]王俊民.關于計算軟件的安全檢測方法探究[J].計算機光盤軟件與應用,2012(04).
[4]牛潔,王搞.淺談計算機軟件安全檢測技術[J].計算機光盤軟件與應用,2012(13):102-106.