黃俊強(qiáng)+++宋超臣
【摘要】隨著信息系統(tǒng)的發(fā)展,其中的威脅形式也越來(lái)越多樣化,漏洞威脅作為其中一種影響范圍廣、威脅程度高的形式被越來(lái)越多地關(guān)注。常規(guī)的應(yīng)對(duì)漏洞威脅是采用補(bǔ)丁的方式,這樣有一定的不足。本文提出一種多方聯(lián)動(dòng)的漏洞威脅應(yīng)對(duì)方式,綜合利用各方資源,加強(qiáng)信息系統(tǒng)的安全性。
【關(guān)鍵詞】信息系統(tǒng);漏洞;多方聯(lián)動(dòng);補(bǔ)??;監(jiān)測(cè)
1引言
當(dāng)前針對(duì)漏洞這種安全威脅所采取應(yīng)對(duì)措施的各個(gè)環(huán)節(jié)還相對(duì)孤立,沒(méi)有銜接成為一個(gè)整體,漏洞發(fā)現(xiàn)、漏洞分析、漏洞補(bǔ)丁的發(fā)布等各個(gè)部分各自為戰(zhàn),彼此之間缺乏聯(lián)系,從漏洞發(fā)現(xiàn)到最后由此漏洞導(dǎo)致的重要安全威脅被消除,期間的時(shí)間跨度較大,使本來(lái)就不容樂(lè)觀的安全形勢(shì)更加嚴(yán)峻。參與漏洞處理的各個(gè)組織之間缺乏有效的交流,漏洞庫(kù)組織、安全公司、愛(ài)好者團(tuán)體之間交流甚少,甚至故意制造技術(shù)壁壘,這也嚴(yán)重影響了漏洞應(yīng)對(duì)的效率。本文提出一種多方聯(lián)動(dòng)的漏洞威脅應(yīng)對(duì)方案,旨在提高各種資源的利用率,聯(lián)合漏洞庫(kù)、補(bǔ)丁發(fā)布組織、安全組織、愛(ài)好者團(tuán)體等漏洞參與環(huán)節(jié),縮短從漏洞發(fā)現(xiàn)到漏洞應(yīng)對(duì)措施的成功實(shí)施的時(shí)間。
2整體框架
當(dāng)前對(duì)漏洞的定義為:在一個(gè)信息系統(tǒng)的硬件、軟件或固件的需求、設(shè)計(jì)、實(shí)現(xiàn)、配置、運(yùn)行等過(guò)程中有意留下或無(wú)意中產(chǎn)生的一個(gè)或若干個(gè)缺陷,它會(huì)導(dǎo)致該信息系統(tǒng)處于風(fēng)險(xiǎn)之中。漏洞所帶來(lái)的威脅不是來(lái)自于漏洞本身,而是由于漏洞所引起的信息泄露、未經(jīng)授權(quán)的訪問(wèn)和篡改等風(fēng)險(xiǎn)。有些漏洞被利用后,攻擊者可以繞過(guò)安全機(jī)制和授權(quán)機(jī)制,達(dá)到其非法入侵的目的。
現(xiàn)有技術(shù)條件下,對(duì)漏洞的發(fā)現(xiàn)和研究尚未達(dá)到完全自動(dòng)的程度,主要手段仍是手動(dòng)測(cè)試和構(gòu)造半自動(dòng)化的測(cè)試程序。同時(shí)針對(duì)不同的文件格式,其漏洞發(fā)現(xiàn)和修補(bǔ)的途徑也差異甚大,對(duì)網(wǎng)絡(luò)協(xié)議和各種文件格式的漏洞發(fā)掘已經(jīng)取得一部分研究成果,根據(jù)補(bǔ)丁前后的文件比對(duì)進(jìn)而對(duì)漏洞進(jìn)行利用的逆向工程技術(shù)也日益豐富,由于不同類型的漏洞的處理方法差異較大,也導(dǎo)致了各個(gè)組織之間各有所長(zhǎng),在緩沖區(qū)溢出、SQL注入、目錄遍歷、遠(yuǎn)程代碼執(zhí)行等不同的方面都存在較為擅長(zhǎng)的組織。
這種情況導(dǎo)致了一批分布于漏洞處理各個(gè)領(lǐng)域的研究單位、安全公司、愛(ài)好者團(tuán)體的出現(xiàn)和發(fā)展,使這一領(lǐng)域的氣氛非?;钴S,但是在某種程度上也阻礙了經(jīng)驗(yàn)的交流和成果的轉(zhuǎn)化。針對(duì)這種情況,借鑒現(xiàn)有的殺毒軟件的模式,提出一種新的漏洞應(yīng)對(duì)方案,揚(yáng)長(zhǎng)避短,綜合各方優(yōu)勢(shì),做到對(duì)各種漏洞帶來(lái)的威脅及時(shí)地響應(yīng)。
本方案設(shè)計(jì)為三個(gè)主要的部分:漏洞信息獲取、分析和處理;涉及到三個(gè)主要的參與方:漏洞信息源、分析中心、最終用戶。其中,信息源提供有關(guān)漏洞的相關(guān)信息,如漏洞的來(lái)源,影響的應(yīng)用程序、系統(tǒng)或者網(wǎng)絡(luò)協(xié)議,漏洞的觸發(fā)條件,在可能的情況下還要提供漏洞利用的shellcode或者exploit代碼等。分析中心負(fù)責(zé)對(duì)信息源提供的漏洞信息進(jìn)行分類整理,分析其安全威脅等級(jí),所屬分類,有無(wú)補(bǔ)丁,有無(wú)相應(yīng)的exploit代碼,并設(shè)置相應(yīng)的特征碼以便發(fā)送給最終用戶進(jìn)行威脅應(yīng)對(duì)。用戶部分則是根據(jù)分析中心得到的特征碼匹配網(wǎng)絡(luò)上收到的信息和本地文件內(nèi)容,若存在一致的部分,則說(shuō)明有可能是漏洞利用者故意發(fā)送的觸發(fā)漏洞的代碼或者制造的文件,需要提高警惕。
本方案的三個(gè)部分之間需要交互聯(lián)系,分析中心從信息源處獲得漏洞的信息并綜合分析處理,然后將結(jié)果送到最終用戶,接受最終用戶的反饋,最終用戶也可在程序或者協(xié)議出現(xiàn)異常的時(shí)候,將場(chǎng)景保存發(fā)送給分析中心,分析中心利用人員和數(shù)據(jù)量上的優(yōu)勢(shì)進(jìn)行分析處理,同時(shí)將此信息分發(fā)至各漏洞研究和應(yīng)對(duì)組織,盡量把漏洞堵在未造成危害的狀態(tài)。其結(jié)構(gòu)示意如圖1。
3分塊功能劃分
3.1信息源
信息源處于整個(gè)方案的設(shè)計(jì)中的最前端,是方案能夠正常運(yùn)行的第一步,從信息源處得到的漏洞信息是原始的數(shù)據(jù),在漏洞信息獲取的過(guò)程中,應(yīng)當(dāng)秉持“寧濫勿缺”的原則,盡可能多的搜集各漏洞庫(kù)的漏洞信息,以交由分析中心進(jìn)行分析處理。
目前相對(duì)較大的漏洞庫(kù),國(guó)外的有美國(guó)國(guó)家漏洞庫(kù)(NVD),美國(guó)國(guó)土安全部的US-CERT Vulnerability Notes Database,開(kāi)源的Open Source Vulnerability Database,Symantec公司的SecurityFocus Vulnerability Database,VeriSign公司的iDefense Vulnerability Advisories,這些漏洞庫(kù)大都遵循CVE(Common Vulnerability and Exposures)標(biāo)準(zhǔn)且有各自不同的更新方式,其中的內(nèi)容詳細(xì)全面,是很有價(jià)值的漏洞庫(kù)參考。
國(guó)內(nèi)的漏洞庫(kù)主要是中國(guó)國(guó)家漏洞庫(kù)、國(guó)家安全漏洞庫(kù)、國(guó)家信息安全漏洞共享平臺(tái)和綠盟公司的綠盟科技漏洞庫(kù),這些漏洞庫(kù)也都更新及時(shí),分類詳細(xì)。另外還有一些愛(ài)好者團(tuán)體、網(wǎng)絡(luò)安全組織等所掌握的漏洞信息,其特點(diǎn)是時(shí)效性強(qiáng)、漏洞信息很新,威脅程度較高,也有很高的分析價(jià)值。
選擇信息源時(shí),應(yīng)當(dāng)盡可能綜合上述漏洞庫(kù)的信息,積極吸取各方的長(zhǎng)處和優(yōu)勢(shì),為在分析環(huán)節(jié)進(jìn)行漏洞的分析分類和整理提供盡量多的數(shù)據(jù),這樣有助于分析環(huán)節(jié)中的分類更明確,特征碼提取更準(zhǔn)確,能夠更高效地為最終用戶提供相應(yīng)的漏洞應(yīng)對(duì)策略,同時(shí)更好地將信息源和信息目的地連接在一起。
3.2分析中心
分析中心負(fù)責(zé)將從信息源傳來(lái)的信息進(jìn)行分析分類和整理,在技術(shù)條件允許的情況下對(duì)漏洞進(jìn)行深一步的研究,主要是從已經(jīng)獲得的漏洞信息中,如漏洞影響的系統(tǒng)、軟件或者協(xié)議,漏洞的CVE編號(hào),漏洞觸發(fā)時(shí)的內(nèi)存情況、系統(tǒng)信息、運(yùn)行狀態(tài)等信息中,提取引發(fā)漏洞威脅的文件、數(shù)據(jù)流的特征碼,使得用戶能夠根據(jù)特征碼來(lái)發(fā)現(xiàn)漏洞的威脅。這種方式較為簡(jiǎn)便易行,同時(shí)不要求客戶端占用太多的資源。
分析中心需要完成對(duì)漏洞的分類,按照影響的信息系統(tǒng)的部分不同,分為系統(tǒng)漏洞、應(yīng)用程序漏洞、協(xié)議漏洞等;按照威脅等級(jí)將漏洞標(biāo)記為高風(fēng)險(xiǎn)、一般風(fēng)險(xiǎn)和低風(fēng)險(xiǎn);按照觸發(fā)機(jī)制的不同,將漏洞分為緩沖區(qū)溢出漏洞、注入漏洞、遠(yuǎn)程安全機(jī)制繞過(guò)漏洞等;并以此作為參考的一部分,定義漏洞的特征碼,方便地標(biāo)識(shí)一個(gè)漏洞所處的狀態(tài)。endprint
一個(gè)漏洞的觸發(fā)機(jī)制,即軟件活硬件的異常是在什么情況下被觸發(fā)的,能夠精確地定位觸發(fā)漏洞的場(chǎng)景,明確當(dāng)時(shí)軟件的輸入、正在處理的數(shù)據(jù)、提供給它的接口做出了哪些動(dòng)作,對(duì)漏洞的研究也就成功了一半。同時(shí),明確觸發(fā)漏洞的輸入也有非常重要的意義,因?yàn)樵谝话闱闆r下想要進(jìn)行漏洞利用,必須要觸發(fā)漏洞,而漏洞利用的代碼、數(shù)據(jù)流或者文件與引起軟硬件崩潰時(shí)的場(chǎng)景必然有相似或者相同之處,研究漏洞的觸發(fā)機(jī)制是分析一個(gè)漏洞的重要的一步。
明確一個(gè)漏洞能夠造成的后果,對(duì)漏洞分析和漏洞威脅等級(jí)的定義,也有重要的價(jià)值。有些漏洞僅會(huì)導(dǎo)致目錄信息被泄露或者拒絕服務(wù),有些漏洞則造成緩沖區(qū)溢出,指令寄存器被攻擊者篡改,引發(fā)攻擊者可以執(zhí)行任何命令的嚴(yán)重后果;故需要根據(jù)漏洞影響的范圍,以及針對(duì)此種類型的漏洞的攻擊方式、攻擊工具的數(shù)量的不同,對(duì)漏洞的威脅等級(jí)進(jìn)行定義,對(duì)于威脅等級(jí)較高的漏洞,相應(yīng)地在分析、處理時(shí)的緊迫度也較高。
針對(duì)威脅等級(jí)中等以上的漏洞,分析中心可以通過(guò)從安全組織處、從網(wǎng)絡(luò)流量或異常監(jiān)控中獲取一個(gè)漏洞相應(yīng)的exploit代碼,如果某一漏洞的exploit代碼不易被獲取,分析中心可采取自主開(kāi)發(fā)的方式得到相應(yīng)的exploit代碼。exploit代碼可以用來(lái)向用戶提供更為準(zhǔn)確的威脅警告,如果用戶在自己的網(wǎng)絡(luò)流量或者文件中監(jiān)察到了與之相同或非常相似的部分,那么該文件或者信息就極有可能是攻擊者用來(lái)觸發(fā)漏洞的,用戶可以通過(guò)升級(jí)系統(tǒng)和應(yīng)用程序,屏蔽某個(gè)來(lái)源的信息來(lái)防范此類攻擊的威脅。exploit代碼同樣是生成漏洞特征碼時(shí)應(yīng)當(dāng)考慮的一個(gè)組成部分。
3.3最終用戶
最終用戶是以上部分和策略的直接使用者,漏洞信息的整理和分析的結(jié)果在用戶處體現(xiàn)。用戶處采取客戶端的方式,與分析中心進(jìn)行交互,從分析中心處獲得以特征碼為主的漏洞信息,反饋?zhàn)约旱钠ヅ浣Y(jié)果和在軟硬件系統(tǒng)出現(xiàn)異常時(shí)的系統(tǒng)狀態(tài)信息,為分析中心提供分析漏洞和開(kāi)發(fā)相應(yīng)的exploit代碼的參考。通過(guò)這種信息的交互,用戶能夠及時(shí)發(fā)現(xiàn)自身系統(tǒng)中漏洞所造成的安全威脅,分析中心能夠得到用戶的反饋,驗(yàn)證特征碼的構(gòu)造是否合理并根據(jù)用戶的狀態(tài)信息開(kāi)發(fā)新的exploit代碼。
在這種方式下,用戶需要在本地定時(shí)開(kāi)放文件掃描和網(wǎng)絡(luò)流量監(jiān)控,通過(guò)特征碼與文件和流量相匹配,以發(fā)現(xiàn)其中的異常情況,及時(shí)提醒用戶防范惡意攻擊和升級(jí)系統(tǒng)。在軟硬件系統(tǒng)發(fā)生異?;蛘弑罎⒌臅r(shí)候,客戶端報(bào)告系統(tǒng)的狀態(tài)信息,用戶在使用分析中西提供的服務(wù)的同時(shí),也在某種程度上作為一種信息源將必要的信息提供給分析中心。
4結(jié)束語(yǔ)
本方案通過(guò)三個(gè)部分多個(gè)組成部分之間的協(xié)調(diào)聯(lián)系,將漏洞應(yīng)對(duì)的各個(gè)環(huán)節(jié)緊密聯(lián)系起來(lái),達(dá)到漏洞威脅的綜合管理和應(yīng)對(duì)。傳統(tǒng)的漏洞威脅應(yīng)對(duì)以“補(bǔ)丁”的方式為主,即發(fā)現(xiàn)漏洞以后,開(kāi)發(fā)出相應(yīng)的漏洞補(bǔ)丁予以修補(bǔ),這種方式有一定的滯后性同時(shí)補(bǔ)丁的安裝可能會(huì)引入新的安全威脅,受對(duì)病毒的防御方法的啟發(fā),本方案將重點(diǎn)從不漏洞向防止漏洞被利用轉(zhuǎn)變,在采用這種方法的同時(shí)并不完全放棄傳統(tǒng)的補(bǔ)丁方式,由單一的防護(hù)途徑向綜合的多種防護(hù)途徑轉(zhuǎn)變,不斷加強(qiáng)信息系統(tǒng)的安全性。
參考文獻(xiàn)
[1] 張友春,魏強(qiáng),劉增良等. 信息系統(tǒng)漏洞挖掘技術(shù)體系研究[J]. 通信學(xué)報(bào),2011(2): 42-47.
[2] 黃奕,曾凡平,張美超. 基于動(dòng)態(tài)輸入追蹤的模糊技術(shù)[J]. 計(jì)算機(jī)工程, 2011, 37(6): 44-45, 48.
[3] 陳韜,孫樂(lè)昌,潘祖烈等. 基于文件格式的漏洞挖掘技術(shù)研究[J]. 計(jì)算機(jī)科學(xué),2011(S1): 78-82.
[4] 李偉明,張愛(ài)芳,劉建財(cái)?shù)? 網(wǎng)絡(luò)協(xié)議的自動(dòng)化模糊測(cè)試漏洞挖掘方法[J]. 計(jì)算機(jī)學(xué)報(bào),2011(2): 242-255.
[5] 陸凱. Web應(yīng)用程序安全漏洞挖掘的研究[D]. 西安電子科技大學(xué), 2010.
[6] 徐有福,文偉平,張普含等. 一種參考安全補(bǔ)丁比對(duì)的軟件安全漏洞挖掘方法研究[Z]. 北京: 2011.
[7] 黃誠(chéng),方勇. ActiveX控件漏洞挖掘與分析技術(shù)研究[J]. 信息安全與通信保密,2012(2): 54-56.
[8] 吳毓書,周安民,吳少華等. 基于Fuzzing的ActiveX控件漏洞發(fā)掘技術(shù)[J]. 計(jì)算機(jī)應(yīng)用,2008(9): 2252-2254.
[9] 徐良華,孫玉龍,高豐等. 基于逆向工程的軟件漏洞挖掘技術(shù)[J]. 微計(jì)算機(jī)信息,2006(24): 259-261.
[10] Noel S, Elder M, Jajodia S, et al. Advances in Topological Vulnerability Analysis[C]. 2009.
[11] 吳舒平,張玉清. 漏洞庫(kù)發(fā)展現(xiàn)狀的研究及啟示[J]. 計(jì)算機(jī)安全, 2010(11): 82-84.
[12] Yao G, Guan Q, Ni K. Test Model for Security Vulnerability in Web Controls based on Fuzzing[J]. Journal of Software. 2012, 7(4): 773-778.
作者簡(jiǎn)介:
黃俊強(qiáng)(1974-),男,漢族,沈陽(yáng)工業(yè)學(xué)院,本科,黑龍江省電子信息產(chǎn)品監(jiān)督檢驗(yàn)院信息安全測(cè)評(píng)中心主任,高級(jí)工程師;主要研究方向和關(guān)注領(lǐng)域:網(wǎng)絡(luò)與信息安全、風(fēng)險(xiǎn)評(píng)估與等級(jí)保護(hù)測(cè)評(píng)。
宋超臣(1979-),男,漢族,哈爾濱工程大學(xué),碩士研究生,工程師;主要研究方向和關(guān)注領(lǐng)域:服務(wù)計(jì)算、信息安全。endprint