亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        應(yīng)用于擬態(tài)Web服務(wù)器的相似度求解方法①

        2019-01-18 08:30:00喻衛(wèi)東
        計算機系統(tǒng)應(yīng)用 2019年1期
        關(guān)鍵詞:擬態(tài)字符串異構(gòu)

        王 燦, 倪 明, 喻衛(wèi)東, 黎 想

        (華東計算技術(shù)研究所, 上海 201808)

        國家互聯(lián)網(wǎng)信息中心2016年12月報告顯示, 中國網(wǎng)站總量達到475.4萬個. 網(wǎng)站給人們生活提供多種便利, 同時也遭受越來越多的安全威脅, Web服務(wù)器作為網(wǎng)站承載平臺, 已經(jīng)成為了網(wǎng)絡(luò)攻擊中的主要目標(biāo).為應(yīng)對越來越嚴(yán)峻的網(wǎng)絡(luò)安全挑戰(zhàn), 我國獨立自主提出了擬態(tài)防御技術(shù)[1], 擬態(tài)防御技術(shù)使用動態(tài)調(diào)度策略切換等價異構(gòu)執(zhí)行體, 構(gòu)造出動態(tài)異構(gòu)冗余的擬態(tài)環(huán)境, 利用所構(gòu)建環(huán)境的不確定性和非持續(xù)性切斷網(wǎng)絡(luò)攻擊鏈.

        擬態(tài)Web服務(wù)器[2]是擬態(tài)防御技術(shù)在網(wǎng)站系統(tǒng)中一個應(yīng)用, 在擬態(tài)網(wǎng)站系統(tǒng)中, 對每個異構(gòu)執(zhí)行體輸出結(jié)果合法性的判決是安全的前提, 表決器中的相似度求解算法則是表決器的核心內(nèi)容.

        目前現(xiàn)有擬態(tài)Web服務(wù)器的表決器中, 通過字符串編輯距離衡量異構(gòu)執(zhí)形體響應(yīng)網(wǎng)頁的相似度[3]. 但是擬態(tài)Web服務(wù)器的異構(gòu)執(zhí)行體在發(fā)揮防御能力的同時也一定程度上造成了不同平臺響應(yīng)的差異性, 其中很多差異并不會影響網(wǎng)頁的輸出效果, 卻很大程度上干擾了響應(yīng)網(wǎng)頁之間相似性的判決結(jié)果. 本文采用改進簡單樹匹配算法計算異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁的相似度,并應(yīng)用于擬態(tài)Web服務(wù)器的表決器中, 提高了表決器的效率和準(zhǔn)確性.

        1 基于字符串編輯距離的相似度求解

        字符串編輯距離是一種常用的字符串相似度指標(biāo).通過一些操作編輯一個字符串, 使其變成另外一個字符串, 編輯的最少次數(shù)即為衡量兩個字符串的相似度[4]指標(biāo). 在網(wǎng)頁相似性比較、網(wǎng)頁相關(guān)性排序以及快速模糊匹配等方面有很多應(yīng)用.

        1.1 字符串編輯距離求解

        編輯距離是指原字符串A經(jīng)過插入、刪除、替換三種編輯操作, 變成字符串B所需要的最少編輯次數(shù).

        設(shè)有2個字符串A和B:A=a1a2…am,B=b1b2…bm.式(1)構(gòu)造了A與B的(m+1)×(n+1)階匹配關(guān)系矩陣LD,矩陣的第1列是字符串A, 第1行是字符串B:

        匹配關(guān)系矩陣中的元素被稱為單元, 按如下方式計算:

        匹配關(guān)系矩陣中元素dmn即為字符串A和B之間的編輯距離, 用ld表示.

        1.2 基于LD的相似度計算公式

        字符串A和B的相似度可通過ld計算,ld越小,A和B越相似, 反之, 差異越大. 根據(jù)編輯距離求解A和B的相似度公式如下:

        式中,ld為字符串A和B之間的編輯距離, |A|和|B|分別表示2個字符串的長度.Similar(A,B)值越大, 說明字符串A和B越相似.

        異構(gòu)Web服務(wù)器對于網(wǎng)頁的請求響應(yīng)存在差異性, 通常情況下這種差異并不會影響輸出, 但是利用字符串編輯距離求解網(wǎng)頁相似度時, 卻會干擾相似度的計算結(jié)果. 而且網(wǎng)頁作為一種結(jié)構(gòu)化的內(nèi)容[5,6], 將網(wǎng)頁轉(zhuǎn)化成字符串利用編輯距離計算相似性時, 會跨越結(jié)構(gòu)層級比較, 忽略網(wǎng)頁原有結(jié)構(gòu)信息, 可能計算結(jié)果相似, 但呈現(xiàn)的結(jié)果卻有較大差異. 因此現(xiàn)有字符串編輯距離計算方法在擬態(tài)Web服務(wù)器系統(tǒng)應(yīng)用中存在短板. 本文為適用擬態(tài)Web服務(wù)器的要求, 給出了對節(jié)點采用編輯距離比較相似性的改進簡單樹匹配計算方法.

        2 基于改進簡單樹匹配的相似度求解

        針對擬態(tài)Web服務(wù)器中采用字符串編輯距離處理網(wǎng)頁字符串計算量大, 忽略原有網(wǎng)頁結(jié)構(gòu)信息等問題, 本文將異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁轉(zhuǎn)化成保留原結(jié)構(gòu)信息的DOM樹, 利用改進簡單樹匹配算法[7]計算異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁的相似度. DOM樹的節(jié)點是響應(yīng)網(wǎng)頁部分內(nèi)容, 為兼容異構(gòu)執(zhí)行體造成的差異性, 在比較DOM樹的節(jié)點時, 計算節(jié)點間的編輯距離, 根據(jù)編輯距離與所設(shè)閾值的大小判定節(jié)點是否相似.

        2.1 簡單樹匹配基本原理

        令S和T為兩棵樹,i和j分別為S和T上的節(jié)點.定義S和T的匹配為映射M, 節(jié)點對 (i,j)∈M,i、j不是根節(jié)點.S=(RS,S1,…,Sm)和T=(RT,T1,…,Tn)是兩棵DOM樹,RS、RT分別表示子樹S和子樹T的根節(jié)點,Si和Tj為第i個和第j個第1層子樹. 根據(jù)編輯距離判斷S、T兩棵樹的對應(yīng)節(jié)點是否匹配, 當(dāng)RS和RT匹配時,S和T最大匹配為MS,T+1,MS,T是<S1,S2,…,Sm>和<T1,T2,…,Tn>最大匹配.MS,T由動態(tài)規(guī)劃算法求出 ,步驟如下:

        步驟1. 若Sm和Tn最大匹配大于任意一個Sm和Ti(1≤i<n)最大匹配, 那么MS,T是<S1,S2,…,Sm-1>和<T1,T2, …,Tn-1>之間的最大匹配加上Sm和Tn的最大匹配.

        步驟 2. 否則,MS,T等于<S1,S2, …,Sm-1>和<T1,T2,…,Tn>之間的最大匹配或<S1,S2, …,Sm>和<T1,T2,…,Tn-1>之間的最大匹配相似.

        2.2 節(jié)點相似度計算

        擬態(tài)Web服務(wù)器異構(gòu)執(zhí)行體輸出結(jié)果會存在一定差異, 計算待匹配節(jié)點的編輯距離, 根據(jù)編輯距離差異程度判斷是否在可接受范圍內(nèi). 網(wǎng)頁DOM樹節(jié)點內(nèi)容的字串量不大, 采用改進字符串編輯距離方法計算對應(yīng)節(jié)點的相似度, 方法如下:

        式中,n1、n2 是 2 個節(jié)點內(nèi)容字符串, |pref|、|stuff|是字符串n1、n2最長公共前綴長度和最長公共后綴長度;lcs是n1、n2 去掉|pref|、|stuff|后剩余部分n1’、n2’的最長公共子串的長度;ed為n1、n2去掉|pref|和|stuff|后的編輯距離.

        如果Similar(n1,n2)>K1, 則判為相似, 否則判為不同.

        2.3 基本簡單樹匹配算法

        對樹S和T第一層進行遞歸匹配, 得到最大匹配,結(jié)果保存在W矩陣中, 根據(jù)矩陣W中的值計算矩陣M中的值. 算法如算法1.

        算法1. 簡單樹匹配STM(S, T)輸入: S, T輸出: 匹配的節(jié)點數(shù)IF 樹S和T的根節(jié)點不相似RETRUN 0 ELSE m=樹S第一層節(jié)點數(shù)n=樹T第一層節(jié)點數(shù)Initialize M[i, 0]=0 (i=0,…, m)M[0, j]=0 (j=0,…, n)FOR i=1:m FOR j=1:n M[i, j] = max(M[i, j-1], M[i-1, j], M[i-1, j-1]+W[i, j]);W[i, j]=STM(Si, Tj);ENDFOR ENDFOR RETURN M[m, n]+1 END

        圖2舉例說明了基本簡單樹匹配算法執(zhí)行過程.為求圖1中樹S和T的最大匹配, 首先進行第一層子樹的匹配, 定義M1-17[5, 3]是樹S和T第一層子樹的最大匹配; 由W1-17計算得到M1-17; 矩陣W1-17中的W[i,j]表示S和T第一層第i個和第j個子樹的最大匹配,繼續(xù)對M遞歸計算W值.

        執(zhí)行圖2運算流程, 可以求出兩棵樹的匹配節(jié)點個數(shù). 顯然, 圖1中S、T兩棵樹有7個節(jié)點匹配.

        圖1 兩顆DOM樹

        圖2 部分節(jié)點匹配矩陣

        2.4 相似度計算

        擬態(tài)Web服務(wù)器網(wǎng)頁防篡改應(yīng)用中, 表決器根據(jù)異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁的相似度進行判決. DOM樹T1和T2相似度定義[8]如下:

        式中, |T1|、|T2|分別是兩個樹的節(jié)點數(shù), STM(T1,T2)是樹T1和T2的最大匹配值.similarity(T1,T2)值越大, 表示網(wǎng)頁T1和T2越相似.

        3 擬態(tài)Web服務(wù)器防網(wǎng)頁篡改應(yīng)用

        網(wǎng)站作為復(fù)雜信息系統(tǒng), 漏洞無法避免. 常見Web服務(wù)系統(tǒng)包括Web服務(wù)器硬件漏洞、數(shù)據(jù)庫漏洞、操作系統(tǒng)漏洞、網(wǎng)站源碼漏洞等, 攻擊者通常利用其中的一個或多個漏洞進行攻擊.

        3.1 擬態(tài)Web服務(wù)系統(tǒng)基本模型

        擬態(tài)防御技術(shù)中動態(tài)異構(gòu)冗余機制[9,10](Dynamic Heterogeneous Redundancy, DHR)使得攻擊者無法建立穩(wěn)定的攻擊鏈接. 執(zhí)行體的冗余使得即便某個執(zhí)行體被攻擊破壞, 也不會對系統(tǒng)的輸出結(jié)果產(chǎn)生直接影響, 并且動態(tài)性保證了攻擊結(jié)果無法重現(xiàn), 大大降低了攻擊者攻擊成功的可能性.

        擬態(tài)Web服務(wù)器借助動態(tài)異構(gòu)冗余機制, 把Web服務(wù)系統(tǒng)部署在異構(gòu)執(zhí)行體上, 對輸出結(jié)果的一致性進行擇多判決后再輸出, 實現(xiàn)抗攻擊的目的.

        圖3是擬態(tài)Web服務(wù)系統(tǒng)架構(gòu)圖. 擬態(tài)Web服務(wù)系統(tǒng)由前端接入模塊、Web服務(wù)器池和控制器三部分組成. 前端輸入模塊主要實現(xiàn)了輸入代理和輸出代理兩個功能, 是用戶訪問的實際入口和實際出口. 輸入代理根據(jù)特定分發(fā)機制將用戶請求分發(fā)至Web服務(wù)器池中的執(zhí)行體上, 輸出代理也被稱為表決器, 根據(jù)特定判決算法對來自不同執(zhí)行體響應(yīng)進行表決輸出. 池中包含多樣、異構(gòu)、冗余的執(zhí)行體, 對外界提供Web服務(wù). 實際使用中, Web服務(wù)器池中只有一個執(zhí)行體在線, 接收前端接入模塊分發(fā)請求并做出回應(yīng); 池中其余執(zhí)行體一直處于待機狀態(tài), 等待控制器模塊的上線指令. 控制器模塊根據(jù)系統(tǒng)異構(gòu)性最大化策略調(diào)度池中的執(zhí)行體, 降低了執(zhí)行體的持續(xù)暴露時間和系統(tǒng)中存在一致性漏洞的可能性.

        圖3 擬態(tài)Web服務(wù)器架構(gòu)圖

        圖3中的管理中心模塊主要起到監(jiān)測作用, 檢測系統(tǒng)中其他模塊運行狀態(tài), 處理各個模塊的正異常信息, 保證擬態(tài)Web服務(wù)器正常運行.

        3.2 求解方法在擬態(tài)Web服務(wù)器的應(yīng)用

        在擬態(tài)Web服務(wù)器的表決器中, 將響應(yīng)網(wǎng)頁解析成DOM樹形式, 使DOM樹除了包含網(wǎng)頁展示的文本信息外[11,12], 還包含動態(tài)腳本信息. 對處理后的網(wǎng)頁 DOM樹用改進簡單樹匹配方法求最大匹配, 計算相似度值.

        計算兩個網(wǎng)頁的相似度值時, 采用遞歸方式對DOM樹進行匹配, 求解樹的待匹配節(jié)點的字符串計算編輯距離, 根據(jù)對應(yīng)節(jié)點編輯距離的差異程度判斷是否匹配. 統(tǒng)計出DOM樹中節(jié)點匹配的個數(shù).

        在計算異構(gòu)執(zhí)行體Web服務(wù)器響應(yīng)網(wǎng)頁T1和T2的相似度之前, 將T1和T2作為普通字符串計算兩者長度的比值, 并將計算結(jié)果與設(shè)置的閾值K2進行比較, 若比值大于K2, 則說明兩個網(wǎng)頁的差異較大, 直接判定為不同, 不予輸出; 若比值小于等于閾值K2, 表決器利用特定相似度計算算法進行相似度判決, 計算出T1、T2的相似度值后與所設(shè)置的閾值K3進行比較. 若兩個網(wǎng)頁相似度大于等于K3, 則說明兩個網(wǎng)頁差異在允許的范圍內(nèi), 可判定為合法響應(yīng), 予以輸出; 若相似度小于K3, 則說明兩個網(wǎng)頁之間差異不在允許范圍內(nèi),判定為非法響應(yīng), 不予輸出. 表決器執(zhí)行流程如圖4所示.

        圖4 表決器處理流程圖

        4 實驗結(jié)果分析

        擬態(tài)Web服務(wù)器網(wǎng)頁防篡改應(yīng)用場景中, 計算效率和計算準(zhǔn)確性是兩個重要的評價指標(biāo). 本文中, 為驗證本方法的可用性, 采用計算效率和計算準(zhǔn)確性兩個指標(biāo)與現(xiàn)使用算法進行比較. 實驗將中電集團某研究所的官方網(wǎng)站部署到擬態(tài)Web服務(wù)器上. 基于字符串編輯距離的計算方法是通過計算兩個字符串的編輯距離判斷相似性, 于是在現(xiàn)有經(jīng)典算法中將響應(yīng)網(wǎng)頁看成一個字符串進行完全比較. 改進簡單樹匹配方法中,把響應(yīng)網(wǎng)頁所轉(zhuǎn)換成的DOM樹進行匹配. 首先, 分別對具有差異性的8對網(wǎng)頁利用兩種算法計算相同請求中異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁的相似度, 記錄相似度值和計算所用時間.

        實驗中, 保存了Ubuntu和Centos兩個虛擬機執(zhí)行體Web服務(wù)器中有差異的8對網(wǎng)頁, 在表決器中分別使用經(jīng)典方法和改進簡單樹匹配方法計算每對網(wǎng)頁之間的相似度值并分別記錄耗時. 測試環(huán)境為CPU: E5 4 核; 內(nèi)存: 8 GB; 操作系統(tǒng): CentOS-7 64 位.

        分別設(shè)計基于經(jīng)典算法和本文算法的表決器, 對8對網(wǎng)頁相似度進行計算. 圖5和圖6為得到的相似度計算結(jié)果. 圖中結(jié)果顯示, 兩種算法所計算的正常網(wǎng)頁的相似度的結(jié)果差異不明顯, 改進的算法對網(wǎng)頁差異容忍度比經(jīng)典算法略高, 但是差異不大, 不會對比較結(jié)果造成明顯影響.

        圖5 a網(wǎng)站相似度求解算法結(jié)果對比

        表1中記錄8對網(wǎng)頁分別采用經(jīng)典方法和本文改進簡單樹匹配算法計算相似度的耗時結(jié)果, 對比表中數(shù)據(jù)可以看出, 本文所用改進算法大幅降低了計算耗時, 原因是改進算法中, 僅對網(wǎng)頁可展示部分以及部分腳本進行比較計算, 大大縮減了需要計算的字符串量.從表中還可以看出, 本文所用改進方法在計算網(wǎng)頁的DOM樹相似性時, 計算耗時與編輯距離和節(jié)點距離并不是線性關(guān)系. 其原因是, 改進的字符串匹配算法在比較網(wǎng)頁的相似度時, 采用的是遞歸的方式遍歷整棵DOM樹, 網(wǎng)頁被篡改的位置越靠近根節(jié)點, 所需計算時間越短, 差異地方越靠近葉節(jié)點, 所需時間越長. 實際應(yīng)用場景中, DOM樹葉節(jié)點對應(yīng)著網(wǎng)頁頁面上重要性相對低的位置, 這些位置被篡改價值低, 通常這些位置不會發(fā)生篡改, 因此改進方法可以防范常規(guī)的網(wǎng)頁篡改攻擊.

        圖6 b網(wǎng)站相似度求解算法結(jié)果對比

        表1 網(wǎng)頁相似性計算時間

        實驗2, 在擬態(tài)防御系統(tǒng)中, 針對Centos虛擬機的在線Web服務(wù)器發(fā)起篡改網(wǎng)頁攻擊, 改變本實驗中網(wǎng)頁4的信息. 篡改形式包括更改官網(wǎng)標(biāo)題、篡改官網(wǎng)超鏈接信息以及在網(wǎng)頁上嵌入惡意腳本信息等. 分別利用改進簡單樹匹配方法和現(xiàn)有經(jīng)典方法計算被篡改網(wǎng)頁的相似度. 根據(jù)網(wǎng)頁被篡改前后相似度的變化程度判斷算法性能, 理論上, 變化幅度越明顯, 越能反應(yīng)網(wǎng)頁被篡改的實際情況.

        從圖7中可看出, 網(wǎng)頁被篡改后利用經(jīng)典算法和改進簡單樹匹配方法所計算的相似度均出現(xiàn)一定程度下降. 但從圖中曲線變化趨勢來看, 針對前兩種篡改手段, 改進簡單樹匹配算法在網(wǎng)頁被篡改后有較明顯的下降趨勢, 在網(wǎng)頁嵌入惡意腳本攻擊情況下, 也保持了和現(xiàn)有經(jīng)典方法相近的趨勢. 實驗結(jié)果表明, 在擬態(tài)Web服務(wù)器中, 與現(xiàn)使用方法相比, 本文所采用改進簡單樹匹配算法能夠在一定程度適應(yīng)異構(gòu)執(zhí)行體Web服務(wù)器自身差異的基礎(chǔ)上, 提高了擬態(tài)防御系統(tǒng)中表決器對于網(wǎng)頁相似度計算所要求的準(zhǔn)確性和計算效率.

        圖7 篡改網(wǎng)頁檢測效果

        5 結(jié)論與展望

        針對擬態(tài)Web服務(wù)器的應(yīng)用場景, 結(jié)合字符串編輯距離計算方法和簡單樹匹配算法, 本文設(shè)計了一種符合擬態(tài)Web服務(wù)器系統(tǒng)中表決器需求的改進簡單樹匹配算法, 并用其計算擬態(tài)Web服務(wù)器中異構(gòu)執(zhí)行體響應(yīng)網(wǎng)頁的相似度. 實驗結(jié)果表明, 本文所使用的算法更適用于擬態(tài)Web服務(wù)器異構(gòu)環(huán)境下的表決器判決場景, 在測試環(huán)境中提高了表決器的計算效率和準(zhǔn)確性, 對于被篡改網(wǎng)頁有明顯檢測效果. 今后將對插入腳本篡改攻擊檢測不明顯、深層節(jié)點篡改檢測效率優(yōu)化等方面做進一步的研究.

        猜你喜歡
        擬態(tài)字符串異構(gòu)
        試論同課異構(gòu)之“同”與“異”
        章魚大師的擬態(tài)課堂
        中韓擬聲詞擬態(tài)詞形態(tài)上的特征
        模仿大師——擬態(tài)章魚
        關(guān)于擬聲擬態(tài)詞的考察
        overlay SDN實現(xiàn)異構(gòu)兼容的關(guān)鍵技術(shù)
        LTE異構(gòu)網(wǎng)技術(shù)與組網(wǎng)研究
        在新興異構(gòu)SoCs上集成多種系統(tǒng)
        一種新的基于對稱性的字符串相似性處理算法
        依據(jù)字符串匹配的中文分詞模型研究
        少妇夜夜春夜夜爽试看视频| 男女发生关系视频网站| 亚洲免费一区二区av| 国产人妻鲁鲁一区二区| 人妻av无码系列一区二区三区 | 无码天堂亚洲国产av麻豆| 亚洲无av高清一区不卡| 男女av一区二区三区| 精品国产乱码久久久久久影片| 91亚洲无码在线观看| 粉嫩的18在线观看极品精品| 精品人妻av区乱码色片| 少妇被猛男粗大的猛进出| 超碰日韩AV在线| 国产激情视频在线观看首页| 国产a级毛片久久久精品毛片| 亚洲午夜福利在线观看| 久久久久久久久国内精品影视| 亚洲第一大av在线综合| 国产丝袜美女| 精品综合久久久久久97超人| 国产一区二区三区杨幂| 97精品人妻一区二区三区在线| 性裸交a片一区二区三区| 九九精品无码专区免费| 久久久精品久久久国产| 国产69精品久久久久9999apgf| 亚洲一本大道无码av天堂| 无码91 亚洲| 精品国产自在现线看久久| 欧洲熟妇色 欧美| 久久久久国产一级毛片高清版A | 黄片视频免费在线播放观看| 国产精品一区二区久久不卡| 久久久久国产亚洲AV麻豆| 美女被内射很爽的视频网站| 性饥渴的农村熟妇| 九九精品视频在线观看| 丰满人妻被猛烈进入中文字幕护士| 老鸭窝视频在线观看| 亚洲日韩精品欧美一区二区一 |