張學習
計算機軟件安全是指計算機軟件的正常運行以及計算機系統的整體安全,其中包括軟件安全和數據安全兩個部分。由于信息技術發展的速度極快,故軟件安全領域面臨著極大的威脅,本文通過分析計算機軟件安全所存在的問題及安全防御策略,探討如何使用戶樹立正確的軟件安全觀及解決軟件安全的問題。
前言
在計算機軟件開發的過程中,算法或數據邏輯的問題經常會導致計算機軟件及操作系統出現異常,此類異常是計算機軟件的重大安全隱患,一般會造成用戶數據丟失、損壞或軟件系統崩潰[1]。軟件開發人員在軟件設計中首先要考慮的是用戶的需求問題,之后通過相應的算法實現用戶所需功能,但是為防止其他人員剽竊其軟件開發思路,軟件開發者一般采用數據加密的方式進行防御;軟件的用戶則更加關注軟件的穩定性及數據的安全性,這些都是軟件安全問題的一部分。
一、主要安全問題
計算機軟件在計算機系統中具有極其重要的作用,相當于人類解決問題的知識,不包含軟件的計算機系統僅等同于植物人,只有在安裝相應的軟件之后,計算機才可以看做是一個具有思想的“人”[2]。根據對計算機的資源調用能力可將計算機軟件分為系統軟件和應用軟件,系統軟件主要負責對計算機硬件資源的分配,以實現其他軟件的正常運行,而應用軟件在計算機系統中則負責實現對應的功能。
根據以上分類則可將計算機軟件安全分為系統安全和應用程序安全。系統安全一般是指系統程序在設計中存在的邏輯缺陷,針對這些系統邏輯缺陷,黑客、病毒及木馬能夠進入計算機系統并進行操作,盜取計算機用戶的數據或者對數據進行破壞。應用程序安全則是指應用程序在設計中存在的邏輯缺陷,一般情況下應用程序的缺陷并不會對系統運行產生影響,僅軟件自身存在問題,但一些特殊的應用軟件具有調用系統底層命令的功能,若此類軟件出現邏輯缺陷則會影響系統的安全,使計算機系統在運行中出現安全隱患。總之,計算機軟件系統的安全問題會給用戶帶來極大的損失,應給予足夠的重視,下面著重探討計算機應用程序的安全問題。
二、軟件安全檢測
通過安全檢測能夠發現計算機軟件在設計過程中出現的邏輯錯誤和數據錯誤,并針對已知的錯誤對軟件的設計進行修正,故軟件的安全檢測在程序設計中占有極其重要的地位,作用也十分顯著。在計算機軟件安全檢測中能夠通過較少的時間將軟件中存在的安全漏洞進行及時的修復,已經成為計算機軟件設計中有效保證程序安全的關鍵步驟。雖然通過軟件安全檢測能夠發現程序中存在的大部分漏洞,但對于部分符合邏輯卻影響程序運行的漏洞則很難檢測出,這證明采用安全檢測并不能完全保證軟件的正常運行,還需要在實際使用中對軟件進行各種測試,以收集軟件漏洞,同時采取主動防御措施,完善計算機軟件的安全性[3]。
三、軟件安全防御策略
(一)安全檢測方案
采用安全檢測方案對計算機軟件的安全性進行測試,這需要測試者對程序的設計有充分的了解,并根據軟件的需求和功能選擇相應的檢測手段,以保證檢測能夠順利進行并達成預期目標。由于測試人員一般不參與軟件的開發過程,故在測試過程中應與程序開發者進行密切溝通,確保信息的及時性和準確性,只有與開發人員通力合作才能夠順利完成軟件安全性的檢測。在計算機軟件安全性檢測中,涉及到的領域十分廣泛,首先應針對軟件的各個模塊進行檢測,確保各模塊的功能均能實現,在此基礎之上再進行整個軟件系統的功能檢測和邏輯檢測則相對簡單得多。目前使用的軟件安全性檢測方法有以下幾種,分別為形式化的安全檢測、邏輯檢測、語法檢測、靜態檢測和動態檢測。在不同領域的應用軟件其功能和服務對象均有一定的差異,這就需要在檢測中選擇合適的方法,以實現快速、有效的檢測軟件的安全性。隨著信息技術的不斷發展,檢測技術也逐步完善和創新,為未來的軟件安全領域提供了更多的便利。
(二)培養良好的軟件使用習慣
計算機軟件存在的邏輯錯誤若被不法分子利用則會給用戶帶來嚴重的損失,其中包括數據丟失、用戶信息丟失以及數據損壞等[4]。故計算機用戶應提高自身的安全意識、規范操作,在計算機系統中安裝殺毒軟件并采用硬件防火墻,在上網過程中應避免打開不熟悉的網頁和郵件,對于需要從網絡中下載使用的軟件,應在下載之后進行病毒和木馬掃描,以保證軟件的安全性。近年來由于電子商務系統的流行,用戶網絡購物及網上支付的頻率逐漸提高,特別是在網上支付的過程中,一定要有防范意識,避免不必要的損失。在退出網頁之前一定要點擊安全登出,以免其他用戶使用時獲取前一用戶的信息。總之,只有提高安全防范意識并規范自己的操作才能夠避免損失。
(三)在程序設計中完善軟件功能
軟件在設計過程中不可避免的會存在一定數量的漏洞,這就需要程序設計人員在進行軟件開發過程中盡量簡化代碼,采用通用的格式進行編寫,以方便后期代碼檢查及安全性檢測過程中測試人員的操作。在軟件設計之初,開發人員應充分了解用戶的需求,從而全面規劃用戶的功能模塊和設計細節。通過用戶反饋的信息修改軟件設計中的不足之處,以用戶的需求作為軟件開發的第一目標才能夠很好的解決設計中的問題,提高軟件的安全性和實用性。
軟件開發由于其工作量較大,故各部分功能的實現一般由不同的軟件工程師完成,在開發過程中因為開發人員存在不同的設計理念,故在實際操作中會采取不同的方案,對同一方案也會有不同的理解,這也會導致程序在完成之后會有數量不等的漏洞。對于以上因素則需要軟件開發人員在設計中進行充分的溝通,減少軟件的邏輯錯誤,提高其安全性。
結論:綜上所述,計算機軟件的安全問題已經成為軟件開發人員和用戶共同關注的問題,雖然在軟件開發中不可避免的會存在一定的漏洞,但通過開發人員和檢測人員的努力,應當將軟件的安全隱患降至最低。同時用戶也需要養成良好的軟件使用習慣,建立足夠的安全防范意識,以避免操作失誤所導致的軟件安全問題。
參考文獻
[1]左岑.計算機軟件的安全防御策略探析[J].計算機光盤軟件與應用,2013,20(12):151-152.
[2]陶穆.淺談電腦軟件安全問題與防御對策[J].計算機光盤軟件與應用,2014,05(01):295-297.
[3]荊衛國.計算機軟件的安全防御對策探討[J].電子技術與軟件工程,2013,11(04):41-42.
[4]賈杰.計算機軟件安全檢測技術研究[J].計算機光盤軟件與應用,2012,05(06):204-205.
(作者單位:淮北礦業(集團)有限責任公司)