◆張 邈
(天津醫(yī)藥集團(tuán)太平醫(yī)藥有限公司 天津 300040)
隨著信息時(shí)代的到來(lái),人們的生活發(fā)生了翻天覆地的變化,計(jì)算機(jī)軟件技術(shù)的應(yīng)用,更是極大改變了人們的生活方式和工作方式,但是計(jì)算機(jī)的普及給人們帶來(lái)便利的同時(shí)也給人們帶來(lái)了極大的風(fēng)險(xiǎn)。計(jì)算機(jī)受到入侵時(shí),會(huì)造成信息泄露和系統(tǒng)破壞,給人們帶來(lái)極大的財(cái)產(chǎn)、隱私威脅。其中,計(jì)算機(jī)漏洞是指計(jì)算機(jī)軟件、硬件、協(xié)議等的具體實(shí)現(xiàn)或系統(tǒng)上存在的缺陷,攻擊者可以利用這些缺陷在未被計(jì)算機(jī)授權(quán)的情況下入侵電腦。因此,我們需要使用和提高計(jì)算機(jī)軟件安全漏洞檢測(cè)技術(shù),時(shí)常地對(duì)計(jì)算機(jī)軟件安全漏洞進(jìn)行檢測(cè),從而提高計(jì)算機(jī)的防護(hù)能力。
計(jì)算機(jī)軟件的開(kāi)發(fā)與應(yīng)用過(guò)程漫長(zhǎng)而復(fù)雜,在這些軟件開(kāi)發(fā)的過(guò)程中,經(jīng)常會(huì)出現(xiàn)安全漏洞,這些計(jì)算機(jī)軟件安全漏洞給一些黑客提供了發(fā)揮空間,黑客為了得到經(jīng)濟(jì)利益制造一些能夠控制或破壞計(jì)算機(jī)軟件的程序,并把這些程序通過(guò)軟件安全漏洞移植到其他用戶(hù)的計(jì)算機(jī)中,最終導(dǎo)致系統(tǒng)的破壞或者是信息的損失與泄露。這些不同于原計(jì)算機(jī)軟件功能的程序,即計(jì)算機(jī)病毒。有的病毒一旦被植入,很快能夠控制計(jì)算機(jī),迅速造成破壞;有些病毒潛伏期非常長(zhǎng),植入計(jì)算機(jī)以后,通常不容易被發(fā)現(xiàn),經(jīng)過(guò)一定時(shí)間以后才會(huì)發(fā)揮它的破壞力,嚴(yán)重的病毒最終會(huì)導(dǎo)致系統(tǒng)崩潰無(wú)法使用。雖然很多計(jì)算機(jī)都安裝了360等殺毒軟件,但是這些殺毒軟件不能從根本上解決計(jì)算機(jī)病毒問(wèn)題,只有從計(jì)算機(jī)漏洞檢測(cè)方面入手才能進(jìn)行防護(hù)。
常見(jiàn)的計(jì)算機(jī)軟件安全漏洞有NET-SNMP,ZLIB和JBOSS應(yīng)用服務(wù)器,LIBTIFF開(kāi)源軟件庫(kù)以及GERONIMO2.0。NETSNMP安全漏洞主要存在于SNMP和NET協(xié)議文件當(dāng)中,最大的受威脅對(duì)象就是文件;ZLIB安全漏洞是一條軟件庫(kù)當(dāng)中的超長(zhǎng)代碼,該數(shù)據(jù)軟件庫(kù)是經(jīng)過(guò)壓縮處理了的;JBOSS應(yīng)用服務(wù)器安全漏洞一般存在于計(jì)算機(jī)目錄當(dāng)中;LIBTFF安全漏洞是圖像軟件的一種,該圖像軟件存在讀寫(xiě)標(biāo)簽;GERONIMO2.0是超強(qiáng)漏洞,病毒可以通過(guò)這個(gè)漏洞隨意的進(jìn)入非法破譯代碼中,并繞過(guò)計(jì)算機(jī)身份識(shí)別的環(huán)節(jié)進(jìn)而獲得直接訪問(wèn)用戶(hù)信息的資格。以上幾種計(jì)算機(jī)軟件安全漏洞是最為常見(jiàn)的,但是這幾種漏洞的防護(hù)技術(shù)卻沒(méi)受到人們足夠的重視,大都在計(jì)算機(jī)出現(xiàn)問(wèn)題以后才會(huì)引起足夠的重視,此時(shí)亡羊補(bǔ)牢,為時(shí)已晚,造成的損失已經(jīng)無(wú)法彌補(bǔ)。因此,計(jì)算機(jī)用戶(hù)平時(shí)就應(yīng)當(dāng)做好計(jì)算機(jī)軟件安全漏洞的檢測(cè)工作。
計(jì)算機(jī)軟件漏洞技術(shù)根據(jù)其性質(zhì)分為計(jì)算機(jī)軟件漏洞靜態(tài)檢測(cè)技術(shù)和計(jì)算機(jī)軟件漏洞動(dòng)態(tài)檢測(cè)技術(shù)。
(1)變異語(yǔ)安全漏洞檢測(cè)技術(shù)
變異語(yǔ)安全漏洞檢測(cè)技術(shù)是指利用 C語(yǔ)言安全程序編譯技術(shù)對(duì)軟件的二進(jìn)制代碼和源代碼進(jìn)行檢測(cè),進(jìn)而發(fā)現(xiàn)錯(cuò)誤內(nèi)容的技術(shù)。它的檢測(cè)原理主要是利用到指算術(shù)的計(jì)算公式,對(duì)計(jì)算機(jī)軟件的不安全因素實(shí)施轉(zhuǎn)換,然后限制軟件進(jìn)行的不安全操作,變異語(yǔ)安全漏洞檢測(cè)技術(shù)主要作用是保障計(jì)算機(jī)在使用過(guò)程中的安全性。
(2)類(lèi)型推斷安全漏洞檢測(cè)技術(shù)
類(lèi)型推斷漏洞檢測(cè)技術(shù)比其他技術(shù)具有更高的檢測(cè)效率,更好的定位優(yōu)勢(shì),因此這種技術(shù)為大多大型計(jì)算機(jī)使用者所青睞。但是這種技術(shù)也有一定的缺點(diǎn),由于類(lèi)型推斷漏洞檢測(cè)技術(shù)兼容性不是很強(qiáng),導(dǎo)致適用面不夠廣,只適用于大型軟件的漏洞檢測(cè),并不適用于小型計(jì)算機(jī)軟件的安全漏洞檢測(cè)。使用類(lèi)型推斷漏洞檢測(cè)技術(shù),需要對(duì)軟件的安全性進(jìn)行約束,可以采取特定用戶(hù)或者指針數(shù)據(jù)直接輸入數(shù)據(jù)的方法進(jìn)行。
(3)程序評(píng)注技術(shù)
程序評(píng)注技術(shù)建立于目標(biāo)程序源代碼基礎(chǔ)之上,采用的方法和原理是注釋程序源代碼,它的優(yōu)點(diǎn)有:
首先,從使用原理的角度看,該技術(shù)在實(shí)際操作過(guò)程中,不在源代碼中添加新程序,因此不會(huì)對(duì)原來(lái)程序的兼容性造成影響;其次,從產(chǎn)生和使用時(shí)間的角度來(lái)看,程序評(píng)注技術(shù)在我國(guó)的應(yīng)用時(shí)間并不是很長(zhǎng),因此是一種較新的計(jì)算機(jī)軟件安全漏洞過(guò)檢測(cè)技術(shù),技術(shù)含量較高,防護(hù)效果較好;第三,從程序評(píng)注技術(shù)組成成分的角度來(lái)看,該技術(shù)是一個(gè)綜合型技術(shù),包括網(wǎng)絡(luò)通信技術(shù)、分析技術(shù)等許多小技術(shù);從程序評(píng)注技術(shù)的功能來(lái)看,該技術(shù)能夠?qū)Ψ欠ㄈ肭值牟《具M(jìn)行實(shí)時(shí)監(jiān)控,從而避免系統(tǒng)遭到破壞。
(4)約束解算器技術(shù)
約束解算器技術(shù)指的是對(duì)目標(biāo)程序進(jìn)行解算和約束以實(shí)現(xiàn)計(jì)算機(jī)軟件漏洞檢測(cè)和防護(hù)的目的一門(mén)計(jì)算機(jī)軟件安全漏洞檢測(cè)技術(shù),其主要優(yōu)點(diǎn)是,在實(shí)際發(fā)揮作用的時(shí)候,約束解算器技術(shù)對(duì)目標(biāo)程序代碼的影響比較小。但是該技術(shù)也有自己的缺點(diǎn),那就是它對(duì)漏洞的定位不是很準(zhǔn)確,經(jīng)常失誤,導(dǎo)致計(jì)算機(jī)所有者必須做大量的工作才能完成漏洞檢測(cè),防護(hù)工作效率很低,時(shí)效性不高。
(5)元編譯技術(shù)
元編譯技術(shù)是日常計(jì)算機(jī)防護(hù)工作中比較常見(jiàn)和常用的計(jì)算機(jī)軟件安全漏洞檢測(cè)和防護(hù)技術(shù),屬于程序安全性辨識(shí)和檢測(cè)技術(shù),因此對(duì)計(jì)算機(jī)程序員的技術(shù)有著過(guò)硬的要求,要求其具備專(zhuān)業(yè)的元編譯技術(shù)操作技能和豐富且全面的程序代碼知識(shí)。
元編譯技術(shù)要求計(jì)算機(jī)程序員在確認(rèn)程序代碼的安全性以后,迅速建立合理的編譯擴(kuò)展,目的是為后面的計(jì)算機(jī)軟件建模執(zhí)行創(chuàng)造基礎(chǔ)條件,在建模工作做完以后,計(jì)算機(jī)軟件安全漏洞就會(huì)被檢測(cè)出來(lái)。元編譯技術(shù)的優(yōu)點(diǎn)是準(zhǔn)確度高、效率高,使用過(guò)程中不會(huì)對(duì)語(yǔ)言特征造成任何改變,因此元編譯技術(shù)的實(shí)用性還是比較高的。
(1)程序解釋技術(shù)
程序解釋技術(shù)的檢測(cè)對(duì)象一般為非原始代碼,在實(shí)際操作過(guò)程中要使用程序監(jiān)視器,對(duì)程序的應(yīng)用情況進(jìn)行實(shí)時(shí)監(jiān)控。它的優(yōu)點(diǎn)是安全性比較高,缺點(diǎn)是有些計(jì)算機(jī)不能兼容,經(jīng)常會(huì)對(duì)計(jì)算機(jī)系統(tǒng)的正常運(yùn)行造成或多或少的影響。
(2)沙箱技術(shù)
該技術(shù)的優(yōu)點(diǎn)是兼容性較強(qiáng),主要用于調(diào)用系統(tǒng)的防護(hù)。為了實(shí)現(xiàn)對(duì)計(jì)算機(jī)病毒的有效阻擋和防護(hù),沙箱技術(shù)會(huì)對(duì)計(jì)算機(jī)程序及信息的訪問(wèn)進(jìn)行一定的限制,在應(yīng)用程序中執(zhí)行資源訪問(wèn)設(shè)定,安全性非常高且不會(huì)對(duì)程序和系統(tǒng)造成任何影響。
(3)非執(zhí)行棧技術(shù)
目前,我國(guó)大多數(shù)計(jì)算機(jī)軟件安全漏洞檢測(cè)技術(shù)的主要缺點(diǎn)是對(duì)惡意代碼的防護(hù)不是很到位,而該技術(shù)就能有效解決這一問(wèn)題,大大降低了計(jì)算機(jī)的安全風(fēng)險(xiǎn),它能夠檢測(cè)并改變惡意代碼的變量,使它失去破壞功能。
(4)非執(zhí)行對(duì)與數(shù)據(jù)技術(shù)
計(jì)算機(jī)軟件的安全漏洞有可能出現(xiàn)在軟件程序的各個(gè)部位,但每一個(gè)病毒一般都只入侵一個(gè)部位,該技術(shù)針對(duì)的是數(shù)據(jù)段運(yùn)行中的安全漏洞,該技術(shù)能夠檢測(cè)出系統(tǒng)程序的惡意代碼并阻止惡意代碼運(yùn)行。非執(zhí)行對(duì)與數(shù)據(jù)技術(shù)也有他的缺點(diǎn),比如兼容性不高,不能對(duì)被惡意修改了的函數(shù)進(jìn)行檢測(cè)。
綜上所述,計(jì)算機(jī)軟件安全漏洞是影響計(jì)算機(jī)系統(tǒng)穩(wěn)定運(yùn)行的一大危害,輕則造成系統(tǒng)反應(yīng)不靈敏,信息泄露,重則導(dǎo)致計(jì)算機(jī)系統(tǒng)無(wú)法運(yùn)行,造成不可估量的損失。這就需要軟件開(kāi)發(fā)公司加強(qiáng)對(duì)軟件安全漏洞檢測(cè)技術(shù)的重視,不斷提高軟件的安全性,從而保障計(jì)算機(jī)的安全性。