孫 未,張亞平
(天津大學(xué) 軟件學(xué)院,天津300072)
近年來,分布式拒絕服務(wù)攻擊 (distributed denial-ofservice attack,DDoS)已經(jīng)成為目前互聯(lián)網(wǎng)最重要的威脅之一[1]。攻擊者通過控制大量傀儡機(jī),向攻擊目標(biāo)發(fā)送大量請求,消耗其CPU、內(nèi)存、帶寬等計算資源,目的是阻止其為正常用戶提供服務(wù)。
早期的傳統(tǒng)DDoS攻擊通常利用網(wǎng)絡(luò)層的協(xié)議漏洞來發(fā)起攻擊,耗盡網(wǎng)絡(luò)帶寬和目標(biāo)主機(jī)資源,如常見的SYN flooding、UDP flooding、TCP flooding 和ICMP flooding。許多科研人員對其進(jìn)行了大量的研究[2-4],并取得了很好的效果。攻擊者為了達(dá)到更好的攻擊效果,開始越來越多得選擇了應(yīng)用層DDoS攻擊。
App-DDoS攻擊與傳統(tǒng)的網(wǎng)絡(luò)層DDoS有很大的不同。其會建立正常的TCP連接,發(fā)出的服務(wù)請求也都是合法請求,在內(nèi)容上與正常用戶的請求完全相同。因此之前針對網(wǎng)絡(luò)層DDoS攻擊的檢測防御方法對App-DDoS不再有效。針對App-DDoS攻擊的防御方法還需要進(jìn)行更多的研究。
文獻(xiàn) [5]提出了基于驗證機(jī)制的攻擊防御方法,在客戶端和服務(wù)器的通信過程中嵌入驗證碼,來識別合法請求,過濾惡意攻擊。該算法對通信雙方透明并具有較低的資源消耗。
文獻(xiàn) [6]將應(yīng)用層DDoS攻擊分為request flooding攻擊、asymmetric攻擊和repeated one-shot攻擊?;谶@3種攻擊,提出來一種Session 可疑度計算模型,根據(jù)Session建立速度、請求速率和請求消耗來計算Session 可疑度,最后依據(jù)Session可疑度大小進(jìn)行請求轉(zhuǎn)發(fā)。
文獻(xiàn) [7]提出了一種應(yīng)對突發(fā)流下應(yīng)用層DDoS的防御方法。用一個訪問矩陣 (access matrix)來描述正常用戶的訪問模式,該訪問矩陣的參數(shù)包括HTTP request rate,HTTP session rate和server documents。然后根據(jù)每個會話的行為特征跟訪問矩陣的差異大小得到可疑分?jǐn)?shù),并據(jù)此決定是否允許繼續(xù)訪問。
文獻(xiàn) [8]使用隱馬爾科夫模型來描述正常用戶的訪問行為,在線測量Web用戶訪問行為相對于正常訪問模型的偏離度,根據(jù)偏離度大小判斷惡意攻擊序列。該方法訓(xùn)練數(shù)據(jù)和計算過程繁瑣,且不能完全涵蓋所有喜好習(xí)慣不同的用戶的訪問特征。
文獻(xiàn) [9]提出了基于卡爾曼濾波和信息熵的聯(lián)合檢測模型DFM-FA,文中依據(jù)App-DDoS攻擊發(fā)生時與突發(fā)流表現(xiàn)不同的網(wǎng)絡(luò)流量的異常變化,將應(yīng)用層的行為異常映射到網(wǎng)絡(luò)層的流量異常,使檢測模型不依賴于系統(tǒng)日志,在系統(tǒng)日志不易獲得的情況下也可以進(jìn)行攻擊檢測。
文獻(xiàn) [10]提出了一種白名單緩解攻擊的方法。與大部分防御策略里將異常用戶加入黑名單的方法不同,白名單過濾方法旨在保證在受到攻擊的時候,被加入白名單的重要的合法用戶不會受到影響,以此來削弱DDoS 攻擊。但是在很多情況下,IP是會經(jīng)常改變的,文中用將一個網(wǎng)段的IP都加入白名單的方法來避免這個問題,但也導(dǎo)致要維護(hù)一個很大的表,這會消耗很多資源。
文獻(xiàn) [11]提出ConnectionScore方法,服務(wù)器在受到攻擊的時候,會根據(jù)每個連接的多個行為特征 (request rate and download rate、arrival distribution rate of users、browsing behavior等)進(jìn)行打分,結(jié)合歷史記錄,得分低的用戶會被剝奪資源。
本文提出了一種基于用戶忠實度的ULDM (user loyalty defense model)防御模型。該模型使用用戶忠實度作為標(biāo)準(zhǔn)來檢測攻擊。用戶忠實度要根據(jù)用戶長時間的綜合表現(xiàn)來評估,包括歷史行為表現(xiàn)、當(dāng)前行為表現(xiàn)和訪問頻率。攻擊者無法改變其歷史行為記錄,無法輕易逃避檢測。因此,在App-DDoS攻擊的檢測中,用忠實度作為評價標(biāo)準(zhǔn)是更有效的。
App-DDoS攻擊主要通過大量傀儡機(jī)不斷訪問目標(biāo)主機(jī),以消耗其各種資源,使其不能再為合法用戶提供服務(wù)。為了達(dá)到攻擊效果,App-DDoS 攻擊一般會通過以下方式[12]:
(1)請求洪泛攻擊。這種攻擊通過大量傀儡機(jī)快速發(fā)出大量合法請求來占用目標(biāo)服務(wù)器資源和網(wǎng)絡(luò)帶寬,使得正常用戶無法得到服務(wù)。
(2)高消耗請求攻擊。這種攻擊通過不斷請求高消耗資源的內(nèi)容,比如數(shù)據(jù)庫查詢、密碼驗證等來消耗服務(wù)器資源。這樣就可以只通過少量傀儡機(jī)發(fā)送低速率的攻擊請求就能達(dá)到消耗目標(biāo)服務(wù)器資源的目的。這種方式的攻擊比請求洪泛攻擊更有破壞力,更難以檢測。
請求速率分析:洪泛攻擊中攻擊者通過攻擊程序不斷發(fā)出高頻率請求來達(dá)到將目標(biāo)主機(jī)資源消耗殆盡的目的。而正常用戶由于不同的興趣和閱讀習(xí)慣,會在不同的頁面上駐留不同的時間。因此,洪范攻擊用戶在會話中的平均請求速率會跟正常用戶有很大差異。
負(fù)載比例分析:對服務(wù)器來說,不同的請求的負(fù)載大小是不同的。正常用戶在訪問網(wǎng)站的過程中會根據(jù)各自不同的興趣,訪問不同的頁面。攻擊者為了逃避請求速率的檢測同時為了達(dá)到攻擊效果,在訪問中都會選擇低速率訪問高負(fù)載的請求。因此高消耗攻擊中,攻擊用戶在會話中的高負(fù)載請求比例會比正常用戶高很多。
如果攻擊者為了逃避檢測而在訪問速率和請求負(fù)載比例上都模擬正常用戶進(jìn)行訪問,就必須使用大量的傀儡機(jī)才能達(dá)到攻擊效果,這就大大增加了攻擊的開銷。因此,攻擊者勢必要通過高負(fù)載比例或高請求速率來達(dá)到攻擊目的。
ULDM 模型通過用戶的忠實度來判斷用戶是否為忠實用戶,并以此為標(biāo)準(zhǔn)來檢測異常。對網(wǎng)站的訪問頻率較高,并且在多次訪問過程中沒有攻擊行為的用戶就具有較高的忠實度,相反,如果用戶很少訪問該網(wǎng)站或者在訪問過程中被檢測到有攻擊行為,則該用戶對該網(wǎng)站具有較低的忠實度,如果忠實度值低于閾值,則判斷其為攻擊用戶。
ULDM 模型如圖1所示,主要包括身份管理模塊、短期黑名單過濾模塊、忠實度計算模塊和調(diào)度模塊。其中,模型的核心為忠實度計算模塊,其又分為特征檢測、訪問頻率計算和忠實度計算3個子模塊。
圖1 ULDM 模型
由于代理、動態(tài)IP、局域網(wǎng)共享同一公網(wǎng)IP出口等情況的存在,用IP地址來標(biāo)識用戶很難保證其唯一性和準(zhǔn)確性。而要想獲得一個用戶的長時間的行為表現(xiàn),就需要能唯一確定用戶的身份。
本文使用cookie來唯一標(biāo)識用戶。身份管理過程如圖2所示,在用戶第一次訪問網(wǎng)站時,服務(wù)器會為新用戶分配一個唯一的身份ID,并用cookie將身份ID 寫入用戶的主機(jī),并將用戶加入數(shù)據(jù)庫中的忠實用戶表。用戶身份ID由兩組數(shù)字組成:一組是隨機(jī)生成的一組數(shù)字,另一組是用戶第一次訪問該網(wǎng)站時的時間戳。忠實用戶表用于管理用戶忠實度信息。在用戶再次發(fā)出請求時會攜帶他特有的身份ID,服務(wù)器端便可確認(rèn)其身份。此處ID 表示的不是用戶本身,而是終端設(shè)備。如果該客戶端在長期訪問中沒有表現(xiàn)異常,則說明其沒有成為攻擊者的傀儡機(jī),相反,如果該客戶端忠實度低于閾值,則認(rèn)為其已經(jīng)是被攻擊者控制的傀儡機(jī)。
Cookie文件是一種很小的文本文件,由服務(wù)端將其保存在客戶端,并在該客戶端對服務(wù)器端進(jìn)行訪問的時候?qū)⒃撐谋疚募l(fā)回給服務(wù)器。這項技術(shù)已經(jīng)被廣泛的應(yīng)用,大多數(shù)操作系統(tǒng)和瀏覽器都默認(rèn)允許使用cookie。因此,本文使用cookie將用戶的身份ID 保存在客戶端以進(jìn)行用戶身份管理。
圖2 身份管理過程
評估用戶的忠實度應(yīng)該包含兩方面:用戶行為忠實度和訪問頻率忠實度。行為忠實度又包括歷史行為忠實度和當(dāng)前行為忠實度。忠實度的取值范圍為 [0,100]。用戶忠實度低于閾值時會被認(rèn)定為不忠實用戶而被加入短期黑名單,在一段時間內(nèi)不能再對網(wǎng)站進(jìn)行訪問。用戶在第一次訪問網(wǎng)站時,訪問頻率忠實度會很低。且由于新用戶沒有不良記錄,歷史行為忠實度初始值設(shè)為35。如果一直表現(xiàn)良好,則忠實度會不斷上升,成為高忠實度用戶
式中:Li——用戶i的最終忠實度,LBi——用戶i的行為忠實度,LFi——用戶的訪問頻率忠實度。LBi∈(0,50],LFi∈ (0 ,50] 。
3.2.1 訪問頻率忠實度計算
訪問頻率忠實度是用戶忠實度中很重要的一個方面,用戶對網(wǎng)站訪問頻率反映了用戶對網(wǎng)站的喜愛程度。用戶對網(wǎng)站的訪問頻率越高,越能說明用戶是該網(wǎng)站的忠實用戶。但是,遠(yuǎn)期的訪問無法反映用戶當(dāng)前對網(wǎng)站的喜愛程度。因此,我們只統(tǒng)計最近一段時間內(nèi)的訪問頻率。本文設(shè)定一個滑動時間窗口T (本文中取T 為20天),隨著時間推移,訪問次數(shù)減去過期的訪問記錄數(shù),加上新的訪問記錄數(shù)。時間窗口TF固定不變,我們用固定時間窗口TF里的訪問頻率來計算用戶訪問頻率忠實度。這樣保證了當(dāng)用戶長時間不訪問時,其時間窗口內(nèi)的訪問頻率會隨著時間減小,訪問頻率忠實度也會逐漸衰減。用戶只有通過長期較高頻率的訪問才能得到較高的訪問頻率忠實度。因此,攻擊用戶想通過多次低價值的訪問來騙取訪問頻率忠實度的目的難以實現(xiàn)。
對訪問頻率忠實度的計算應(yīng)該滿足:①訪問頻率越高,用戶訪問頻率忠實度越大,即單調(diào)遞增;②為了更好地防止攻擊用戶騙取訪問頻率忠實度,訪問頻率忠實度在訪問頻率較低時應(yīng)緩慢上升,且應(yīng)該有上限。因此,我們使用一個S型函數(shù)sigmoid函數(shù)來計算用戶的訪問頻率忠實度
式中:Ci、Fi——用戶i在滑動時間窗口TF內(nèi)的訪問次數(shù)和訪問頻率,γ——訪問頻率忠實度上界,此處為50,α——傾斜系數(shù),控制訪問頻率忠實度的增長率,定為0.8,β——平移距離,定為1.5。訪問頻率忠實度變化曲線如圖3所示。
圖3 訪問頻率忠實度變化曲線
3.2.2 行為忠實度計算
行為忠實度描述了用戶在長期訪問網(wǎng)站過程中在行為表現(xiàn)上的友好程度。行為忠實度包括當(dāng)前行為忠實度和歷史行為忠實度。當(dāng)前行為忠實度描述了用戶在當(dāng)前會話中在行為表現(xiàn)上的友好程度。如果用戶訪問過程中被檢測到有攻擊行為,則被視為不友好,此次會話的當(dāng)前行為忠實度較低。歷史忠實度描述了用戶在之前的訪問過程中在行為表現(xiàn)上的友好程度,是用戶大量歷史行為表現(xiàn)不斷累積的結(jié)果。因此,歷史訪問行為對于評定一個用戶的行為表現(xiàn)有很重要的意義。必須對長期以來的歷史行為表現(xiàn)和當(dāng)前行為表現(xiàn)進(jìn)行綜合評估,才能得到更可信的行為忠實度。
同時還應(yīng)考慮到,當(dāng)用戶長期不訪問網(wǎng)站時,其歷史行為忠實度對其行為忠實度的評估價值會減小。因此,隨著訪問間隔的增長,歷史行為忠實度在行為忠實度計算中的比重應(yīng)該逐漸減小。用戶只有通過大量的正常訪問才能使行為忠實度達(dá)到較高忠實度。此外,如果用戶在訪問過程中被判定為有攻擊行為,則應(yīng)該受到對其不忠實行為的懲罰。該懲罰的力度應(yīng)遠(yuǎn)遠(yuǎn)大于行為忠實度增長的速度,以防止攻擊者進(jìn)行忠實度欺騙。
攻擊用戶被加入黑名單后,也有可能通過丟棄自己身份ID 的方式來換得新用戶的身份來重新訪問,但新用戶的忠實度偏低,如果行為異常,則很快會被重新加入黑名單
式中:LHBi——用戶i 的歷史行為忠實度,取值范圍為(0.50],LCBi——用戶當(dāng)前行為忠實度,取值范圍為 (0,50]。f(Δt)——?dú)v史行為忠實度在行為忠實度中所占的比重,Δt——用戶當(dāng)前訪問與上次訪問的時間間隔,a——區(qū)間 (0,1)中的一個常數(shù),決定f(Δt)的變化速度,文中定為0.9。A——設(shè)定的時間間隔為0時歷史行為忠實度的比重,也就是歷史行為忠實度的最大比重,本文中設(shè)為0.6。P——需要接受的不忠實行為懲罰,文中設(shè)為5忠實度值。Flag——根據(jù)是否發(fā)生攻擊產(chǎn)生的標(biāo)記值,flag ∈{0,1}。如果用戶在訪問過程中沒有攻擊行為,則flag=0,行為忠實度由歷史行為忠實度和當(dāng)前行為忠實度加權(quán)相加得到。相反,如果用戶被檢測出有攻擊行為,則flag=1,則要在之前基礎(chǔ)上減去P忠實度值的懲罰。
(1)正常用戶行為特征訓(xùn)練:通過第2節(jié)對正常用戶和攻擊用戶在行為特征上的分析可知,正常用戶在平均請求頻率和負(fù)載比例上與洪泛攻擊和高負(fù)載攻擊有很大的差異。因此我們可以統(tǒng)計分析正常用戶的行為特征,將統(tǒng)計結(jié)果作為正常行為的標(biāo)準(zhǔn)。
會話平均請求速率訓(xùn)練步驟:
步驟1 在無攻擊情況下,分析大量正常用戶的訪問記錄,得到所有會話的平均請求速率。
步驟2 分析得到的所有會話平均請求速率,在(0,Vmax]中找到一個合適的值Vst,使得(0,Vst]可以包含90%的會話請求速率。以Vst 作為正常用戶平均訪問速率的標(biāo)準(zhǔn)值。
會話請求負(fù)載比例訓(xùn)練步驟:
步驟1 對服務(wù)請求進(jìn)行分類,將請求按消耗資源大小分為高負(fù)載請求和低負(fù)載請求。
步驟2 在無攻擊情況下,分析大量正常用戶的訪問記錄,得到所有會話的請求負(fù)載比例。
步驟3 分析得到的所有會話負(fù)載比例,在(0,Lmax]中找到一個合適的值Lst,使得(0,Lst]可以包含90%的會話負(fù)載比例。以Lst作為正常用戶會話負(fù)載比例的標(biāo)準(zhǔn)值。
(2)行為忠實度計算:在用戶訪問過程中,每隔一個時間段tB(設(shè)為5s),特征檢測模塊會計算一次用戶從會話開始到當(dāng)前時間段內(nèi)的平均請求速率和負(fù)載比例
式中:nik——用戶i 在第k 個時間段tB中的請求數(shù)量,mik——用戶i在第k個時間段tB中的高負(fù)載請求數(shù)量。Vij和Lij——用戶i在從該會話開始到第j 個tB時間段之間的平均請求速率和負(fù)載比例。
然后將得到的請求速率和負(fù)載比例與訓(xùn)練得到的正常用戶的特征數(shù)據(jù)進(jìn)行比對,計算用戶在請求速率和負(fù)載比例上的偏離程度
給用戶平均請求速率和負(fù)載比例的偏離程度設(shè)定閾值dVT和dLT。當(dāng)DVi≥dVT或者DLi≥dVL時,則判斷該會話存在攻擊行為,斷開會話連接并將flag 值設(shè)為1。在會話結(jié)束時,計算該用戶在該會話中的當(dāng)前行為忠實度值
式中:B——用戶行為特征都在正常范圍內(nèi)時的當(dāng)前行為忠實度,此處為50,b—— (0,1)區(qū)間內(nèi)的常數(shù),本文中定為0.6。
當(dāng)一個會話請求到達(dá)ULDM 時,首先進(jìn)行身份認(rèn)證和黑名單過濾。如果請求通過,便進(jìn)入忠實度計算模塊計算用戶當(dāng)前行為忠實度、訪問頻率忠實度,并結(jié)合數(shù)據(jù)庫中保存的歷史行為忠實度計算得到該用戶的最終忠實度并據(jù)此判斷該用戶是否為忠實用戶。若忠實度小于閾值,則為不忠實用戶,直接將其加入短期黑名單,使其在一段時間內(nèi)不能再對網(wǎng)站進(jìn)行訪問。相反,如果忠實度大于閾值,則可繼續(xù)對網(wǎng)站進(jìn)行訪問。
短期黑名單的設(shè)置也符合現(xiàn)實中的忠實度規(guī)律,如果用戶在一段時間未對網(wǎng)站進(jìn)行訪問,那么就像之前分析的歷史忠實度會衰減一樣,不忠實程度也是逐漸減小的。因此在一段時間后,黑名單中用戶應(yīng)該可以以新用戶身份再次對網(wǎng)站進(jìn)行訪問。
在模擬實驗中,使用一臺3.4GHz雙核Inteli7-2600處理器的主機(jī)來模擬Web服務(wù)器和數(shù)據(jù)庫服務(wù)器。在服務(wù)器上運(yùn)行著新聞網(wǎng)站,用MySQL 來實現(xiàn)數(shù)據(jù)庫服務(wù)。具體實驗分為4個部分:
(1)模擬忠實用戶:給10臺主機(jī)各分配一個忠實度較高的UserID。然后讓具有不同興趣和習(xí)慣的10個人在1個小時內(nèi)多次對網(wǎng)站進(jìn)行訪問。將上述實驗過程重復(fù)20次,每次重新分配新的較高忠實度UserID。
(2)模擬新用戶:給10臺主機(jī)各分配一個只具有初始忠實度的UserID。然后讓具有不同興趣和習(xí)慣的10個人在1個小時內(nèi)多次對網(wǎng)站進(jìn)行訪問。將上述實驗過程重復(fù)20次,每次重新分配新的只具有初始忠實度的UserID。
(3)模擬請求洪泛攻擊:用另外5臺主機(jī)充當(dāng)攻擊用戶??軝C(jī)很多情況下為新用戶,因此作為新用戶進(jìn)行訪問。在每臺主機(jī)上用程序模擬10個用戶快速發(fā)送請求給服務(wù)端。將上述實驗重復(fù)6次。
(4)模擬高消耗請求攻擊:用另外5臺主機(jī)充當(dāng)攻擊用戶。在每臺主機(jī)上用程序模擬10個用戶以正常速率向服務(wù)端不斷發(fā)送高消耗請求。將上述實驗重復(fù)6次。
實驗結(jié)果見表1、表2。忠實度高的用戶在正常訪問過程中被判定為攻擊用戶的情況幾乎不會發(fā)生。忠實度較低的新用戶在正常訪問過程中有一定概率會被判定為攻擊用戶,但概率較低。而同樣作為新用戶的攻擊用戶,由于忠實度較低,且行為異常,被判定為攻擊用戶的概率很高。
表1 正常用戶判定結(jié)果
表2 攻擊用戶判定結(jié)果
本文針對應(yīng)用層DDoS攻擊,提出了一種基于用戶忠實度的ULDM 防御模型。該模型結(jié)合用戶長期的歷史表現(xiàn),對用戶長期與網(wǎng)站交互過程中的行為進(jìn)行評估,得出該用戶對網(wǎng)站的忠實度。通過用戶忠實度可以更準(zhǔn)確地區(qū)分正常用戶和攻擊用戶。實驗結(jié)果表明,該防御模型能很好保證正常用戶,尤其是高忠實度用戶在攻擊發(fā)生時可以正常對網(wǎng)站進(jìn)行訪問。與此同時,攻擊用戶也會因其異常行為表現(xiàn)而被評估為低忠實度,從而被檢測為攻擊用戶。
[1]ZHANG Yongzheng,XIAO Jun,YUN Xiaochun,et al.DDoS attack detection and control methods [J].Journal of Software,2012,23 (8):2058-2072 (in Chinese).[張永錚,肖軍,云曉春,等.DDoS攻擊檢測和控制方法 [J].軟件學(xué)報,2012,23 (8):2058-2072.]
[2]Beitollahi H,Deconinck G.Analyzing well-known countermeasures against distributed denial of service attacks [J].Computer Communications,2012,35 (11):1312-1332.
[3]Ehrlich W K,F(xiàn)utamura K,Liu D.An entropy based method to detect spoofed denial of service (dos)attacks [M]//Telecommunications Modeling,Policy,and Technology.USA:Springer,2008:101-122.
[4]Yu S,Zhou W,Doss R,et al.Traceback of DDoS attacks using entropy variations[J].IEEE Transactions on Parallel and Distributed Systems,2011,22 (3):412-425.
[5]WEI Bing,XU Zhen.Defense application layer DDoS attacks based authentication mechanism [J].Computer Engineering and Design,2010,31 (2):231-234 (in Chinese). [魏 冰,徐震.基于驗證機(jī)制的應(yīng)用層DDoS攻擊防御方法 [J].計算機(jī)工程與設(shè)計,2010,31 (2):231-234.]
[6]Ranjan S,Swaminathan R,Uysal M,et al.DDoS-shield:DDoS-resilient scheduling to counter application layer attacks[J].IEEE/ACM Transactions on Networking,2009,17(1):26-39.
[7]Devi S R,Yogesh P.An effective approach to counter application layer DDoS attacks[C]//Third International Conference on Computing Communication & Networking Technologies.IEEE,2012:1-4.
[8]Xie Yi,Yu Shun Zheng.A large-scale hidden semi-Markov model for anomaly detection on user browsing behaviors [J].IEEE/ACM Transactions on Networking,2009,17 (1):54-65.
[9]LI Jinling,WANG Binqiang,ZHANG Zhen.Attack detection of App-DDoS based on traffic analysis [J].Application Research of Computers,2013,30 (2):487-490 (in Chinese).[李錦玲,汪斌強(qiáng),張震.基于流量分析的App-DDoS攻擊檢測 [J].計算機(jī)應(yīng)用研究,2013,30 (2):487-490.]
[10]Yoon M K.Using whitelisting to mitigate DDoS attacks on critical internet sites [J].IEEE Communications Magazine,2010,48 (7):110-115. binary translator based on godson CPU [J].Computer Engineering,2009,35 (7):280-282 (in Chinese). [蔡嵩松,劉奇,王劍,等.基于龍芯處理器的二進(jìn)制翻譯器優(yōu)化 [J].計算機(jī)工程,2009,35 (7):280-282.]
[3]ZHANG Ji,LI Ningbo.Key technology research of simulator based on binary translation [J].Computer Engineering,2010,36 (16):246-248 (in Chinese).[張激,李寧波.基于二進(jìn)制翻譯的仿真器關(guān)鍵技術(shù)研究 [J].計算機(jī)工程,2010,36(16):246-248.]
[4]Wondracek G,Comparetti PM,Kruegel C,et al.Automatic network protocol analysis[C]//Proceedings of the 15th Annual Network and Distributed System Security Symposium,2008.
[5]Wang Z,Jiang X,Cui W,et al.ReFormat:Automatic reverse engineering of encrypted messages[C]//Proceedings of the European Symposium on Research in Computer Security,2009.
[6]FANG Xia,YIN Qing,JIANG Liehui,et al.Register parameter recovery method based on dataflow analysis [J].Computer Engineering,2009,35 (22):62-64 (in Chinese). [方霞,尹青,蔣烈輝,等.基于數(shù)據(jù)流分析的寄存器參數(shù)恢復(fù)方法 [J].計算機(jī)工程,2009,35 (22):62-64.]
[7]ZHANG Youwei,LIU Xiaochun,WANG Yonghong.Study of recognition algorithm for program section [J].Computer Engineering,2009,35 (5):72-73 (in Chinese). [張有為,劉小春,汪永紅.程序段識別算法研究 [J].計算機(jī)工程,2009,35 (5):72-73.]
[8]Mike Van Emmerik.Static single assignment for decompilation[M].USA:The University of Queensland School of Information Technology and Electrical Engineering,2007.
[9]WEN Yanhua,TANG Daguo,QI Fengbin.Register mapping and register function cutting out implementation in binary translation [J].Journal of Software,2009,20 (zk):1-7 (in Chinese).[文延華,唐大國,漆鋒濱.二進(jìn)制翻譯中的寄存器映射與剪裁的實現(xiàn) [J].軟件學(xué)報,2009,20 (zk):1-7.][10]LIAO Yin,SUN Guangzhong,JIANG Haitao,et al.All registers direct mapping method in dynamic binary translation[J].Computer Applications and Software,2011,28 (11):21-24 (in Chinese). [廖銀,孫廣中,姜海濤,等.動態(tài)二進(jìn)制翻譯中全寄存器直接映射方法 [J].計算機(jī)應(yīng)用與軟件,2011,28 (11):21-24.]
[11] WANG Ronghua,MENG Jianyi,CHEN Zhijian,et al.Condition code optimization in dynamic binary translation [J].Journal of Zhejiang University(Engineering Science),2014,48 (1):124-129 (in Chinese).[王榮華,孟建熠,陳志堅,等.動態(tài)二進(jìn)翻譯中的標(biāo)志位優(yōu)化算法 [J].浙江大學(xué)學(xué)報(工學(xué)版),2014,48 (1):124-129.]
[12]TANG Feng,WU Chenggang,F(xiàn)ENG Xiaobing,et al.Ef-LA algorithm based on dynamic feedback [J].Journal of Software,2007,18 (7):1603-1611 (in Chinese). [唐鋒,武成崗,馮曉兵,等.基于動態(tài)反饋的標(biāo)志位線性分析算法[J].軟件學(xué)報,2007,18 (7):1603-1611.]