999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于關聯分析的Webshell檢測方法研究

2018-04-02 03:03:28
信息安全研究 2018年3期
關鍵詞:關聯規則特征

周 穎 胡 勇

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

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

1 相關工作

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

1.1 Webshell特征混淆技術

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

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

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

3) 字符串連接技術.功能型Webshell執行調用后臺系統組件時,可通過拆分組件名稱、在字符串中插入或替換特殊字符等方式來避免被檢測到調用相關組件.因此,可預先對調用組件、函數和字符處理相關函數進行檢測.

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

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

1.2 Webshell特征提取

針對Webshell的混淆技術,本文就混淆后的Webshell提取以下特征[6]進行檢測:

1) 重合指數

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

(1)

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

2) 信息熵

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

(2)

(3)

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

3) 最長字符串

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

4) 文件壓縮比

文件壓縮比為壓縮后文件大小與原始文件大小之比.實質在于消除特定字符的分配不均,經編碼后的Webshell消除了非編碼字符,表現為更小的分布不均衡,此時的壓縮比的值大于正常文件.

5) 基于特征庫匹配

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

2 基于關聯分析的Webshell檢測模型

基于關聯分析的檢測模型是一種無監督的機器學習過程,最早是由Agrawal等人[9-10]提出,通過分析數據集,挖掘出所選特征潛在的關聯規則.通過對已標記樣本數據學習,設定項集的支持度、置信度得到關聯規則,數據庫中包含(支持)項集的事務的數目稱為項集X的支持度計數,記為

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

(4)

其中,T為事務的集,ti為某個特定項集,用于衡量關聯規則在整個數據集中統計的重要性;關聯規則X→Y的置信度代表Y在包含X的事務中出現的頻繁程度為

(5)

用于衡量關聯規則的可信度.

基于關聯分析的檢測模型如圖1所示:

圖1 Webshell檢測模型框架

首先收集獲取數據樣本,針對樣本Webshell的混淆技術采用上述5類特征進行提取,并生成相應的特征庫;然后采用關聯分析中的Apriori算法和FP-Growth算法訓練樣本;最后使用該分類器對混淆后的Webshell進行分類生成相應的關聯規則,并輸出檢測結果.

2.1 Apriori算法

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

2.2 FP-Growth算法

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

3 仿真實驗

3.1 特征提取及參數選擇

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

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

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

表1 部分Webshell特征量化值

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

3.2 算法比較

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

表3 Apriori算法和FP-Growth算法的比較結果

3.3 實驗結果及分析

為了更準確地評估關聯分析法檢測的準確率,本文還采用準確率、召回率、F值評測[14]進行評估.準確率是指正確檢測出Webshell的數量占所有檢測樣本的比例;召回率是指正確檢測出Webshell數量占所有Webshell數量的比例.對應的結果分類情況如表4所示:

表4 預測結果分類

具體計算公式如下:0代表False(Negative),1代表True(Negative),TN代表實際結果為True但預測結果為Negative.預測的準確度為

(6)

召回率為

(7)

F值為

(8)

顯然準確率、召回率、F值越高檢測結果越好.

將處理好的樣本與機器學習工具Weka3.8進行實驗,選擇相應的算法規則與現有的2種檢測工具的準確率進行對比,實驗結果如表5所示:

表5 Webshell的準確率、召回率及F值預測結果 %

從實驗結果可以看出,關聯分析法在準確率、召回率、F值評測的結果較其他2種檢測工具更好,說明利用該方法進行Webshell的檢測是有效的.

4 結 語

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

[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]葉飛, 龔儉, 楊望. 基于支持向量機的Webshell黑盒檢測[J]. 南京航空航天大學學報, 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]潘杰. 基于機器學習的Webshell檢測關鍵技術研究[D]. 天津: 中國民航大學計算機學院, 2015: 16-17

[6]馬艷發. 基于WAF入侵檢測和變異WebShell檢測算法的Web安全研究[D]. 天津: 天津理工大學, 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]王文槿, 劉寶旭. 一種基于關聯規則挖掘的入侵檢測系統[J]. 核電子學與探測技術, 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]李航. 統計學習方法[M]. 北京: 清華大學出版社, 2012

周穎

碩士研究生,主要研究方向為Web安全.

304941296@qq.com

胡勇

副教授,碩士生導師,主要研究方向為信息系統安全.

huyong@scu.edu.cn

猜你喜歡
關聯規則特征
撐竿跳規則的制定
“苦”的關聯
當代陜西(2021年17期)2021-11-06 03:21:36
數獨的規則和演變
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
奇趣搭配
讓規則不規則
Coco薇(2017年11期)2018-01-03 20:59:57
抓住特征巧觀察
智趣
讀者(2017年5期)2017-02-15 18:04:18
TPP反腐敗規則對我國的啟示
主站蜘蛛池模板: 国产亚洲日韩av在线| 黄色福利在线| 亚洲动漫h| 91在线一9|永久视频在线| 成人日韩欧美| 97国产在线视频| 免费在线色| 激情午夜婷婷| 无码专区国产精品一区| 中文字幕人成乱码熟女免费| 青青久在线视频免费观看| 伊人蕉久影院| 无码福利视频| 国产黄色免费看| 香蕉久人久人青草青草| 亚洲床戏一区| 日韩精品亚洲一区中文字幕| 国产精品久久精品| 日韩欧美国产综合| 97人妻精品专区久久久久| 园内精品自拍视频在线播放| 成人亚洲视频| 国产a在视频线精品视频下载| 国产欧美日韩视频一区二区三区| 日本尹人综合香蕉在线观看| 亚洲精品福利网站| 成年人久久黄色网站| 国产尹人香蕉综合在线电影| 国产精品区网红主播在线观看| 国产精品久久久久鬼色| 亚洲第一天堂无码专区| 亚洲一区毛片| 四虎成人精品| 亚洲第一区在线| 试看120秒男女啪啪免费| 欧美啪啪视频免码| 国产成人h在线观看网站站| 一区二区三区成人| 在线国产毛片手机小视频| aⅴ免费在线观看| 不卡视频国产| 欧美a级在线| 日韩欧美网址| 久久综合九色综合97婷婷| 国产丝袜丝视频在线观看| a欧美在线| 久久国产av麻豆| 亚洲国产精品一区二区第一页免| 先锋资源久久| 超碰精品无码一区二区| 人妻丰满熟妇αv无码| 亚洲无码日韩一区| 伊人91在线| 在线播放精品一区二区啪视频| 天天色天天综合| 四虎影视国产精品| 国产成人综合日韩精品无码不卡| 99在线观看视频免费| 国产粉嫩粉嫩的18在线播放91 | 国产精品青青| 毛片大全免费观看| 亚洲三级电影在线播放 | jizz亚洲高清在线观看| 日韩精品专区免费无码aⅴ| 亚洲视频一区在线| 国产亚洲欧美另类一区二区| 成人综合久久综合| 四虎AV麻豆| 国产大片喷水在线在线视频| 国产高清不卡| 四虎影视永久在线精品| 91精品专区| 免费高清毛片| 亚洲人成网站色7777| 久操中文在线| 亚洲精品大秀视频| 国产精品一区在线麻豆| 九色视频线上播放| 亚洲国产精品久久久久秋霞影院| 日韩成人在线网站| 日韩av无码精品专区| 日韩精品一区二区三区swag|