涂哲男
摘要:本文從原發(fā)性、差異性和長(zhǎng)期性三個(gè)方面分析了計(jì)算機(jī)軟件中的常見漏洞,并且從動(dòng)態(tài)和靜態(tài)兩個(gè)方面分析了計(jì)算機(jī)軟件中常見安全漏洞的檢測(cè)技術(shù)。最后從防范格式化漏洞、防范競(jìng)爭(zhēng)漏洞、防范隨機(jī)漏洞和防范緩沖區(qū)溢出漏洞四個(gè)方面分析了計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)的常見應(yīng)用。由于軟件安全一旦出現(xiàn)漏洞則會(huì)對(duì)計(jì)算機(jī)系統(tǒng)造成極大的安全影響,所以工作人員需要積極開發(fā)解決措施。
關(guān)鍵詞:計(jì)算機(jī)軟件;安全漏洞;漏洞檢測(cè)技術(shù)
1計(jì)算機(jī)軟件的安全漏洞
1.1計(jì)算機(jī)軟件中安全漏洞的原發(fā)性
在一般情況下,計(jì)算機(jī)軟件漏洞值得是程序在編寫過程中其自身存在的缺陷情況。這種缺陷往往是由于計(jì)算機(jī)軟件設(shè)計(jì)初期,工作人員操作不達(dá)標(biāo)準(zhǔn)所導(dǎo)致的。這些漏洞的出現(xiàn)會(huì)為電子黑客提供一定的攻擊條件,導(dǎo)致計(jì)算機(jī)用戶受到攻擊的風(fēng)險(xiǎn)提升,使計(jì)算機(jī)軟件本身暴露在風(fēng)險(xiǎn)下。一些計(jì)算機(jī)軟件在設(shè)計(jì)方面存在著問題,導(dǎo)致它會(huì)出現(xiàn)后天性的攻擊性行為。并且當(dāng)一些本身設(shè)計(jì)水平不達(dá)標(biāo)準(zhǔn)的程序員來完成計(jì)算機(jī)軟件的設(shè)計(jì)工作時(shí),會(huì)由于其考慮不周全和不同工作人員之間的設(shè)計(jì)水平的差異性而導(dǎo)致計(jì)算機(jī)軟件中存在安全漏洞的情況。這種計(jì)算機(jī)軟件在上市之處便存在著系統(tǒng)內(nèi)部的漏洞風(fēng)險(xiǎn)。這些計(jì)算機(jī)漏洞原因都是由于其本身存在的原發(fā)性問題導(dǎo)致的,在工作人員進(jìn)行漏洞檢測(cè)和漏洞修補(bǔ)的時(shí)候需要把握漏洞本身的特點(diǎn),再針對(duì)漏洞的具體情況展開修補(bǔ)工作。
1.2計(jì)算機(jī)軟件中安全漏洞的差異性
計(jì)算機(jī)軟件中的安全漏洞除了具有原發(fā)性的漏洞之外,也存在一些差異性漏洞。由于我國(guó)電子信息市場(chǎng)不斷發(fā)展,計(jì)算機(jī)軟件的種類越來越多。通常情況下計(jì)算機(jī)軟件中的漏洞情況會(huì)與其接觸到的工作環(huán)境有著較為緊密的聯(lián)系,所以在不同工作環(huán)境的影響下,軟件中的代碼會(huì)顯現(xiàn)出差異性的特征。使計(jì)算機(jī)軟件中的安全漏洞會(huì)隨著計(jì)算機(jī)工作環(huán)境發(fā)生變化而產(chǎn)生變化,進(jìn)一步加大了工作人員排查計(jì)算機(jī)安全漏洞的難度。并且由于計(jì)算機(jī)軟件安全漏洞的差異性較強(qiáng),即使是同一種軟件在不同的工作環(huán)境影響下也會(huì)使內(nèi)部代碼呈現(xiàn)一定的差異性來,工作人員在對(duì)其進(jìn)行排查的時(shí)候需要對(duì)具體問題進(jìn)行具體分析,采取合適的檢查方法和處理方法來解決計(jì)算機(jī)軟件中的安全漏洞問題。
1.3計(jì)算機(jī)軟件中安全漏洞的長(zhǎng)期性
隨著時(shí)間的推移,計(jì)算機(jī)軟件會(huì)一次次地經(jīng)歷升級(jí)的過程。由于計(jì)算機(jī)軟件的漏洞具有原發(fā)性和差異性的特點(diǎn),所以在計(jì)算機(jī)軟件的運(yùn)行過程中,一些本身存在的漏洞會(huì)被逐漸修復(fù),同時(shí)一些新的漏洞會(huì)隨著代碼的不斷升級(jí)而逐漸出現(xiàn)。實(shí)際上,在計(jì)算機(jī)軟件的整個(gè)更新?lián)Q代的過程中會(huì)不斷產(chǎn)生一些邏輯性的錯(cuò)誤,導(dǎo)致計(jì)算機(jī)軟件中一直存在著一定的漏洞問題,以上原因就導(dǎo)致著計(jì)算機(jī)軟件中的安全漏洞具有其長(zhǎng)期性,并且在計(jì)算機(jī)軟件漏洞的整個(gè)存在期間,會(huì)對(duì)軟件本身的安全情況一直產(chǎn)生威脅。并且隨著計(jì)算機(jī)本身在運(yùn)行的過程中也會(huì)由于本身計(jì)算失誤而產(chǎn)生漏洞的問題。并且隨著計(jì)算機(jī)軟件的不斷更新?lián)Q代,其內(nèi)部硬件也可能會(huì)出現(xiàn)和軟件不匹配的情況,進(jìn)一步造成了系統(tǒng)漏洞。
2研究計(jì)算機(jī)軟件安全漏洞檢測(cè)技術(shù)
2.1動(dòng)態(tài)檢測(cè)技術(shù)
和計(jì)算機(jī)的靜態(tài)檢測(cè)技術(shù)相比,動(dòng)態(tài)檢測(cè)有著操作較為方便簡(jiǎn)潔的優(yōu)點(diǎn),但是動(dòng)態(tài)檢測(cè)技術(shù)也有著無法全面發(fā)現(xiàn)計(jì)算機(jī)內(nèi)部存在的所有漏洞的缺點(diǎn)。希望工作人員在進(jìn)行漏洞檢測(cè)時(shí),針對(duì)計(jì)算機(jī)的具體情況來具體選擇。
2.1.1非執(zhí)行棧技術(shù)
對(duì)近年來的常見計(jì)算機(jī)漏洞情況進(jìn)行分析,可以看出基于棧對(duì)計(jì)算機(jī)軟件進(jìn)行攻擊的事件不斷發(fā)生。所以為了能夠防止黑客攻擊,往往會(huì)采用阻礙棧的正常工作的方式。但是由于這種做法會(huì)需要修改計(jì)算機(jī)的操作層系統(tǒng),使計(jì)算機(jī)在修改過程中暴露于風(fēng)險(xiǎn)之下,所以這種方法在實(shí)際使用時(shí)仍然具有較高的風(fēng)險(xiǎn)性,并且對(duì)于相關(guān)工作人員的專業(yè)技術(shù)要求較為嚴(yán)格[1]。一些計(jì)算機(jī)程序中既有張溢出漏洞問題又有堆溢出漏洞問題,則不太推薦使用本操作技術(shù)。
2.1.2非執(zhí)行堆與數(shù)據(jù)技術(shù)
堆是計(jì)算機(jī)中的特殊數(shù)據(jù)結(jié)構(gòu),在計(jì)算機(jī)執(zhí)行程序的時(shí)候,如果堆不能執(zhí)行數(shù)據(jù)代碼,那么則會(huì)阻止惡意代碼的執(zhí)行,從而實(shí)現(xiàn)對(duì)計(jì)算機(jī)系統(tǒng)的保護(hù)。所以將非執(zhí)行對(duì)數(shù)據(jù)技術(shù)和非執(zhí)行棧技術(shù)進(jìn)行結(jié)合便可以較為有效地阻止計(jì)算機(jī)程序內(nèi)的惡意代碼執(zhí)行,從而起到維護(hù)計(jì)算機(jī)數(shù)據(jù)安全的作用。但是論操作量而言,非執(zhí)行堆技術(shù)的操作量要大于前文中的非執(zhí)行棧技術(shù)。近年來本技術(shù)正得到越來越廣的推廣。
2.1.3內(nèi)存映射技術(shù)
內(nèi)存映射技術(shù)是指將進(jìn)行映射時(shí)的代碼映射到隨機(jī)的地址上,以此來組織黑客進(jìn)行地址跳轉(zhuǎn)的一種計(jì)算機(jī)漏洞檢測(cè)技術(shù)。但是本技術(shù)具有較強(qiáng)的實(shí)踐性,無法在所有代碼上都得到應(yīng)用,而且對(duì)新注入的代碼效果不好。
2.1.4安全共享庫技術(shù)
就前文中所述,很多計(jì)算機(jī)軟件在編寫過程中天然存在安全漏洞,所以針對(duì)計(jì)算機(jī)語言寫出的程序,理論上可以通過共享安全庫的方式來防范和檢測(cè)系統(tǒng)函數(shù)漏洞,但是該技術(shù)只能夠防范系統(tǒng)安全中的天然漏洞,對(duì)系統(tǒng)本地化運(yùn)行中的本地化漏洞防范效果較弱。目前,該技術(shù)得到了一定范圍的推廣和應(yīng)用,主要為Windows系統(tǒng)以及UNIX操作系統(tǒng)中。
2.1.5沙箱技術(shù)
本技術(shù)是一種以限制訪問的方式來組織黑客入侵[2]。和傳統(tǒng)意義上的計(jì)算機(jī)防護(hù)軟件有所區(qū)別,本技術(shù)只能夠防護(hù)外來黑客的攻擊,一些黑客在對(duì)本地變量進(jìn)行攻擊時(shí),則無法取得理想效果。并且如果計(jì)算機(jī)系統(tǒng)中配備了較為嚴(yán)格的安全防護(hù)策略,還會(huì)影響到沙箱技術(shù)的正確運(yùn)行,使漏洞檢測(cè)的工作受到影響。
2.2靜態(tài)檢測(cè)技術(shù)
若想利用靜態(tài)檢測(cè)技術(shù)對(duì)計(jì)算機(jī)軟件的運(yùn)行情況進(jìn)行檢測(cè),就需要先分析計(jì)算機(jī)內(nèi)部的所有代碼,并且較為完善地了解計(jì)算機(jī)內(nèi)部存在的各種安全漏洞。和計(jì)算機(jī)動(dòng)態(tài)檢測(cè)技術(shù)有所區(qū)別的是,這種靜態(tài)檢測(cè)技術(shù)更能夠利用于檢測(cè)深度漏洞。在靜態(tài)檢測(cè)技術(shù)發(fā)現(xiàn)計(jì)算機(jī)系統(tǒng)中存在的漏洞之后會(huì)對(duì)其進(jìn)行修復(fù)各種,以此來確保計(jì)算機(jī)系統(tǒng)能夠正常運(yùn)行。
2.2.1模型檢測(cè)技術(shù)
這種技術(shù)從上世紀(jì)80年代被提出之后一直取得了較為廣泛的應(yīng)用。在實(shí)際的操作中,其中國(guó)電信是構(gòu)建檢測(cè)模型,利用檢測(cè)模型來對(duì)計(jì)算機(jī)內(nèi)部軟件運(yùn)行情況進(jìn)行檢測(cè),發(fā)現(xiàn)漏洞之后會(huì)對(duì)其進(jìn)行及時(shí)處理,以此來確保計(jì)算機(jī)系統(tǒng)運(yùn)行安全。本技術(shù)有著悠久的歷史,并且精確性較高,在目前仍然被大量使用。但是由于本技術(shù)在建模期對(duì)工作人員的技術(shù)水平要求較為嚴(yán)格,所以對(duì)技術(shù)水平不過關(guān)的操作人員來說仍然有一定的難度。本技術(shù)的操作方法主要是利用顯性搜索的方式和不動(dòng)點(diǎn)隱藏計(jì)算的方式來對(duì)計(jì)算機(jī)軟件并發(fā)系統(tǒng)進(jìn)行建模和分析。
2.2.2規(guī)則檢測(cè)技術(shù)
規(guī)則檢測(cè)技術(shù)在應(yīng)用時(shí)會(huì)主要對(duì)程序自身來進(jìn)行檢測(cè)。本檢測(cè)技術(shù)主要針對(duì)與計(jì)算機(jī)軟件中的原發(fā)性漏洞,即工作人員由于自身操作失誤而導(dǎo)致出現(xiàn)的系統(tǒng)漏洞問題并進(jìn)行解決,能夠較好地處理好工作人員編程過程中所造成的計(jì)算機(jī)軟件漏洞情況。本技術(shù)在實(shí)際應(yīng)用時(shí)會(huì)通過檢驗(yàn)程度將計(jì)算機(jī)程序用固定語法進(jìn)行描述,并且在描述過后會(huì)使用規(guī)則處理器來對(duì)其進(jìn)行分析。在分析工作結(jié)束之后,會(huì)把分析結(jié)果和原本的計(jì)算機(jī)程序來進(jìn)行對(duì)比,以此來取得發(fā)現(xiàn)安全漏洞并且進(jìn)行處理的效果。
2.2.3類型推導(dǎo)技術(shù)
這種技術(shù)在應(yīng)用時(shí)會(huì)對(duì)軟件程序內(nèi)的一些變量數(shù)據(jù)來進(jìn)行分析,并且將分析結(jié)果和標(biāo)準(zhǔn)結(jié)果來進(jìn)行比對(duì),以此來判斷計(jì)算機(jī)軟件中是否存在系統(tǒng)漏洞[3]。首先,該檢測(cè)方法會(huì)利用函數(shù)的變量來判斷計(jì)算機(jī)程序中的相關(guān)規(guī)則,然后再根據(jù)變量情況來計(jì)算計(jì)算機(jī)軟件在運(yùn)行時(shí)是否存在安全漏洞的情況。由于本技術(shù)具有便捷性高和易于實(shí)現(xiàn)的優(yōu)點(diǎn),往往會(huì)被應(yīng)用于較為大型和復(fù)雜的程序安全檢測(cè)中。
2.2.4定理檢測(cè)技術(shù)
定理檢測(cè)技術(shù)的原理和抽樣調(diào)查技術(shù)類似,通過抽選計(jì)算機(jī)程序中的單獨(dú)一部分來對(duì)其進(jìn)行分析,一旦發(fā)現(xiàn)被抽選部分出現(xiàn)漏洞情況,則需要對(duì)整個(gè)計(jì)算機(jī)程序進(jìn)行安全檢查,從而從源頭上處理計(jì)算機(jī)漏洞。
2.2.5詞法分析技術(shù)
本技術(shù)在應(yīng)用時(shí)會(huì)對(duì)程序語法進(jìn)行檢測(cè),并且在完成檢測(cè)之后會(huì)對(duì)檢測(cè)內(nèi)容進(jìn)行分析,一旦在分析過程中發(fā)現(xiàn)有語法錯(cuò)誤的情況則能夠判斷出程序中存在安全漏洞。由于本方法的操作難度較大,所以應(yīng)用面積相對(duì)較窄。
3計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)的應(yīng)用
3.1防范格式化漏洞
隨著經(jīng)濟(jì)全球一體化的速度加快,計(jì)算機(jī)技術(shù)逐漸被應(yīng)用于各個(gè)領(lǐng)域中,為了能夠提升計(jì)算機(jī)技術(shù)的整體安全性,需要從系統(tǒng)內(nèi)部和系統(tǒng)外部做好方漏洞工作,以此來確保計(jì)算機(jī)軟件能夠照常運(yùn)行。格式化范圍漏洞是一種計(jì)算機(jī)軟件系統(tǒng)在運(yùn)行過程中的常見漏洞。一旦發(fā)生這種漏洞,則會(huì)導(dǎo)致計(jì)算機(jī)文件丟失的情況,并且無法二次找回。對(duì)計(jì)算機(jī)使用者造成了一定的影響。所以為了防范本計(jì)算機(jī)漏洞,需要在計(jì)算機(jī)軟件的源代碼中使用格式常量,以這種方式來盡可能地減少計(jì)算機(jī)格式化漏洞問題。由于本漏洞具有常見性,并且往往會(huì)以字符的形式存在于計(jì)算機(jī)內(nèi)部,所以為了能夠最大程度上地降低格式化漏洞對(duì)計(jì)算機(jī)程序的自動(dòng)運(yùn)行造成的影響,需要計(jì)算機(jī)的使用者定期采取前文中所描述的動(dòng)態(tài)或者靜態(tài)檢測(cè)方法來檢測(cè)計(jì)算機(jī)內(nèi)部程序。
3.2防范競(jìng)爭(zhēng)漏洞
由于計(jì)算機(jī)軟件多種多樣,一些功能有著相似之處或者不同之處的軟件在使用中會(huì)產(chǎn)生一些競(jìng)爭(zhēng)的情況,甚至?xí)?dǎo)致軟件中出現(xiàn)競(jìng)爭(zhēng)機(jī)制[4]。競(jìng)爭(zhēng)機(jī)制的產(chǎn)生會(huì)從一定程度上對(duì)計(jì)算機(jī)系統(tǒng)造成破壞,從而導(dǎo)致系統(tǒng)內(nèi)部出現(xiàn)安全漏洞問題。其中,最為經(jīng)典的例子就是360和qq之間的競(jìng)爭(zhēng)問題,該競(jìng)爭(zhēng)問題引發(fā)了一系列的計(jì)算機(jī)軟件安全漏洞問題,對(duì)計(jì)算機(jī)使用者的日常使用造成了一系列的問題。在針對(duì)競(jìng)爭(zhēng)漏洞進(jìn)行防范的時(shí)候,工作人員往往會(huì)采用原子化處理方法來對(duì)其進(jìn)行處理和檢測(cè)。由于原子化處理方法在實(shí)際運(yùn)行的過程中能夠突出部分代碼特征,并且對(duì)出現(xiàn)故障的代碼進(jìn)行鎖定,進(jìn)一步對(duì)其進(jìn)行檢測(cè)。并且在發(fā)現(xiàn)存在的漏洞問題之后可以完成其修復(fù)故障,保障代碼后續(xù)運(yùn)行安全。由于原子化的檢測(cè)方法在運(yùn)行的過程中受其他條件影響較小,并且整體的運(yùn)行效率較高,能夠真實(shí)地反應(yīng)出電子系統(tǒng)內(nèi)部真實(shí)的狀況。
3.3防范隨機(jī)漏洞
計(jì)算機(jī)的隨機(jī)漏洞主要發(fā)生原因是計(jì)算機(jī)本身產(chǎn)生了故障,并且計(jì)算機(jī)故障已經(jīng)影響到了軟件的正常運(yùn)行。所以當(dāng)計(jì)算機(jī)系統(tǒng)發(fā)生隨機(jī)范圍漏洞的時(shí)候需要由故障人員對(duì)計(jì)算機(jī)中發(fā)生故障的位置進(jìn)行排除,并且在排除故障之后需要采取一定措施來預(yù)防和檢測(cè)隨機(jī)安全漏洞。目前,研究人員已經(jīng)針對(duì)計(jì)算機(jī)的隨機(jī)漏洞情況研發(fā)處理專門的處理設(shè)備,這種設(shè)備能夠在計(jì)算機(jī)運(yùn)行中掌握其軟件系統(tǒng)的隨機(jī)流向,從而能夠在計(jì)算機(jī)出現(xiàn)隨機(jī)漏洞的情況下對(duì)出現(xiàn)漏洞的區(qū)域進(jìn)行精準(zhǔn)定位,在進(jìn)行處理。當(dāng)計(jì)算機(jī)受黑客入侵或者惡意攻擊的時(shí)候,該設(shè)施還能夠起到干擾信號(hào)發(fā)出源的作用,從而對(duì)計(jì)算機(jī)系統(tǒng)起到保護(hù)的作用,使計(jì)算機(jī)系統(tǒng)能夠不受侵犯,保障了計(jì)算機(jī)系統(tǒng)安全性。
3.4防范緩沖區(qū)溢出漏洞
當(dāng)計(jì)算機(jī)出現(xiàn)緩沖區(qū)漏洞情況,那么就說明計(jì)算機(jī)中的漏洞檢測(cè)軟件運(yùn)行出現(xiàn)故障,無法繼續(xù)保障計(jì)算機(jī)正常運(yùn)行。所以當(dāng)計(jì)算機(jī)的緩沖區(qū)溢出漏洞出現(xiàn)的時(shí)候工作人員首先需要處理計(jì)算機(jī)中安裝的漏洞檢測(cè)軟件。常見的方法是對(duì)其進(jìn)行升級(jí)處理,或者更換其他能夠正常使用的計(jì)算機(jī)漏洞檢測(cè)軟件。在進(jìn)行軟件下載的時(shí)候工作人員需要從該軟件的官方網(wǎng)站來進(jìn)行下載,以免由于下載到盜版軟件而導(dǎo)致該軟件無法發(fā)揮出處理計(jì)算機(jī)內(nèi)部的安全漏洞,甚至由于盜版軟件自身所攜帶的各種病毒而導(dǎo)致計(jì)算機(jī)內(nèi)部出現(xiàn)更多的安全隱患,對(duì)計(jì)算機(jī)使用者的信息安全和財(cái)產(chǎn)安全造成進(jìn)一步的影響。
結(jié)論:計(jì)算機(jī)軟件的安全漏洞會(huì)為計(jì)算機(jī)使用者的數(shù)據(jù)安全和財(cái)產(chǎn)安全造成極大的影響,為了能夠進(jìn)一步防護(hù)計(jì)算機(jī)軟件安全,需要利用多種科學(xué)技術(shù)在計(jì)算機(jī)的使用過程中對(duì)其進(jìn)行維護(hù)和檢測(cè),嚴(yán)格做好安全漏洞檢測(cè)工作,從而保障計(jì)算機(jī)設(shè)施系統(tǒng)應(yīng)用安全,防止計(jì)算機(jī)軟件出現(xiàn)安全漏洞,對(duì)企業(yè)經(jīng)營(yíng)造成影響,對(duì)個(gè)人的信息安全和財(cái)產(chǎn)安全造成威脅。
參考文獻(xiàn):
[1]李巖.計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)的應(yīng)用問題探討[J].電子元器件與信息技術(shù),2021,5(05):235-236
[2]陳婧.計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)研究[J].電子技術(shù)與軟件工程,2020(13):250-252
[3]楊永國(guó).安全漏洞檢測(cè)技術(shù)在實(shí)時(shí)測(cè)控軟件中的應(yīng)用探討[J].數(shù)字技術(shù)與應(yīng)用,2018,36(11):182+184
[4]李煒.計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)的應(yīng)用[J].電子技術(shù)與軟件工程,2018(07):209