- 相關(guān)推薦
計(jì)算機(jī)軟件安全漏洞檢測
計(jì)算機(jī)軟件安全漏洞檢測【1】
摘 要:對于計(jì)算機(jī)病毒可以使用殺毒軟件以及防火墻等技術(shù)進(jìn)行預(yù)防和控制,而如果計(jì)算機(jī)軟件存在漏洞,是不可能通過殺毒軟件等工具來解決的,因此必須加強(qiáng)對計(jì)算機(jī)軟件漏洞的檢測,本文分析了計(jì)算機(jī)軟件中常見的漏洞形式,并簡單地介紹了一些計(jì)算機(jī)軟件漏洞的檢測方法。
關(guān)鍵詞:計(jì)算機(jī)軟件;漏洞;檢測方法;安全
計(jì)算機(jī)軟件是整個(gè)計(jì)算機(jī)的基礎(chǔ),計(jì)算機(jī)軟件技術(shù)的發(fā)展使其已經(jīng)應(yīng)用于生活的各行各業(yè),計(jì)算機(jī)軟件關(guān)系著我們生活的方方面面,使其結(jié)構(gòu)以及源代碼等也越來越復(fù)雜,難免會(huì)存在一定的漏洞。
由于計(jì)算機(jī)軟件漏洞的特殊性,傳統(tǒng)的殺毒軟件以及防火墻等都無法起到任何作用,因此只有自身加強(qiáng)對計(jì)算機(jī)軟件漏洞的檢測才能真正解決這一威脅。
1 計(jì)算機(jī)軟件中常見的漏洞
人們不斷地加強(qiáng)對計(jì)算機(jī)的應(yīng)用,導(dǎo)致計(jì)算機(jī)中儲(chǔ)存著來自各個(gè)方面的商業(yè)機(jī)密以及個(gè)人隱私,黑客通過各種形式來獲得他人計(jì)算機(jī)的授權(quán),從而將計(jì)算機(jī)中的信息偷盜出來,給計(jì)算機(jī)用戶帶來麻煩。
以往在受到黑客的攻擊時(shí)只要裝上殺毒軟件和防火墻即可有效地防止黑客的入侵,但是黑客技術(shù)隨著計(jì)算機(jī)技術(shù)的升級也在不斷地進(jìn)行技術(shù)更新甚至黑客技術(shù)有時(shí)候已經(jīng)超越了現(xiàn)有的計(jì)算機(jī)安全防護(hù)技術(shù),防火墻等設(shè)置已經(jīng)如法阻擋大部分黑客的入侵腳步了。
計(jì)算機(jī)軟件漏洞是如今黑客入侵計(jì)算機(jī)常用的切入點(diǎn),因此必須加強(qiáng)計(jì)算機(jī)軟件漏洞的檢測,減少計(jì)算機(jī)中的軟件漏洞數(shù)量,增強(qiáng)計(jì)算機(jī)的安全性能。
常見的計(jì)算機(jī)軟件漏洞可以分為以下幾類:Geronim2.0漏洞,這一漏洞的存在會(huì)給黑客在系統(tǒng)進(jìn)行身份驗(yàn)證的環(huán)節(jié)留下后門,黑客通過計(jì)算機(jī)的遠(yuǎn)程控制即可在見算計(jì)系統(tǒng)中插入自己的軟件程序等,從而非法訪問他人計(jì)算機(jī);JBOSS應(yīng)用服務(wù)器的漏洞,這一漏洞主要指的是系統(tǒng)目錄遍歷的漏洞;LIBTIFF開源軟件庫中的漏洞,這是一種可以讀寫標(biāo)簽以及圖像文件格式的軟件中的軟件漏洞;Net-SNMP漏洞,Net與SNMP的協(xié)議中常常存在一定的軟件漏洞;ZLIB漏洞,軟件庫在進(jìn)行數(shù)據(jù)壓縮時(shí),對于長度大于1的代碼常常使用一些不完整的代碼來進(jìn)行解釋,這時(shí)就會(huì)導(dǎo)致ZLIB漏洞的出現(xiàn)。
2 軟件漏洞的動(dòng)態(tài)檢測技術(shù)
動(dòng)態(tài)檢測技術(shù)指的是不對目標(biāo)程序進(jìn)行任何的修改,只針對程序的運(yùn)行過程進(jìn)行檢測的軟件漏洞檢測技術(shù)。
常見的動(dòng)態(tài)檢測技術(shù)有以下幾種。
2.1 內(nèi)存映射技術(shù)。
使用內(nèi)存映射技術(shù)進(jìn)行軟件漏洞的檢測只適用于使用固定IP地址的應(yīng)用程序,這一技術(shù)是通過對操作系統(tǒng)的內(nèi)核進(jìn)行修改,將代碼頁進(jìn)行映射,使其映射到大量的隨機(jī)地址中,讓黑客無法利用NULL字符串進(jìn)入內(nèi)存區(qū),大大地增加了黑客入侵的工作量。
雖然這一技術(shù)可以有效地防止利用內(nèi)存地址的攻擊,但是無法對新代碼的攻擊進(jìn)行有效的檢測。
2.2執(zhí)行棧技術(shù)。
黑客的攻擊中常常在棧中添加一段代碼,使得棧的編寫與執(zhí)行能力遭到破壞,從而改變棧中的變量,并使自身惡意代碼在棧中運(yùn)行。
面對這種攻擊方式,可以禁止棧對惡意代碼的執(zhí)行能力,執(zhí)行棧技術(shù)大多應(yīng)用于對黑客攻擊的預(yù)防方面。
2.3 沙箱技術(shù)。
沙箱技術(shù)是對一些訪問資源的連接進(jìn)行限制,從而達(dá)到對黑客攻擊的預(yù)防。
這種技術(shù)需要在應(yīng)用程序中置入一個(gè)針對資源訪問的代碼,并且操作系統(tǒng)以及原程序不需要因?yàn)檫@段代碼而進(jìn)行任何的改變。
2.4 非執(zhí)行堆與數(shù)據(jù)技術(shù)。
計(jì)算機(jī)軟件的運(yùn)行過程常常會(huì)因?yàn)槟骋粩?shù)據(jù)段或非執(zhí)行堆而遭到破壞,而非執(zhí)行堆與數(shù)據(jù)繼續(xù)正是針對這一情況提出的,這一技術(shù)可以有效地禁止這類數(shù)據(jù)段的運(yùn)行,從而達(dá)到終止惡意代碼的效果。
這種技術(shù)只能檢測內(nèi)存中存在的惡意代碼,但是不能對惡意代碼進(jìn)行任何的操作,并且對于被修改的函數(shù)等信息也不能進(jìn)行有效的檢測,同時(shí)不能兼容多個(gè)應(yīng)用程序。
2.5 程序解釋技術(shù)。
程序解釋技術(shù)是應(yīng)用程序監(jiān)視器等對整個(gè)程序的運(yùn)行情況進(jìn)行監(jiān)視,從而達(dá)到安全檢查的效果。
這種技術(shù)主要檢測的是非原始代碼。
這種程序雖然不會(huì)對計(jì)算機(jī)系統(tǒng)的內(nèi)核以及原程序的代碼進(jìn)行修改,但是對于程序的運(yùn)行以及兼容等還是會(huì)造成一定的威脅。
3 軟件漏洞的靜態(tài)檢測技術(shù)
靜態(tài)檢測技術(shù)是對目標(biāo)程序的源代碼等信息進(jìn)行分析的軟件漏洞檢測技術(shù),常見的靜態(tài)檢測技術(shù)有以下幾種。
3.1 元編譯技術(shù)。
元編譯技術(shù)是針對程序安全屬性的檢測,通過對程序代碼安全性的推斷,建立相應(yīng)的編譯擴(kuò)展,并進(jìn)行相應(yīng)的建模執(zhí)行,從而達(dá)到檢測作用。
這一技術(shù)是對編譯器的簡易應(yīng)用,準(zhǔn)確度非常高,而且不會(huì)因?yàn)檎Z言特征而產(chǎn)生新的擴(kuò)展,非常實(shí)用。
3.2 變異語技術(shù)。
變異語技術(shù)是通過對源代碼中算數(shù)的運(yùn)算、goto語句的跳轉(zhuǎn)、不安全的轉(zhuǎn)換、longjump以及setjump的限制來達(dá)到安全檢測的目的。
這種技術(shù)大多使用的是C語言的安全變成來實(shí)現(xiàn)的。
3.3 程序評注技術(shù)。
這一技術(shù)不會(huì)對目標(biāo)程序的源代碼進(jìn)行任何的添加,這一技術(shù)是通過注釋的方式進(jìn)行的,因此不會(huì)對程序的兼容造成影響。
這種技術(shù)通過評注的信息來對目標(biāo)程序的源代碼進(jìn)行深度的分析,從而找出程序的漏洞。
3.4 約束解算器技術(shù)。
約束解算器技術(shù)是將目標(biāo)程序的某些特定屬性進(jìn)行約束,然后通過靜態(tài)分析來進(jìn)行這些特殊屬性的解算。
這一技術(shù)對目標(biāo)程序代碼的影響最小,但其報(bào)誤率較高,加大了程序員的工作量。
3.5 類型推斷技術(shù)。
這一技術(shù)是對某些用戶的輸入或者指針等數(shù)據(jù)進(jìn)行修飾,從而增加其安全約束的靜態(tài)監(jiān)測方法,這種技術(shù)適用于一些較大的應(yīng)用程序,但是這種技術(shù)目前仍具有較大的兼容性問題。
4 MBSA微軟基線安全分析器
MBSA可以對計(jì)算機(jī)的不安全配置進(jìn)行掃描,同時(shí)還可以對計(jì)算機(jī)操作系統(tǒng)和SQL Server更新進(jìn)行檢查,檢查完畢后會(huì)用“X”將檢測出的漏洞進(jìn)行標(biāo)記,然后為用戶提供相應(yīng)的修補(bǔ)方案,引導(dǎo)用戶進(jìn)行漏洞的修補(bǔ)。
在MBSA進(jìn)行掃描之前首先要對其進(jìn)行正確的參數(shù)設(shè)置。
4.1 掃描對象的設(shè)置。
掃描對象的設(shè)置有兩種,一是在計(jì)算機(jī)名稱文本框中輸入本計(jì)算機(jī)的名稱,其格式為“工作組名/計(jì)算機(jī)名”。
二是在IP地址文本框中輸入目標(biāo)計(jì)算機(jī)的IP地址。
4.2 安全報(bào)告名稱格式的設(shè)置。
MBSA的安全掃描結(jié)束后會(huì)將掃描的結(jié)果保存成安全報(bào)告,安全報(bào)告的格式可以根據(jù)用戶的需要來進(jìn)行用戶自定義的設(shè)置。
用戶將所選格式輸入在安全報(bào)告名稱的文本框中即可。
4.3 檢測項(xiàng)目的設(shè)置。
MBSA對于微軟公司的大多產(chǎn)品都能進(jìn)行漏洞檢測,在這一程序的默認(rèn)情況下,無論用戶的計(jì)算機(jī)是否裝有這些軟件,MBSA都會(huì)執(zhí)行檢測操作,這樣就會(huì)造成很多的資源浪費(fèi)。
因此,用戶需要根據(jù)自身計(jì)算機(jī)的實(shí)際情況來進(jìn)行MBSA檢測項(xiàng)目的設(shè)置,從而節(jié)約計(jì)算機(jī)資源。
4.4 查看掃描報(bào)告。
MBSA掃描結(jié)果的安全報(bào)告都是自動(dòng)保存的,用戶可以單擊“View existing security scan reports”來進(jìn)行查看。
報(bào)告內(nèi)容是安全檢查的依據(jù),通過對比安全防護(hù)前后的安全報(bào)告來明確計(jì)算機(jī)系統(tǒng)的安全性能。
5 總結(jié)
隨著計(jì)算機(jī)技術(shù)的廣泛應(yīng)用,人們對計(jì)算機(jī)信息安全的重視程度也越來越高,信息安全問題關(guān)系到每一個(gè)人的財(cái)產(chǎn)安全以及個(gè)人隱私。
而目前大多數(shù)的安全問題都是因?yàn)橛?jì)算機(jī)軟件漏洞造成的,因此必須加強(qiáng)對計(jì)算機(jī)軟件的檢測,增強(qiáng)計(jì)算機(jī)的安全性能。
計(jì)算機(jī)軟件漏洞檢測技術(shù)也要不斷地進(jìn)行更新?lián)Q代,從而適應(yīng)計(jì)算機(jī)軟件市場的發(fā)展。
參考文獻(xiàn):
[1]閆云峰.計(jì)算機(jī)軟件安全漏洞檢測技術(shù)探究[J].民營科技,2012,21(11):21-22.
[2]黃海濱,王艷芳.計(jì)算機(jī)軟件安全漏洞檢測技術(shù)的應(yīng)用研究[J].電腦與電信,2013,15(4):11-12.
[3]陳楷.計(jì)算機(jī)軟件中安全漏洞檢測技術(shù)的應(yīng)用[J].數(shù)字技術(shù)應(yīng)用,2010,28(7):33-34.
計(jì)算機(jī)軟件安全漏洞檢測技術(shù)【2】
摘 要 計(jì)算機(jī)軟件技術(shù)是計(jì)算機(jī)中常用技術(shù),在系統(tǒng)開發(fā)中經(jīng)常涉及到軟件技術(shù)。
科學(xué)技術(shù)不斷發(fā)展,現(xiàn)在對軟件的要求越來越高,軟件在使用之前必須經(jīng)過軟件檢測,現(xiàn)在軟件漏洞也很多,需要不同軟件檢測技術(shù)在檢測,減少軟件漏洞出現(xiàn)。
本論文主要從計(jì)算機(jī)軟件安全漏洞目前的狀況、計(jì)算機(jī)軟件安全漏洞檢測技術(shù)解讀進(jìn)行闡述計(jì)算機(jī)軟件安全漏洞檢測技術(shù),希望為研究軟件安全漏洞檢測技術(shù)的專家與學(xué)者提供理論參考依據(jù)。
【關(guān)鍵詞】軟件 安全漏洞 檢測技術(shù)
信息技術(shù)快速發(fā)展,尤其Internet的廣泛應(yīng)用,在如今大數(shù)據(jù)時(shí)代,軟件是計(jì)算機(jī)技術(shù)一種,在其軟件開發(fā)過程中,計(jì)算機(jī)軟件存在一定漏洞,要保障計(jì)算機(jī)軟件的安全性,必須提高計(jì)算機(jī)軟件的檢測技術(shù),提升計(jì)算機(jī)軟件性能,是提高計(jì)算機(jī)網(wǎng)絡(luò)安全的有效途徑。
1 計(jì)算機(jī)軟件安全漏洞目前的狀況
計(jì)算機(jī)軟件在開發(fā)的時(shí)候有的就存在一定漏洞,當(dāng)時(shí)可能沒有技術(shù)解決軟件漏洞問題,但在軟件使用的過程中,會(huì)出現(xiàn)一系列問題,必須加強(qiáng)軟件安全漏洞的檢測技術(shù),檢測軟件是否合格,不合格的軟件必須加強(qiáng)軟件補(bǔ)丁,促使軟件達(dá)到合格標(biāo)準(zhǔn),經(jīng)過測試后,才能投入市場使用。
還有的軟件開發(fā)時(shí)候沒有任何漏洞,但隨著時(shí)間的推移,軟件會(huì)出現(xiàn)一定漏洞,軟件必須是在使用的過程中,逐步進(jìn)行軟件完善,提升軟件性能,讓其達(dá)標(biāo),減少軟件的漏洞,出現(xiàn)漏洞以后要及時(shí)修復(fù),提高軟件的生命周期,在一個(gè)友好的界面下,充分發(fā)揮軟件的功能,讓其在使用過程中,起到一定的作用,提升性能,減少漏洞。
軟件在使用的過程中,根據(jù)技術(shù)的發(fā)展與變化,計(jì)算機(jī)軟件的漏洞必須技術(shù)檢測,延長軟件的生命周期,提高軟件性能,滿足其需要。
2 計(jì)算機(jī)軟件安全漏洞檢測技術(shù)解讀
2.1 靜態(tài)程序解析
靜態(tài)程序解析是軟件安全常用的檢測技術(shù),這種檢測技術(shù)是通過程序代碼,通過利用機(jī)器語言、匯編語言等進(jìn)行編譯,利用反代碼形式,對檢測出來的軟件漏洞,及時(shí)進(jìn)行修復(fù),提高軟件性能,在實(shí)際應(yīng)用過程中,涉及到程序設(shè)計(jì)中的語言、函數(shù)、數(shù)組、過程、集合、文件等。
利用軟件技術(shù)解決軟件漏洞問題,靜態(tài)程序解析對程序設(shè)計(jì)起到保護(hù)作用,檢測軟件漏洞,提升計(jì)算機(jī)軟件性能,這是一種常用的計(jì)算機(jī)軟件安全漏洞檢測技術(shù),通過該技術(shù)對軟件漏洞進(jìn)行合理檢測,提高軟件性能,延長軟件的生命周期。
2.2 利用邏輯公式對程序性質(zhì)進(jìn)行表達(dá)
根據(jù)程序的性質(zhì),對計(jì)算機(jī)軟件漏洞進(jìn)行檢測,判斷其中的應(yīng)用能力,邏輯公式能對計(jì)算機(jī)軟件的性能進(jìn)行檢測,檢測其的合法性,是否存在軟件漏洞,有的軟件漏洞是需要升級與更新軟件就可以解決的,有的是出現(xiàn)軟件錯(cuò)誤,必須合理采用措施,解決軟件漏洞問題。
其中的公理化方法的邏輯是完整的體系,其中的每個(gè)公式都是由單個(gè)程序語句和其前后置斷言共同構(gòu)成,具體理論當(dāng)中只有一條賦值公理,形式演算系統(tǒng)以一階謂詞邏輯為基礎(chǔ),各自為順序、分支以及循環(huán)指令增加了相應(yīng)的演算法則。
公理化方法已經(jīng)被證明具有較強(qiáng)的可靠性和完整性,但匹配的形式演算系統(tǒng)存在半可判定的情況。
程序的正確性涉及程序設(shè)計(jì)人員利用邏輯公式對程序?qū)?yīng)的功能規(guī)約展開描述,另外一個(gè)問題就是要為循環(huán)體確定循環(huán)不變式。
邏輯公式的應(yīng)用提高了邏輯判斷能力,在利用語句進(jìn)行科學(xué)判斷,檢測計(jì)算機(jī)軟件是否存在漏洞,根據(jù)邏輯公式的判斷能力,檢測軟件是否存在漏洞,如果存在漏洞,對其合理的進(jìn)行修補(bǔ),解決軟件漏洞問題,提升軟件性能,完善軟件功能。
2.3 測試庫技術(shù)
測試庫技術(shù)是計(jì)算機(jī)軟件檢測中常用技術(shù),對解決計(jì)算機(jī)軟件漏洞起到幫助作用。
測試庫技術(shù)是檢測計(jì)算機(jī)軟件中的核心部件,判斷計(jì)算機(jī)軟件是否存在漏洞。