摘 要:本文對惡意代碼分析技術(shù)的發(fā)展歷史以及當(dāng)前的主流分析技術(shù)進(jìn)行了簡要的總結(jié),并闡述了如何應(yīng)對目前開始出現(xiàn)的APT等深度攻擊,對未來的惡意代碼分析技術(shù)的發(fā)展方向做出簡單介紹。
關(guān)鍵詞:惡意代碼 歸一化 自動化判定 APT
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2013)06(a)-0024-01
1 反惡意代碼研究背景
1.1 惡意代碼(Malicious code)
本文中,惡意代碼泛指任何帶有不良意圖的計(jì)算機(jī)指令、程序代碼、腳本文件等等,包括病毒、木馬。隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展以及信息交換能力的增強(qiáng),網(wǎng)絡(luò)傳播已經(jīng)成為惡意代碼入侵的主要形式,基于網(wǎng)絡(luò)的惡意代碼檢測應(yīng)當(dāng)作為我們防范惡意代碼的重點(diǎn)研究方向。
1.2 反惡意代碼研究背景
背景一,惡意代碼規(guī)模飛速膨脹,根據(jù)安天實(shí)驗(yàn)室的統(tǒng)計(jì),2000年時,各類病毒累計(jì)總數(shù)約2萬多種,到2006年,增加到大約13萬種,到2012年,這一數(shù)字已達(dá)到800萬種。
背景二,歸一化模型的形成與進(jìn)化,反惡意代碼的核心方法論是歸一化模型。所謂歸一化,是把大量的、異構(gòu)的事件轉(zhuǎn)換成可以形式化的同構(gòu)規(guī)則,從整個反惡意代碼基礎(chǔ)維護(hù)體制,轉(zhuǎn)化為對基本歸一化模型的維護(hù)、對精確特征的維護(hù)和對未知檢測模型的維護(hù)。
背景三,復(fù)雜度變化,惡意代碼的感染方式從附著在正常程序上的感染式片段變成獨(dú)立文件,不再受代碼整體空間的束縛,功能局限性減少,病毒攻擊演變?yōu)楦鼜?fù)雜的大規(guī)模深度惡意攻擊,相應(yīng)的整個處理體系也必須要升級,這一需求帶動了整個反惡意代碼體系的發(fā)展。
2 惡意代碼分析技術(shù)發(fā)展歷史
2.1 1988-1995手工作業(yè)階段
1986年第一個IBM PC架構(gòu)的惡意代碼巴基斯坦智能誕生,早期病毒簡單,數(shù)量很少,通過將不同病毒的查殺模塊簡單串接在一起即可清除,反病毒程序不存在病毒庫的概念,更不需要后臺體系處理。
隨著病毒數(shù)量的增多,早期現(xiàn)代反病毒引擎開始出現(xiàn),這一時期的反病毒引擎具備以下特點(diǎn):第一,基于檢測方法的形式化,把惡意代碼概括成一些不同的歸一化模型,通過同一種形式規(guī)則進(jìn)行檢查;第二,實(shí)現(xiàn)了以格式識別為核心的整個前導(dǎo)邏輯處理。
這一階段的惡意代碼分析技術(shù)主要完成了最基本的方法奠基問題,制定了反病毒歸一化的基礎(chǔ)模型,為后續(xù)的發(fā)展奠定了基礎(chǔ)。
2.2 1995-2002客戶機(jī)/服務(wù)器管理與規(guī)則自動化提取階段
隨著計(jì)算機(jī)技術(shù)的進(jìn)步和局域網(wǎng)技術(shù)的逐漸成熟,惡意代碼的數(shù)量和質(zhì)量相比之前都有了很大的發(fā)展,分析技術(shù)也逐漸轉(zhuǎn)化為對惡意代碼程序中的特征碼規(guī)則的提取和分析。在新的反病毒引擎中,需要增加更多的庫用于進(jìn)行形式化識別工作,還有相應(yīng)的對象提取模塊,以及依托這些庫工作的大量的格式模塊。其中,特征自動化的病毒庫加對象檢測可以算是現(xiàn)代反病毒引擎的組成部分。
特征自動化提取是針對所有對象完成的;特征不一定要提取到惡意行為,只要規(guī)則能對此類惡意代碼唯一標(biāo)示,且不與其他惡意代碼發(fā)生錯報(bào),更不能與已知白名單發(fā)生碰撞以產(chǎn)生誤報(bào),即可認(rèn)為是該惡意代碼的特征。
這一階段,以樣本管理和規(guī)則流轉(zhuǎn)為核心的特征自動化提取技術(shù)逐漸發(fā)展成熟,C/S模式的分析方式則解決了惡意代碼分析工作中的角色問題。
2.3 2000-2005人工任務(wù)流水線階段
這一時期,計(jì)算機(jī)操作系統(tǒng)日益復(fù)雜,網(wǎng)絡(luò)感染成為惡意代碼的主要攻擊模式,這種廣泛傳染的模式,導(dǎo)致惡意代碼辨識壓力的劇增,如何快速、準(zhǔn)確的挑選病毒成為一個重要的研究工作。為了解決這一難題,由程序員手工區(qū)分病毒的流水線技術(shù)開始引入惡意代碼分析工作。
早期順序流水線和改進(jìn)的并行流水線,都是根據(jù)安全工作人員的技術(shù)特長,分配相應(yīng)的工作,彼此銜接。這兩種模式中,任何一個環(huán)節(jié)出現(xiàn)停頓都會導(dǎo)致整個分析工作發(fā)生中斷,局部瓶頸問題難以解決。
隨后產(chǎn)生的環(huán)形流水線較好的解決了這個問題,在環(huán)形流水線上,樣本作為流轉(zhuǎn)于整個流水線的加工實(shí)體,所有自動化部分是自動化工序,對樣本屬性標(biāo)識的提取工作,視為流水線的工作內(nèi)容。由于規(guī)則自動化完成,挑選病毒成為惡意代碼分析的主要工作。
3 當(dāng)前反惡意代碼分析技術(shù)特點(diǎn)
從2005年開始,網(wǎng)絡(luò)應(yīng)用呈現(xiàn)出大發(fā)展的趨勢,云計(jì)算、虛擬化技術(shù)開始廣泛應(yīng)用,惡意代碼和正常應(yīng)用程序的數(shù)量都以幾何級數(shù)增長。面對這樣的挑戰(zhàn),以人工主導(dǎo)的惡意代碼分析思路再也無法適應(yīng)新時代的惡意代碼環(huán)境。
當(dāng)前惡意代碼分析需要解決的問題包括對整個惡意代碼事件的描述和追溯;惡意代碼本身的屬性特點(diǎn);如何處理該惡意代碼。為解決這一難題,反惡意代碼分析領(lǐng)域引入了基于自動流水線工序的自動化判定技術(shù)。自動流水線工序?qū)⒄麄€處理過程視為流水線;將樣本的全部屬性定義為一個“屬性域”,流水線的處理過程就是屬性域的不斷填充過程;為每個樣本創(chuàng)建一個存放全部屬性的XML文件并伴生樣本流轉(zhuǎn)。
得益于計(jì)算資源成本降低,虛擬化技術(shù)愈加成熟,樣本自動化分析可以通過對基于整個虛擬環(huán)境中建立的driver和hook數(shù)據(jù)抓取和外部網(wǎng)卡提取的網(wǎng)絡(luò)特征,形成對惡意代碼的判斷,同時虛擬執(zhí)行也為脫殼技術(shù)提供支持,該環(huán)節(jié)是目前主流安全廠商的后臺分析判定的核心特性。在此基礎(chǔ)上,輔以少量人工分析完成全部分析工作,修正之前的誤判。
自動化判定技術(shù)的廣泛應(yīng)用解決了海量惡意代碼的分析難題,有力的遏制了惡意代碼的危害。
4 未來技術(shù)趨勢展望
2010年,包括震網(wǎng)病毒、Google極光攻擊在內(nèi)的一系列APT攻擊事件爆發(fā),這些攻擊綜合應(yīng)用了社會工程學(xué)和計(jì)算機(jī)技術(shù),攻擊質(zhì)量高、深度廣。由于更強(qiáng)的代碼隱藏能力和反分析能力,更復(fù)雜的攻擊路徑,國與國之間的信息阻斷,如何發(fā)現(xiàn)及分析惡意代碼的攻擊目標(biāo)和攻擊動機(jī)變得更加困難。面對這樣的安全環(huán)境,大場景深度分析勢必會成為未來主流的惡意代碼分析技術(shù)趨勢。
所謂的大場景深度分析,包括深度代碼分析,即對代碼異常的相關(guān)性進(jìn)行分析;深度事件分析,對異常事件的流程、關(guān)聯(lián)角度的分析;深度綜合數(shù)據(jù)分析,由于新型網(wǎng)絡(luò)攻擊已經(jīng)不再局限于信息領(lǐng)域,我們有必要對不同領(lǐng)域、不同專業(yè)的數(shù)據(jù)進(jìn)行相關(guān)分析,盡最大可能,對類似的深度攻擊進(jìn)行阻止和控制。
5 結(jié)語
通過以上分析,我們可以看到,隨著信息技術(shù)的發(fā)展,各種網(wǎng)絡(luò)威脅已經(jīng)遍布我們的周圍,與此同時,惡意代碼分析技術(shù)也隨之不斷發(fā)展,病毒攻擊與反攻擊的對抗還將不斷繼續(xù)。
參考文獻(xiàn)
[1]王凌.計(jì)算機(jī)病毒的感染原理及防范技術(shù)研究[J].中國管理信息化,2013(1).
[2]李響,陳建熊.Win32PE病毒研究[J].合肥學(xué)院學(xué)報(bào),2006(12).
[3]韓韋.網(wǎng)絡(luò)安全主動防御技術(shù)探析[J].信息與電腦,2012(9).