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

        ?

        基于關(guān)聯(lián)分析的Webshell檢測方法研究

        2018-04-02 03:03:28
        信息安全研究 2018年3期
        關(guān)鍵詞:關(guān)聯(lián)規(guī)則特征

        周 穎 胡 勇

        (四川大學(xué)電子信息學(xué)院 成都 610065) (304941296@qq.com)

        根據(jù)2017年Trustwave《2017全球安全報(bào)告》顯示,99.7%的Web應(yīng)用都有安全漏洞[1].Webshell以動態(tài)腳本形式存在,攻擊者可以利用檢測到的安全漏洞將其上傳到受到威脅的Web服務(wù)器,以便遠(yuǎn)程執(zhí)行任意命令,獲取并提升管理權(quán)限[2],達(dá)到滲透入侵的目的.為逃避檢測,經(jīng)常對其加密混淆處理,使得Webshell的形式靈活多變,然而大多數(shù)安全產(chǎn)品僅通過建立惡意代碼集合特征,基于特征匹配的方法實(shí)現(xiàn)檢測,這會出現(xiàn)覆蓋不全、準(zhǔn)確率降低等問題.因此,本文針對Webshell特征混淆技術(shù)將統(tǒng)計(jì)學(xué)檢測結(jié)果的數(shù)值作為樣本特征,提出基于關(guān)聯(lián)分析的Webshell檢測方法,建立特征頻繁項(xiàng)集獲得關(guān)聯(lián)規(guī)則,利用算法實(shí)現(xiàn)檢測并提高準(zhǔn)確率.

        1 相關(guān)工作

        Webshell的運(yùn)作流程可理解為入侵者通過瀏覽器以HTTP協(xié)議訪問Web服務(wù)器上的接口文件.根據(jù)攻擊者編寫惡意代碼從一句話Webshel到可實(shí)現(xiàn)數(shù)據(jù)庫操作、文件上傳下載等功能型Webshell,可從惡意代碼量和其實(shí)現(xiàn)功能性實(shí)現(xiàn)檢測.文獻(xiàn)[3]通過選取頁面結(jié)構(gòu)特征和文本特征利用SVM分類方法實(shí)現(xiàn)檢測,該方法在檢測未變異處理的Webshell上有較高的檢測率,但由于特征選取僅僅只針對前端頁面代碼特征,對功能型或混淆后的Webshell的檢測率有待驗(yàn)證;文獻(xiàn)[4]通過提取Webshell腳本文本特征和部分操作函數(shù)調(diào)用特征,采用矩陣分解模型量化特征值,獲得相應(yīng)的評分矩陣與待檢測矩陣實(shí)現(xiàn)檢測,能一定概率完成對未知頁面的預(yù)測,但檢測中選取的特征過多,在數(shù)據(jù)處理時(shí)存在過擬合情況,影響檢測結(jié)果,并且僅從文本上取特征對混淆后的Webshell檢測準(zhǔn)確率低.因此,本文針對Webshell的混淆性采用多種統(tǒng)計(jì)學(xué)特征作為檢測樣本特征,提出基于關(guān)聯(lián)分析的Webshell檢測模型,能快速建立特征庫并有效檢測混淆技術(shù)處理后的Webshell,在降低成本的同時(shí)提高檢測的效率和準(zhǔn)確率.

        1.1 Webshell特征混淆技術(shù)

        目前,Webshell檢測工具還是以特征匹配掃描方式為主,這不僅依賴特征庫建立是否全面可靠,而且不能有效檢測各種特征混淆方法隱藏處理后的Webshell.因此,需針對Webshell特征混淆技術(shù)采取相應(yīng)的對策,有效提取其特征數(shù)據(jù).Webshell主要有以下幾種混淆特征的方法[5]:

        1) 使用加解密技術(shù).對Webshell中的特征數(shù)據(jù)預(yù)先進(jìn)行加密,待執(zhí)行時(shí)再動態(tài)解密,加密后的參數(shù)一般比正常參數(shù)長度更長,因此可從加解密函數(shù)以及參數(shù)特征進(jìn)行檢測.

        2) 無用信息插入.例如在PHP編寫環(huán)境中插入注釋不影響代碼正常執(zhí)行但會影響查殺,因此在處理此類特征提取時(shí),應(yīng)去掉類似注釋等無用信息以減小干擾.

        3) 字符串連接技術(shù).功能型Webshell執(zhí)行調(diào)用后臺系統(tǒng)組件時(shí),可通過拆分組件名稱、在字符串中插入或替換特殊字符等方式來避免被檢測到調(diào)用相關(guān)組件.因此,可預(yù)先對調(diào)用組件、函數(shù)和字符處理相關(guān)函數(shù)進(jìn)行檢測.

        4) 化整為散技術(shù).關(guān)鍵函數(shù)或參數(shù)過于集中時(shí)特征表現(xiàn)明顯,易被檢測.但若將完整頁面拆分,降低關(guān)鍵函數(shù)參數(shù)的集中出現(xiàn)頻次,再用如include包含指令整合,則可逃避檢測.因此,檢測該類Webshell時(shí),需載入頁面相關(guān)文件后再檢測.

        5) 多重編碼技術(shù).類似于代碼加密,通過自定義函數(shù)加密、多次編碼特征數(shù)據(jù)實(shí)現(xiàn)混淆干擾.因此對于此類惡意樣本需先多次解碼后再檢測.

        1.2 Webshell特征提取

        針對Webshell的混淆技術(shù),本文就混淆后的Webshell提取以下特征[6]進(jìn)行檢測:

        1) 重合指數(shù)

        重合指數(shù)可用于衡量文件代碼是否被加密或混淆過,通常Webshell在使用加密混淆技術(shù)后變得雜亂,從腳本代碼上看,Webshell也常包含二進(jìn)制或者十六進(jìn)制序列,因此計(jì)算混淆后的文件中擴(kuò)展ASCII碼(254個(gè)字符)的重合指數(shù),指數(shù)值越低,是Webshell的可能性越大.若設(shè)一個(gè)長度為n的密文字符串X中,2個(gè)隨機(jī)元素相同概率為

        (1)

        其中,i為任意字符,Z為字符種類數(shù),P即為該密文字符的重合指數(shù).

        2) 信息熵

        通過使用ASCII碼表衡量文件的不確定性.編碼變形后,Webshell含有大量特殊字符、隨機(jī)內(nèi)容等會產(chǎn)生更多的ASCII碼,此時(shí)計(jì)算得到的熵值比正常樣本大,并可衡量Webshell區(qū)別于正常文件的不確定性.信息熵計(jì)算公式如下:

        (2)

        (3)

        其中,n為ASCII碼,且不等于127(127為空格字符,沒有實(shí)際意義,不納入計(jì)算),Xn為第n位ASCII碼在該文件中出現(xiàn)的次數(shù),S為總字符數(shù).

        3) 最長字符串

        最長字符串為文件中最長不間斷的字符串.經(jīng)過Webshell偽造處理后的代碼可生成無空格間斷的長字符串,這明顯有別于正常編碼存儲方式,因此,一般樣本文件中含有特別長的字符串時(shí)可作為檢測特征之一.

        4) 文件壓縮比

        文件壓縮比為壓縮后文件大小與原始文件大小之比.實(shí)質(zhì)在于消除特定字符的分配不均,經(jīng)編碼后的Webshell消除了非編碼字符,表現(xiàn)為更小的分布不均衡,此時(shí)的壓縮比的值大于正常文件.

        5) 基于特征庫匹配

        參考主流特征庫匹配檢測如eval,exec等常用函數(shù)、已知特征碼等,選用準(zhǔn)確性和實(shí)用性較高的幾種.目前使用較多的D盾[7]通過惡意字符串特征庫進(jìn)行特征匹配檢測Webshell;河馬Webshell[8]通過結(jié)合傳統(tǒng)特征庫和云端大數(shù)據(jù)雙引擎查殺技術(shù)實(shí)現(xiàn)檢測.

        2 基于關(guān)聯(lián)分析的Webshell檢測模型

        基于關(guān)聯(lián)分析的檢測模型是一種無監(jiān)督的機(jī)器學(xué)習(xí)過程,最早是由Agrawal等人[9-10]提出,通過分析數(shù)據(jù)集,挖掘出所選特征潛在的關(guān)聯(lián)規(guī)則.通過對已標(biāo)記樣本數(shù)據(jù)學(xué)習(xí),設(shè)定項(xiàng)集的支持度、置信度得到關(guān)聯(lián)規(guī)則,數(shù)據(jù)庫中包含(支持)項(xiàng)集的事務(wù)的數(shù)目稱為項(xiàng)集X的支持度計(jì)數(shù),記為

        σ(X)=|{ti|X?ti,ti∈T}|,

        (4)

        其中,T為事務(wù)的集,ti為某個(gè)特定項(xiàng)集,用于衡量關(guān)聯(lián)規(guī)則在整個(gè)數(shù)據(jù)集中統(tǒng)計(jì)的重要性;關(guān)聯(lián)規(guī)則X→Y的置信度代表Y在包含X的事務(wù)中出現(xiàn)的頻繁程度為

        (5)

        用于衡量關(guān)聯(lián)規(guī)則的可信度.

        基于關(guān)聯(lián)分析的檢測模型如圖1所示:

        圖1 Webshell檢測模型框架

        首先收集獲取數(shù)據(jù)樣本,針對樣本W(wǎng)ebshell的混淆技術(shù)采用上述5類特征進(jìn)行提取,并生成相應(yīng)的特征庫;然后采用關(guān)聯(lián)分析中的Apriori算法和FP-Growth算法訓(xùn)練樣本;最后使用該分類器對混淆后的Webshell進(jìn)行分類生成相應(yīng)的關(guān)聯(lián)規(guī)則,并輸出檢測結(jié)果.

        2.1 Apriori算法

        Apriori算法是一種同時(shí)滿足最小支持度閾值和最小置信度閾值的關(guān)聯(lián)規(guī)則挖掘算法.Apriori算法使用頻繁項(xiàng)集的先驗(yàn)知識,通過逐層搜索的迭代方法探索項(xiàng)集度.在Webshell的檢測中,可以通過關(guān)聯(lián)分析得到多個(gè)特征結(jié)果的關(guān)聯(lián)規(guī)則,避免某一個(gè)檢測結(jié)果對檢測的誤判或遺漏.由于各特征值都表明了一個(gè)檢測樣本為Webshell的可能性,而關(guān)聯(lián)分析法無法直接對數(shù)值進(jìn)行分類,因此編寫Java程序?qū)x取的特征的數(shù)值進(jìn)行定義描述,根據(jù)特征結(jié)果劃分描述范圍,使得數(shù)值集中的特征在同一類描述中,對訓(xùn)練樣本和測試樣本的數(shù)據(jù)按照同樣的標(biāo)準(zhǔn)進(jìn)行分組.Apriori算法通過掃描事務(wù)記錄會找出所有頻繁項(xiàng)集,并記為第1類,再利用第1類項(xiàng)集根據(jù)設(shè)置的支持度篩選出滿足要求的其他4類集合的項(xiàng)集.在這個(gè)過程中不斷獲取新的數(shù)據(jù)集合,并重新掃描計(jì)數(shù),直到不能再找出任何頻繁項(xiàng)集為止.最后根據(jù)找出的所有頻繁項(xiàng)集得到符合要求的強(qiáng)規(guī)則度,即為檢測Webshell的關(guān)聯(lián)規(guī)則.本文利用求得的關(guān)聯(lián)規(guī)則,判斷被檢測文件是否為Webshell.

        2.2 FP-Growth算法

        在Apriori算法中一個(gè)較為明顯的缺陷在于對每個(gè)潛在的頻繁項(xiàng)集都會掃描數(shù)據(jù)集判定并重新計(jì)數(shù)[11],Han等人[12]提出的FP-Growth算法基于Apriori算法,采用構(gòu)建FP樹,并從FP樹中挖掘頻繁項(xiàng)集,大大減少掃描次數(shù),提高算法速度.本文為對比這2種算法運(yùn)行速率,還采用FP-Growth算法將相同樣本存儲在稱為FP樹的緊湊數(shù)據(jù)結(jié)構(gòu)中,F(xiàn)P代表頻繁模式,通過鏈接來連接相關(guān)聯(lián)的特征,被連接起的元素看成一個(gè)鏈表.在FP樹中,一個(gè)元素項(xiàng)可在一棵樹中出現(xiàn)多次,在FP樹中存儲項(xiàng)集出現(xiàn)的頻率,即在檢測中記錄單個(gè)特征出現(xiàn)的頻次并與另一特征相關(guān)聯(lián),出現(xiàn)相似元素集合時(shí)則共享樹的一部分,完全不同時(shí)樹出現(xiàn)分叉,最終通過訓(xùn)練學(xué)習(xí)獲得Webshell的FP檢測結(jié)構(gòu)樹,樹中存儲符合閾值的關(guān)聯(lián)規(guī)則.本文將用這2種關(guān)聯(lián)分析方法實(shí)現(xiàn)對Webshell的檢測,并選取相同樣本對2種算法進(jìn)行對比.

        3 仿真實(shí)驗(yàn)

        3.1 特征提取及參數(shù)選擇

        Webshell一般有ASP,PHP,JSP等網(wǎng)頁文件形式,由于編寫相似且實(shí)現(xiàn)功能類似,對應(yīng)的檢測模型也一致,故選擇使用率較高的開發(fā)語言PHP編寫的Webshell腳本作為實(shí)驗(yàn)數(shù)據(jù).本文搜集了465個(gè)惡意PHPWebshell樣本和968個(gè)正常PHP頁面樣本作為本次實(shí)驗(yàn)數(shù)據(jù),把搜集到的所有樣本分為5份,任選4份進(jìn)行機(jī)器學(xué)習(xí),并檢測余下樣本,根據(jù)平均結(jié)果評估模型的檢測能力.

        本文使用開源工具NeoPI[13]量化每個(gè)樣本特征,表1列出樣本中部分Webshell量化值.

        由于利用Weka采用關(guān)聯(lián)分析對樣本進(jìn)行樣本數(shù)據(jù)處理時(shí),算法無法直接對數(shù)值進(jìn)行處理分析,需對數(shù)值進(jìn)行定義描述,因此本文將5種特征值的大小分別按高、中、低3類進(jìn)行定義描述,表2列出Webshell樣本在特征描述對應(yīng)的數(shù)值范圍.

        表1 部分Webshell特征量化值

        表2 Webshell樣本特征值范圍定義描述

        3.2 算法比較

        為了測試2種關(guān)聯(lián)分析法的性能,實(shí)驗(yàn)從數(shù)據(jù)集中提取同樣數(shù)量的樣本數(shù),分別用Apriori算法和FP-Growth算法生成相應(yīng)的檢測規(guī)則,從生成檢測規(guī)則的時(shí)間和正確率進(jìn)行比較,結(jié)果如表3所示.從表3可以看出,在處理相同樣本數(shù)據(jù)的情況下,2種算法在檢測正確率方面相差不大,但在生成規(guī)則時(shí)間上FP-Growth算法有明顯的提升,體現(xiàn)了其在頻繁集上的優(yōu)化.

        表3 Apriori算法和FP-Growth算法的比較結(jié)果

        3.3 實(shí)驗(yàn)結(jié)果及分析

        為了更準(zhǔn)確地評估關(guān)聯(lián)分析法檢測的準(zhǔn)確率,本文還采用準(zhǔn)確率、召回率、F值評測[14]進(jìn)行評估.準(zhǔn)確率是指正確檢測出Webshell的數(shù)量占所有檢測樣本的比例;召回率是指正確檢測出Webshell數(shù)量占所有Webshell數(shù)量的比例.對應(yīng)的結(jié)果分類情況如表4所示:

        表4 預(yù)測結(jié)果分類

        具體計(jì)算公式如下:0代表False(Negative),1代表True(Negative),TN代表實(shí)際結(jié)果為True但預(yù)測結(jié)果為Negative.預(yù)測的準(zhǔn)確度為

        (6)

        召回率為

        (7)

        F值為

        (8)

        顯然準(zhǔn)確率、召回率、F值越高檢測結(jié)果越好.

        將處理好的樣本與機(jī)器學(xué)習(xí)工具Weka3.8進(jìn)行實(shí)驗(yàn),選擇相應(yīng)的算法規(guī)則與現(xiàn)有的2種檢測工具的準(zhǔn)確率進(jìn)行對比,實(shí)驗(yàn)結(jié)果如表5所示:

        表5 Webshell的準(zhǔn)確率、召回率及F值預(yù)測結(jié)果 %

        從實(shí)驗(yàn)結(jié)果可以看出,關(guān)聯(lián)分析法在準(zhǔn)確率、召回率、F值評測的結(jié)果較其他2種檢測工具更好,說明利用該方法進(jìn)行Webshell的檢測是有效的.

        4 結(jié) 語

        本文針對Webshell特征混淆,采用關(guān)聯(lián)分析法對Webshell進(jìn)行檢測,可以準(zhǔn)確快速地檢測出惡意Webshell,并通過在同類檢測工具的分析比較中表現(xiàn)出了較好的性能.但由于樣本選取數(shù)量有限,在2種關(guān)聯(lián)方法生成關(guān)聯(lián)規(guī)則的效率上對比不夠明顯,同時(shí)還應(yīng)考慮訓(xùn)練樣本數(shù)量的增加對算法模型生成速度也有一定的影響,在機(jī)器學(xué)習(xí)算法上可以對關(guān)聯(lián)分類候選頻繁項(xiàng)集進(jìn)行篩選,減少頻繁項(xiàng)集生成遍歷次數(shù),也可以縮小待掃描集合范圍,降低算法時(shí)間復(fù)雜度,提升檢測模型的性能,并且僅依靠樣本數(shù)據(jù)和自身數(shù)據(jù)的建立不能滿足新的防護(hù)要求,需要進(jìn)一步研究有關(guān)檢測的優(yōu)化方法.

        [1]Trustwava. 2017 Trustwave Global Security Report[EBOL]. 2017 [2018-02-15]. https:www.trustware.comResourcesLibraryDocuments2017Trustware-Global-Securiby-Report

        [2]Starov O, Dahse J, Ahmad S S, et al. No honor among thieves: A large-scale analysis of malicious Web shells[C]Proc of Int Conf on World Wide Web. 2016: 1021-1032

        [3]葉飛, 龔儉, 楊望. 基于支持向量機(jī)的Webshell黑盒檢測[J]. 南京航空航天大學(xué)學(xué)報(bào), 2015, 47(6): 924-930

        [4]Dai H, Dai H, Dai H. A matrix decomposition based Webshell detection method[C]Proc of Int Conf on Cryptography, Security and Privacy. New York: ACM, 2017: 66-70

        [5]潘杰. 基于機(jī)器學(xué)習(xí)的Webshell檢測關(guān)鍵技術(shù)研究[D]. 天津: 中國民航大學(xué)計(jì)算機(jī)學(xué)院, 2015: 16-17

        [6]馬艷發(fā). 基于WAF入侵檢測和變異WebShell檢測算法的Web安全研究[D]. 天津: 天津理工大學(xué), 2016: 13-15

        [7]D盾. D盾_Web查殺[EBOL]. [2018-02-15]. http:www.d99net.net

        [8]河馬Webshell. Webshell.pub[EBOL].[2018-02-15]. http:www.webshell.pub

        [9]Agrawal R, Srikant R. Fast algorithms for mining association rules in large databases[C]Proc of Int Conf on Very Large Data Bases. San Francisco: Morgan Kaufmann, 1994: 487-499

        [10]Agrawal R, Imieliński T, Swami A. Mining assocation rules between sets of items in large databases[J]. AcmSigmod Record, 1993, 22(2): 207-216

        [11]王文槿, 劉寶旭. 一種基于關(guān)聯(lián)規(guī)則挖掘的入侵檢測系統(tǒng)[J]. 核電子學(xué)與探測技術(shù), 2015, 35(2): 119-123

        [12]Han J, Pei J, Yin Y. Mining frequent patterns without candidate generation[J]. ACM SIGMOD Record, 1999, 29(2): 1-12

        [13]NeoPI: Detection of Webshells using statistical methods[EBOL]. (2014-09-18) [2018-02-15]. https:github.comNeoPI

        [14]李航. 統(tǒng)計(jì)學(xué)習(xí)方法[M]. 北京: 清華大學(xué)出版社, 2012

        周穎

        碩士研究生,主要研究方向?yàn)閃eb安全.

        304941296@qq.com

        胡勇

        副教授,碩士生導(dǎo)師,主要研究方向?yàn)樾畔⑾到y(tǒng)安全.

        huyong@scu.edu.cn

        猜你喜歡
        關(guān)聯(lián)規(guī)則特征
        撐竿跳規(guī)則的制定
        “苦”的關(guān)聯(lián)
        數(shù)獨(dú)的規(guī)則和演變
        如何表達(dá)“特征”
        不忠誠的四個(gè)特征
        奇趣搭配
        讓規(guī)則不規(guī)則
        Coco薇(2017年11期)2018-01-03 20:59:57
        抓住特征巧觀察
        智趣
        讀者(2017年5期)2017-02-15 18:04:18
        TPP反腐敗規(guī)則對我國的啟示
        亚洲精品有码在线观看| 国产av无码专区亚洲a∨毛片| 亚洲av永久无码精品网站在线观看 | 一区二区三区国产高清视频| 亚洲精品久久久www小说| 极品熟妇大蝴蝶20p| 国产香蕉尹人在线视频你懂的| 成人一区二区三区激情视频| 久久婷婷五月综合色丁香| 天天摸日日摸狠狠添| 国产午夜精品久久久久99| 国产精品第一区亚洲精品| 亚洲成a∨人片在线观看无码 | 国产思思99re99在线观看| 亚洲中文字幕av一区二区三区人| 久久综合国产精品一区二区| 国产成+人+综合+亚洲欧美丁香花| 亚洲第一网站免费视频| 在线免费观看视频播放| 男女交射视频免费观看网站| 久久综合给合综合久久| 一本大道久久精品 东京热| 中文字幕人妻久久一区二区三区| 久久久久亚洲精品男人的天堂| 999国内精品永久免费视频| 国产黑色丝袜在线观看视频| 国产成人精品一区二区三区av| 国产成人无码精品久久久露脸 | 成人无码网www在线观看| 人妻精品一区二区三区蜜桃| 国产麻豆精品一区二区三区v视界| 国产精在线| 国产精品美女自在线观看| 亚洲国产精品一区二区成人片国内| 亚洲精品无播放器在线播放| 国产精品久久久久免费看| 区一区二区三区四视频在线观看| 色爱无码av综合区| 亚洲一区sm无码| 视频一区精品中文字幕| 亚洲中文字幕无码不卡电影 |