文/李曦琛
計(jì)算機(jī)軟件中安全漏洞檢測(cè)技術(shù)的應(yīng)用
文/李曦琛
由于計(jì)算機(jī)軟件中存在著安全漏洞問題,這樣也就給信息系統(tǒng)產(chǎn)生出了安全隱患。因此,在實(shí)際中就要及時(shí)對(duì)計(jì)算機(jī)軟件進(jìn)行分析,運(yùn)用好安全漏洞檢測(cè)技術(shù),保證信息的安全。下面我們主要就其檢測(cè)技術(shù)以及實(shí)踐進(jìn)行簡(jiǎn)要的分析。
計(jì)算機(jī)軟件 安全 檢測(cè)
軟件的安全與否決定了計(jì)算機(jī)能否穩(wěn)定的運(yùn)行,假如軟件當(dāng)中存在一定的安全漏洞就會(huì)影響到計(jì)算機(jī)的安全。之所以會(huì)出現(xiàn)安全漏洞,通常情況下是由于軟件技術(shù)人員的失誤而導(dǎo)致的,要想確保計(jì)算機(jī)能夠安全的工作,進(jìn)行安全檢測(cè)的人員就必須要制定相應(yīng)的行之有效的防范措施。
1.1.1 靜態(tài)分析
所謂的靜態(tài)分析其實(shí)主要是掃描軟件系統(tǒng)內(nèi)部的源代碼,然后按照其掃描結(jié)果來進(jìn)行語法和關(guān)鍵句的查找。通常來講,我們?cè)陲@示中經(jīng)常用到的靜態(tài)分析檢測(cè)技術(shù)能夠分為以下幾種:詞法檢測(cè)、推斷檢測(cè)以及評(píng)注計(jì)算機(jī)軟件程序等三種。詞法檢測(cè)在執(zhí)行時(shí)要先進(jìn)行分析,首先可以通過檢查語法方面的內(nèi)容,將系統(tǒng)劃分為若干片段,然后參照數(shù)據(jù)庫來進(jìn)行比較分析,檢測(cè)漏洞是否存在。然而這樣做的不足之處在于對(duì)數(shù)量上有限制,但是這種檢測(cè)工作缺點(diǎn)是檢測(cè)數(shù)量有限經(jīng)常會(huì)出現(xiàn)漏檢或者是重檢的情況;所謂的推斷檢測(cè)其實(shí)就是對(duì)程序當(dāng)中的一些變量和函數(shù)進(jìn)行自動(dòng)分析,然后再根據(jù)分析結(jié)果并參照他們規(guī)范化的類型和方式做出相應(yīng)的分析,從而判斷其是否真的有安全漏洞的存在的一種措施。評(píng)注計(jì)算機(jī)軟件程序其實(shí)就是是指通過“tainted”來對(duì)計(jì)算機(jī)軟件的外部數(shù)據(jù)進(jìn)行標(biāo)記,隨后相關(guān)的技術(shù)人員對(duì)其做評(píng)注的過程中需要結(jié)合排查和分析的結(jié)果來進(jìn)行。
1.1.2 程序檢測(cè)
主要借用一些抽象軟件當(dāng)中的程序獲取一些形式化程序以及模型,再采用形式化的漏洞檢驗(yàn)方法來對(duì)其展開檢測(cè),最后使用正確檢測(cè)方法對(duì)電腦漏洞進(jìn)行整體檢測(cè)。要想順利的完成模型檢測(cè)離不開電腦系統(tǒng)內(nèi)部程序相關(guān)的有向圖以及狀態(tài)機(jī)。一般來講,檢測(cè)的方法可以分為兩種,即自動(dòng)模型轉(zhuǎn)換和符號(hào)化。自動(dòng)模型轉(zhuǎn)換需要將檢測(cè)程序進(jìn)一步轉(zhuǎn)變成等價(jià)的自動(dòng)機(jī),在將這兩個(gè)自動(dòng)機(jī)相互補(bǔ)充、替換,從而形成新的自動(dòng)機(jī),然后再將判定的系統(tǒng)轉(zhuǎn)變成能夠容納的語言形式進(jìn)行檢測(cè)。而所謂的符號(hào)化其實(shí)就是用比較通俗易懂的公式來描述抽象模型,而結(jié)果是否合乎標(biāo)準(zhǔn)通過公式一看便知。
許多黑客經(jīng)常使用“NULL”表現(xiàn)在尾部的字符串來對(duì)內(nèi)存進(jìn)行覆蓋,以此來實(shí)現(xiàn)攻擊目的。應(yīng)用代碼存在頁面之中映射技術(shù)可以使黑客在使用“NULL”尾部字符串對(duì)內(nèi)存進(jìn)行覆蓋,這使得跳轉(zhuǎn)到相對(duì)簡(jiǎn)單內(nèi)存區(qū)域的相關(guān)操作顯得十分困難。要想徹底解決必須在保證不改變?cè)创a的基礎(chǔ)上來進(jìn)行動(dòng)態(tài)檢測(cè),我們可以通過修改計(jì)算機(jī)運(yùn)行環(huán)境的方法來進(jìn)行安全漏洞的檢測(cè),但是這樣做的缺點(diǎn)在于會(huì)對(duì)計(jì)算機(jī)的穩(wěn)定工作造成一定的影響。盡管安全漏洞可以通過動(dòng)態(tài)檢測(cè)的手段檢測(cè)出來,然而在檢測(cè)的時(shí)候通常還會(huì)產(chǎn)生新的問題,如此將會(huì)對(duì)計(jì)算機(jī)的整體安全再一次造成損害,要想徹底有效的防止安全漏洞的產(chǎn)生,最直接的方法就是對(duì)黑客的惡意代碼進(jìn)行攔截。然而如此做的話,就需要對(duì)計(jì)算機(jī)的操作層進(jìn)行修改設(shè)置,假如在操作的時(shí)候產(chǎn)生了一些問題,就會(huì)對(duì)計(jì)算機(jī)的整體性能造成嚴(yán)重的損害,不但解決不了問題,還會(huì)導(dǎo)致安全漏洞更加頻繁的發(fā)生。在對(duì)軟件的運(yùn)行過程進(jìn)行檢測(cè)的時(shí)候,少不了會(huì)占據(jù)一定的存儲(chǔ)空間,而軟件分配的區(qū)域?yàn)槎?,在編程的初始階段,形成初始的數(shù)據(jù)段,堆以及數(shù)據(jù)不能夠執(zhí)行代碼,對(duì)于黑客的入侵起到了很好的防范作用。還有就是能夠利用設(shè)計(jì)相關(guān)的C++等程序來檢測(cè)安全漏洞,然而這樣做的不足之處就是會(huì)留有一定的安全隱患,在運(yùn)行C++程序的時(shí)候,會(huì)在一定程度上提高出現(xiàn)漏洞的機(jī)率,這樣的話要再想增強(qiáng)計(jì)算機(jī)的整體安全性,就必須要用到安全共享庫等相關(guān)技術(shù),來阻隔函數(shù)的不安全行為,在一定程度上預(yù)防安全漏洞的產(chǎn)生。
對(duì)于競(jìng)爭(zhēng)性的漏洞來講,可采取把相關(guān)編碼原子化的方式操作。原子化最為最小的編碼,往往不會(huì)有礙于程序的運(yùn)行。利用原子化來鎖定程序,間接的調(diào)用文件系統(tǒng)名稱,從而對(duì)所用文件的名稱進(jìn)行描述。
對(duì)隨機(jī)產(chǎn)生的安全問題進(jìn)行預(yù)防和檢查的過程中,務(wù)必要選擇性能好的隨機(jī)發(fā)生設(shè)備。要想更好的保證隨機(jī)數(shù)流的安全性,就必須對(duì)隨機(jī)發(fā)生設(shè)備自身設(shè)置密碼算法,如此當(dāng)軟件出現(xiàn)安全漏洞的時(shí)候,就能夠按照所掌握的算法的整體細(xì)節(jié)進(jìn)行完整數(shù)據(jù)流的獲取,在受到攻擊的時(shí)候確保計(jì)算機(jī)能夠正常工作。
要想很好的對(duì)緩沖區(qū)的漏洞進(jìn)行預(yù)防,就需要檢查軟件中危險(xiǎn)系數(shù)高的函數(shù)。對(duì)于一些不安全的軟件版本進(jìn)行及時(shí)的更新。例如,人們可以將原來 extern char strcat替換成 extern char strncat等。
Windows操作系統(tǒng)窗口的應(yīng)用能夠進(jìn)行數(shù)據(jù)的輸出,同時(shí)還可以降低計(jì)算機(jī)軟件漏洞對(duì)信息傳輸?shù)耐{。一般來講,格式化字符串在不定參數(shù)的個(gè)數(shù)函數(shù)中產(chǎn)生的機(jī)率很高,所以,在應(yīng)用該類函數(shù)的時(shí)候,不但要確保其均衡性還要保證其個(gè)數(shù)。
通過對(duì)計(jì)算機(jī)的運(yùn)用,我們發(fā)現(xiàn)安全漏洞的出現(xiàn)會(huì)對(duì)其穩(wěn)定運(yùn)行造成一定的威脅,要想很好的解決這一問題就必須要采用相應(yīng)的安全檢測(cè)技術(shù)來對(duì)其進(jìn)行預(yù)防和解決?,F(xiàn)階段,在計(jì)算機(jī)的操作過程中,依舊存在著一定的安全漏洞,因此我們必須要不斷的改進(jìn)檢測(cè)技術(shù),從而更好的防止和解決計(jì)算機(jī)軟件中存在的安全漏洞,在一定程度上確保計(jì)算機(jī)能夠安全穩(wěn)定的運(yùn)行,從而更好的服務(wù)于人民。
[1]李曉南.基于數(shù)據(jù)綜合分析的軟件安全漏洞靜態(tài)檢測(cè)平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2011.
[2]劉欣.Windows 2000操作系統(tǒng)的安全漏洞檢測(cè)方法及其安全對(duì)策的研究[D].中國(guó)電力科學(xué)研究院,2005.
[3]盧廣.網(wǎng)絡(luò)安全中入侵檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].大慶石油學(xué)院,2003.
作者單位Case Western Reserve University
李曦?。?994-),湖北 省武 漢市人。Macromolecular專業(yè)。