李紅
摘 要
隨著科技的發(fā)展,信息技術(shù)應(yīng)用范圍越來越廣,計算機軟件更是層出不窮。然而,由于計算機軟件研發(fā)過程中的復(fù)雜因素,計算機系統(tǒng)中存在著許多安全漏洞,一旦被不法分子抓住漏洞惡意攻擊,計算機使用者將會面臨巨大的損失。因此,對計算機軟件中的安全漏洞進行檢測具有深刻的現(xiàn)實意義。
【關(guān)鍵詞】計算機軟件 漏洞檢測 系統(tǒng)安全
計算機信息系統(tǒng)在各行各業(yè)的大幅運用促進了社會生產(chǎn)力的提高,但同時也帶來了許多網(wǎng)絡(luò)安全問題。由于軟件開發(fā)人員的技術(shù)水平和其它一系列不定變量,安全漏洞的產(chǎn)生是不可避免的,許多不法分子正是利用這點引發(fā)了大量網(wǎng)絡(luò)安全事件。而對計算機軟件中安全漏洞的檢測方法進行研究,可以幫助我們減少甚至徹底杜絕這類事件的發(fā)生。
1 計算機軟件中安全漏洞的基本概述
1.1 安全漏洞的性質(zhì)
所謂計算機軟件安全漏洞又稱計算機脆弱性,是指軟件系統(tǒng)中存在的某些安全弱點。而黑客能夠通過這些弱點非法入侵,竊取計算機用戶的信息,給用戶帶來巨大的損失。故而,對安全漏洞的檢測與防范是十分重要的。
1.2 安全漏洞的表現(xiàn)形式
安全漏洞通常是由軟件編程人員的疏忽導致的錯誤操作引起的,它的表現(xiàn)形式分以下兩種:
1.2.1 功能性漏洞
這種漏洞是內(nèi)部漏洞,相當于系統(tǒng)bug,只會影響計算機系統(tǒng)的正常運行,而不會帶來外部的危險。
1.2.2 安全漏洞
顯而易見,安全漏洞就是黑客利用來惡意攻擊計算機系統(tǒng)的安全弱點,它會為計算機系統(tǒng)帶來風險,使系統(tǒng)無法得到有效的保護,造成計算機信息紊亂。
1.3 安全漏洞產(chǎn)生的原因
無論是哪一種安全漏洞,都必有其產(chǎn)生的原因,經(jīng)觀察研究,主要有以下四點:
(1)計算機軟件開發(fā)人員在編程時出現(xiàn)邏輯錯誤,引發(fā)系統(tǒng)漏洞;
(2)編程人員處理軟件數(shù)據(jù)及其計算模式時出現(xiàn)失誤,造成邏輯漏洞;
(3)網(wǎng)絡(luò)環(huán)境的復(fù)雜性(同樣的軟件系統(tǒng)在不同的硬件中會因為不合理的軟硬件配置造成系統(tǒng)漏洞,即使在相同的硬件中也會由于網(wǎng)絡(luò)環(huán)境設(shè)定不同從而導致安全隱患);
(4)新興理論的出現(xiàn)(隨著時間的推移,計算機軟件編程理論也在不斷更新?lián)Q代,如此一來,檢測安全漏洞的速度便會跟不上,造成解決問題不及時的情況)。
2 計算機軟件中安全漏洞的檢測方法
檢測計算機軟件中安全漏洞的方法多種多樣,大體上可以分為動態(tài)與靜態(tài)兩類。
2.1 動態(tài)檢測技術(shù)
動態(tài)檢測方法主要是修改程序運行的環(huán)境,快速直接,具有針對性,然而這種方法本身也會影響計算機軟件系統(tǒng)的正常運行,帶來新的安全隱患。
2.1.1 非執(zhí)行棧技術(shù)
一些操作系統(tǒng)的棧允許執(zhí)行與寫入,安全弱點明顯,因而許多黑客熱衷于從棧入手進行攻擊。為防止這種攻擊行為的發(fā)生,最有效的手段便是禁止棧執(zhí)行代碼,但這種技術(shù)是基于操作系統(tǒng)的修改,不夠全面,且易于引起兼容問題,影響計算機系統(tǒng)的操作性能。
2.1.2 非執(zhí)行堆和數(shù)據(jù)技術(shù)
基于棧和堆的攻擊事件發(fā)生較為頻繁,而由于堆和數(shù)據(jù)段的特性,許多人對非執(zhí)行堆和數(shù)據(jù)技術(shù)持懷疑態(tài)度,不敢輕易嘗試。事實上,這種技術(shù)可使黑客注入的惡意代碼喪失執(zhí)行的機會,雖然成本較高,但檢測防范效果明顯,對應(yīng)用程序的影響也很小,可行性較高。
2.1.3 內(nèi)存映射技術(shù)
內(nèi)存映射技術(shù)是唯一一種主動對黑客的攻擊進行限制和反擊的手段,它能夠隨機地將代碼頁映射到不同的內(nèi)存地址中,給黑客的入侵造成困擾。不過,這種技術(shù)對內(nèi)存要求較高,無法檢測和預(yù)防新代碼的注入,且其在運行時需要重新鏈接網(wǎng)絡(luò)。
2.1.4 安全共享庫技術(shù)
許多常用的函數(shù)軟件在設(shè)計之初便遺留了一些安全漏洞問題,安全共享庫技術(shù)正是從阻止調(diào)用不安全函數(shù)的目的出發(fā),利用動態(tài)鏈接技術(shù)與數(shù)據(jù)庫及客戶連接,排查不安全函數(shù),從而防范安全漏洞的產(chǎn)生,提高計算機系統(tǒng)安全。
2.1.5 沙箱技術(shù)
沙箱,顧名思義,是一個隔絕外部騷擾的安全空間,與防火墻有相似之處。它主要通過限制訪問來防止攻擊,其使用效果取決于對策略的定義,唯有恰到好處的定義才能有效地阻擋黑客的入侵,同時又不影響計算機系統(tǒng)的正常運行。
2.1.6 程序解釋技術(shù)
程序解釋技術(shù)是通過對程序運行過程的行為加以監(jiān)視來檢測安全漏洞的,它能夠針對不同形式的攻擊制定相應(yīng)的安全策略,科學調(diào)整計算機軟件程序框架,檢測范圍十分之廣,最實用的是,它對計算機應(yīng)用程序性能的消耗不大,是一項合理的、有效的、系統(tǒng)的技術(shù)。
2.2 靜態(tài)檢測技術(shù)
靜態(tài)檢測方法是指對系統(tǒng)代碼進行程序分析,能夠深入檢測安全漏洞,操作方便,具有較高的實用價值。
2.2.1 詞法分析技術(shù)
這是靜態(tài)分析方法中最早出現(xiàn)的技術(shù),它只檢測源碼中可能出現(xiàn)的危險,并不深入分析。這項技術(shù)操作簡單,但實施過程中的失誤率較高且花費成本大。
2.2.2 程序評注技術(shù)
程序評注借助評注信息尋找程序中可能出現(xiàn)的漏洞,由于沒有增加程序的語言特性,并不會影響源程序。
2.2.3 類型推導技術(shù)
類型推導技術(shù)的應(yīng)用較為流行,它是通過已知函數(shù)的計算分析能力檢測系統(tǒng)程序的運行結(jié)果是否符合正常規(guī)則。
2.2.4 規(guī)則檢測技術(shù)
規(guī)則檢測技術(shù)是指對軟件編程中出現(xiàn)的規(guī)則漏洞進行檢查,并將程序運行行為與編碼程序進行對比分析。
2.2.5 模型檢測技術(shù)
模型檢測技術(shù)是對計算機軟件系統(tǒng)的執(zhí)行機構(gòu)進行檢測的方式,通過計算機程序模型的運算模式來檢測計算機分析任務(wù)和處理命題的能力。這項技術(shù)耗時較長,建模困難,但對軟件安全性能的保障較高。
2.2.6 定理證明技術(shù)
定理證明技術(shù)要求嚴格,它是根據(jù)公式形式來判別程序抽象公式是否為真,從而對系統(tǒng)代碼進行分析比較。
2.2.7 變異語言技術(shù)
這種技術(shù)是通過修改合法的程序代碼來提高計算機軟件的安全性,它能夠有效消除程序弱點,但相對地也會引發(fā)兼容性問題。
3 總結(jié)
現(xiàn)代社會信息化不斷發(fā)展,可以預(yù)見的是,計算機技術(shù)在未來必然應(yīng)用得更為廣泛,信息安全也將得到更多的關(guān)注。而對計算機軟件中安全漏洞檢測方法的探索研究,能夠幫助人們從源頭上解決網(wǎng)絡(luò)安全事件。因此,我們應(yīng)當不斷加強對安全漏洞的檢測,靈活運用多種檢測技術(shù),阻止黑客的惡意入侵,從而促進計算機技術(shù)的發(fā)展,杜絕網(wǎng)絡(luò)安全事件的發(fā)生。
參考文獻
[1]陳文博.計算機軟件中安全漏洞檢測方法研究[J].電腦迷,2014(11):15-16.
[2]李雯琦.計算機軟件中安全漏洞檢測方法探討[J].硅谷,2015(03):85-86.
[3]郭宇,賈默然.計算機軟件中安全漏洞檢測方法研究[J].信息通信,2015(06):125-125.
作者單位
南陽醫(yī)學高等??茖W校 河南省南陽市 473000