◆劉曉英 王凱弘
操作系統(tǒng)、網(wǎng)絡(luò)體系與服務(wù)器技術(shù)
計(jì)算機(jī)安全管理中安全漏洞檢測技術(shù)的應(yīng)用探究
◆劉曉英 王凱弘
(武漢第二船舶設(shè)計(jì)研究所 湖北 266102)
由于網(wǎng)絡(luò)環(huán)境日漸復(fù)雜,計(jì)算機(jī)安全管理中存在著很多的安全漏洞,黑客入侵計(jì)算機(jī)的現(xiàn)象時(shí)有發(fā)生,嚴(yán)重威脅著計(jì)算機(jī)的安全?;诖?,相關(guān)人員就需要不斷加強(qiáng)計(jì)算機(jī)的安全管理,通過應(yīng)用安全漏洞檢測技術(shù),可以快速準(zhǔn)確發(fā)現(xiàn)計(jì)算機(jī)存在的安全漏洞,進(jìn)而采取積極的措施保障計(jì)算機(jī)的安全運(yùn)行。
計(jì)算機(jī)軟件;安全管理;漏洞檢測技術(shù);應(yīng)用研究
目前,計(jì)算機(jī)在不斷發(fā)展中,其優(yōu)勢也逐漸凸顯,在各行各業(yè)中計(jì)算機(jī)已經(jīng)被廣泛應(yīng)用并且發(fā)揮著重要的作用。但是,在實(shí)際的應(yīng)用中也發(fā)現(xiàn)計(jì)算機(jī)的安全遭受著嚴(yán)重的威脅,最主要的因素還是計(jì)算機(jī)自身軟件存在安全漏洞,這樣就很容易遭受黑客和不法分子的攻擊,同時(shí),隨著網(wǎng)絡(luò)化環(huán)境的日漸復(fù)雜,計(jì)算機(jī)安全漏洞問題也愈發(fā)明顯,嚴(yán)重影響著用戶對(duì)計(jì)算機(jī)使用過程中的安全管理。
計(jì)算機(jī)被黑客攻擊的事件屢見不鮮,并且對(duì)社會(huì)公共安全也造成了嚴(yán)重的影響。因此,增強(qiáng)對(duì)計(jì)算機(jī)安全漏洞的研究是新時(shí)期下非常必要的工作,通過相關(guān)技術(shù)對(duì)計(jì)算機(jī)軟件存在的安全漏洞進(jìn)行有效檢測,提高計(jì)算機(jī)運(yùn)作時(shí)的安全性能,進(jìn)而有效保證計(jì)算機(jī)在我國各個(gè)領(lǐng)域的正常運(yùn)行。眾所周知,計(jì)算機(jī)安全漏洞產(chǎn)生的來源都是多方面的,對(duì)當(dāng)前計(jì)算機(jī)安全漏洞檢測技術(shù)的研究的熱度只增不減,因此,相關(guān)技術(shù)人員就需要加大研發(fā)力度,進(jìn)而有效保證計(jì)算機(jī)系統(tǒng)的安全運(yùn)行。
在計(jì)算機(jī)的安全管理過程中,最主要的制約因素就是計(jì)算機(jī)軟件的安全漏洞問題,很多時(shí)候計(jì)算機(jī)都存在安全漏洞,這也為黑客入侵提供了條件。很多時(shí)候計(jì)算機(jī)系統(tǒng)在開發(fā)的過程中由于相關(guān)技術(shù)人員的失誤操作進(jìn)而使其存在一定的缺陷,一旦有漏洞存在,將嚴(yán)重威脅到計(jì)算機(jī)用戶使用安全。一般來說,計(jì)算機(jī)漏洞主要的存在形式有兩種:一種是功能性的漏洞。這種漏洞會(huì)直接影響計(jì)算機(jī)的正常操作和運(yùn)行。另一種則是安全漏洞。這種漏洞一般來說不會(huì)影響到計(jì)算機(jī)的正常使用,只有當(dāng)被黑客入侵,計(jì)算機(jī)系統(tǒng)出現(xiàn)很多惡意執(zhí)行的代碼時(shí),這樣就會(huì)促使計(jì)算機(jī)運(yùn)行過程出現(xiàn)信息混亂,影響用戶的正常使用。
圖1 黑客入侵計(jì)算機(jī)示意圖
計(jì)算機(jī)的漏洞實(shí)質(zhì)可以理解為計(jì)算機(jī)存在弱項(xiàng),且會(huì)受到很多因素的影響,特別是在計(jì)算機(jī)開發(fā)過程中相關(guān)技術(shù)人員操作失誤,操作不全面等造成。計(jì)算機(jī)軟件漏洞的特性有四點(diǎn):一是計(jì)算機(jī)軟件設(shè)計(jì)的工作人員在編程的過程中存在一些邏輯性的錯(cuò)誤,主要原因在于技術(shù)人員不細(xì)致、在對(duì)相關(guān)數(shù)據(jù)進(jìn)行處理時(shí)出現(xiàn)邏輯性的錯(cuò)誤,進(jìn)而導(dǎo)致整個(gè)計(jì)算機(jī)軟件都受到影響;二是計(jì)算機(jī)在對(duì)某些數(shù)據(jù)做相關(guān)的運(yùn)算處理時(shí),特別是對(duì)某些過大或者過小的模塊處理,很容易存在邏輯性的錯(cuò)誤,而對(duì)于中等規(guī)模的程序出現(xiàn)邏輯性錯(cuò)誤的概率相對(duì)要小得多;三是計(jì)算機(jī)軟件的漏洞隨著時(shí)間的推移會(huì)發(fā)生改變,并且程序員在對(duì)舊的漏洞進(jìn)行修復(fù)的過程中,在對(duì)漏洞修復(fù)的代碼中可能隱藏新的漏洞,可見,漏洞問題并不是一次性就能解決的,需要不斷對(duì)計(jì)算機(jī)軟件查找和維護(hù);第四,漏洞在計(jì)算機(jī)軟件中的表現(xiàn)形式可能有多種,在相同的計(jì)算機(jī)軟件中,如果相應(yīng)的設(shè)置和版本存在差異,那么其漏洞的表現(xiàn)形式也將存在差異。
所謂計(jì)算機(jī)軟件安全漏洞的動(dòng)態(tài)檢測技術(shù)就是在對(duì)計(jì)算機(jī)進(jìn)行動(dòng)態(tài)檢測時(shí),要保持其源代碼不發(fā)生改變。雖然在進(jìn)行檢測時(shí),會(huì)根據(jù)實(shí)際情況對(duì)運(yùn)行環(huán)境進(jìn)行更改,進(jìn)而對(duì)安全漏洞進(jìn)行有效檢測,但在這個(gè)過程中也可能引發(fā)一些新的安全隱患,進(jìn)而影響整個(gè)計(jì)算機(jī)軟件系統(tǒng)的正常運(yùn)轉(zhuǎn)。
第一,為了有效預(yù)防棧被攻擊,可以暫時(shí)讓棧停止工作,這樣有利于對(duì)惡意的代碼進(jìn)行攔截。但在這個(gè)操作中,必須要對(duì)系統(tǒng)進(jìn)行加密設(shè)置或者修改,如果操作不當(dāng)很有可能威脅到整個(gè)計(jì)算機(jī)系統(tǒng)的安全,特別是當(dāng)棧漏洞與溢出漏洞同時(shí)出現(xiàn)時(shí),計(jì)算機(jī)系統(tǒng)將更容易遭受到傷害。
第二,堆主要指的是計(jì)算機(jī)程序中相應(yīng)內(nèi)存所分配到的區(qū)域,這個(gè)區(qū)域在計(jì)算機(jī)編程的起始段就已經(jīng)被初始化,黑客入侵就是讓代碼不被堆和數(shù)據(jù)進(jìn)行執(zhí)行。一般來說,都是將這種技術(shù)與非執(zhí)行棧進(jìn)行聯(lián)合,這樣才能有效起到阻止黑客入侵的效果。但這種操作會(huì)占用大量計(jì)算機(jī)的內(nèi)存,因此需要的成本將更高。
第三,一般來說,黑客入侵計(jì)算機(jī)時(shí),如果利用內(nèi)存映射技術(shù)將黑客想要攻擊的代碼映射到一個(gè)隨機(jī)的地址上,這樣黑客將需要花費(fèi)更多的時(shí)間去尋找這個(gè)地址,進(jìn)而給黑客的入侵帶來更多的阻礙。這種技術(shù)不需要對(duì)相關(guān)的代碼進(jìn)行修改,只需要重新下載一個(gè)鏈接就可以了。
第四,C++程序在對(duì)計(jì)算機(jī)軟件進(jìn)行設(shè)計(jì)的過程中可能會(huì)由于函數(shù)不全等問題,進(jìn)而導(dǎo)致很多漏洞的產(chǎn)生。而安全共享庫的作用就是利用動(dòng)態(tài)鏈接技術(shù)進(jìn)而對(duì)程序員在設(shè)計(jì)過程中所產(chǎn)生的不安全函數(shù)起到阻止調(diào)用的作用,同時(shí),還可以對(duì)這種不安全函數(shù)進(jìn)行檢測。
第五,安全漏洞動(dòng)態(tài)檢測技術(shù)中對(duì)黑客入侵阻止的方式主要為限制其訪問。其效果的好壞直接與其定義策略的全面與否有關(guān)系,如果定義策略合理且嚴(yán)格,那么將對(duì)黑客的入侵起到很好的預(yù)防作用,但如果過于嚴(yán)格又將會(huì)影響計(jì)算機(jī)的正常使用,因此,就需要對(duì)定義策略進(jìn)行合理的把控。另一方面,如果黑客是利用了本地的變量進(jìn)行了入侵,這時(shí)沙箱將失去它應(yīng)有的阻止作用。
第六,計(jì)算機(jī)安全漏洞動(dòng)態(tài)檢測技術(shù)主要是對(duì)運(yùn)行中的程序進(jìn)行檢查,并不會(huì)對(duì)系統(tǒng)內(nèi)的內(nèi)核以及代碼程序進(jìn)行改變,首先就需要設(shè)置一個(gè)新的啟動(dòng)代碼,然后將這個(gè)代碼內(nèi)嵌到程序中,最后利用這個(gè)代碼對(duì)程序的解釋框架進(jìn)行有效的調(diào)試,這樣就能檢測出存在的安全漏洞。
所謂計(jì)算機(jī)安全漏洞靜態(tài)檢測技術(shù)就是通過運(yùn)用程序分析技術(shù)進(jìn)而對(duì)二進(jìn)制代碼或者源代碼進(jìn)行全面分析的過程。其優(yōu)點(diǎn)就是不用借助其他運(yùn)行的軟件就能實(shí)現(xiàn)順利檢測的過程。與動(dòng)態(tài)檢測技術(shù)相比,計(jì)算機(jī)安全漏洞的靜態(tài)檢測技術(shù)不會(huì)產(chǎn)生其他的安全漏洞。
第一,運(yùn)用語法分析對(duì)計(jì)算機(jī)軟件的多個(gè)程序進(jìn)行檢查,將多個(gè)程序按照片段進(jìn)行劃分,然后將每一個(gè)可控的片段與可能存在安全漏洞的數(shù)據(jù)進(jìn)行比較并分析,但這種方式存在操作工序復(fù)雜且很容易產(chǎn)生漏報(bào)的現(xiàn)象,因此這種技術(shù)一般不被廣泛應(yīng)用。
第二,運(yùn)用規(guī)則檢查技術(shù)對(duì)計(jì)算機(jī)軟件中的所有程序本身進(jìn)行檢查,當(dāng)程序員在進(jìn)行編程時(shí),如果存在失誤的情況,也將導(dǎo)致安全漏洞的產(chǎn)生,規(guī)則檢測技術(shù)就是利用程序員特定的語法規(guī)則將其描述出來,再運(yùn)用規(guī)則處理器對(duì)其進(jìn)行處理,進(jìn)而被分析器接受,最后再與程序行為進(jìn)行對(duì)比和檢測。
第三,類型推導(dǎo)技術(shù)將程序中的變量和類型推導(dǎo)進(jìn)而對(duì)程序中的變量和函數(shù)進(jìn)行訪問,看其是否處于正常狀態(tài),這種方式適用于與分析和控制流沒有相關(guān)聯(lián)系的程序。
第四,模型檢測技術(shù)能夠利用隱式不動(dòng)點(diǎn)進(jìn)而對(duì)計(jì)算機(jī)內(nèi)的系統(tǒng)命題或者模型狀態(tài)性質(zhì)進(jìn)行驗(yàn)證,進(jìn)而通過建模對(duì)程序的構(gòu)造和特征進(jìn)行了解和驗(yàn)證。
第五,運(yùn)用定理證明技術(shù)對(duì)程序中較為抽象的公式進(jìn)行檢測并驗(yàn)證是否正確,這樣就能直接運(yùn)用公式的方式就能起到對(duì)其辨別方法確定的作用。
隨著科學(xué)技術(shù)的不斷發(fā)展與進(jìn)步,計(jì)算機(jī)也在我國的各個(gè)領(lǐng)域被普遍運(yùn)用,但是其在實(shí)際運(yùn)用的過程中也將受到安全漏洞的影響,因此就需要在計(jì)算機(jī)安全管理中運(yùn)用安全漏洞檢測技術(shù),進(jìn)而有效對(duì)安全漏洞的檢測并采取措施進(jìn)行應(yīng)對(duì)。
計(jì)算機(jī)在實(shí)際應(yīng)用的過程中,很多安全漏洞的形成原因主要在于其遭受到了很多的競爭條件,通過運(yùn)用安全漏洞檢測技術(shù)進(jìn)行檢測,運(yùn)用原子化對(duì)競爭編碼進(jìn)行處理,并在執(zhí)行的過程中,最小的編碼將不容易受到程序的感染,進(jìn)而運(yùn)用原子化造作對(duì)程序進(jìn)行鎖定,這樣就能有效對(duì)原文件進(jìn)行描述并防止各種操作對(duì)其進(jìn)行的調(diào)動(dòng)行為,有效保證計(jì)算機(jī)的安全性。
在運(yùn)用安全漏洞檢測技術(shù)對(duì)緩沖區(qū)溢出的漏洞進(jìn)行預(yù)防時(shí),主要采用的方式就是對(duì)軟件中存在的危險(xiǎn)性函數(shù)進(jìn)行檢測,如果發(fā)現(xiàn)所運(yùn)用的版本不合理時(shí),就需要用較為安全的版本所代替,進(jìn)而有效預(yù)防緩沖區(qū)中的漏洞溢出。例如,針對(duì)緩沖區(qū)存在的漏洞,可以借助char strcat代替char strncat手段對(duì)其進(jìn)行防治,進(jìn)而有效提升計(jì)算機(jī)運(yùn)行過程中的安全性能。
對(duì)于隨機(jī)漏洞的預(yù)防,主要是運(yùn)用隨機(jī)發(fā)生的設(shè)備來進(jìn)行預(yù)防,在這個(gè)過程中計(jì)算機(jī)將自帶有密碼算法,這樣就能使隨機(jī)數(shù)據(jù)的安全性得到有效的保障,即使計(jì)算機(jī)系統(tǒng)受到了黑客的攻擊,并且在攻擊的過程中還有效掌握了何種算法的細(xì)節(jié),但也不能對(duì)形成的數(shù)據(jù)流進(jìn)行有效獲取,這樣就能在整體上保障計(jì)算機(jī)的安全性。
在對(duì)計(jì)算機(jī)進(jìn)行攻擊時(shí),在數(shù)碼中運(yùn)用格式化的常量,不會(huì)給黑客提供任何可以形成和創(chuàng)建格式串的機(jī)會(huì),一般格式化字符串的漏洞都將出現(xiàn)在不定參數(shù)的函數(shù)中,如果在函數(shù)中,其個(gè)數(shù)及均衡性能夠得到保證,這樣有效降低格式化字符串漏洞對(duì)計(jì)算機(jī)安全運(yùn)行造成的影響。
綜上所述,計(jì)算機(jī)安全漏洞將會(huì)給計(jì)算機(jī)的安全正常運(yùn)行帶來極大的威脅,因此,就需要在計(jì)算機(jī)安全管理中,運(yùn)用安全漏洞檢測技術(shù)對(duì)可能存在的漏洞進(jìn)行檢測,并采取積極的措施進(jìn)行預(yù)防和控制,降低漏洞可能給計(jì)算機(jī)的正常運(yùn)行所帶來的安全威脅,在后期的工作中,相關(guān)技術(shù)人員還需加大對(duì)該技術(shù)的研發(fā)力度,充分發(fā)揮其作用,為保證計(jì)算機(jī)的良好應(yīng)用奠定扎實(shí)的基礎(chǔ)。
[1]吳塍勤.對(duì)計(jì)算機(jī)軟件安全問題的分析及其防御策略 [J].電腦編程技巧與維護(hù),2013:87-88+109.
[2]高妍. 計(jì)算機(jī)軟件安全漏洞檢測技術(shù)與應(yīng)用[J]. 計(jì)算機(jī)光盤軟件與應(yīng)用, 2014(04):172-173.
[3]李曦琛. 計(jì)算機(jī)軟件中安全漏洞檢測技術(shù)的應(yīng)用[J]. 電子技術(shù)與軟件工程,2017,000(017):216-216.
[4]謝海亮. 計(jì)算機(jī)軟件中安全漏洞檢測技術(shù)的應(yīng)用[J]. 信息與電腦(理論版),2018,No.402(08):113-114+117.
[5]王健鷹. 計(jì)算機(jī)軟件安全漏洞檢測技術(shù)與應(yīng)用[J]. 信息與電腦,2016,12(007):153-154.