基于抗混淆技術的JavaScript惡意代碼檢測模型研究
發(fā)布時間:2021-06-08 23:00
JavaScript是交互式網(wǎng)站開發(fā)廣泛使用的一種技術,但由于其代碼不進行預編譯而直接被用戶瀏覽器解釋的特性,惡意的JavaScript容易被當作一種基于網(wǎng)頁的攻擊手段。而且為了逃避傳統(tǒng)的基于靜態(tài)特征匹配的檢測系統(tǒng)的捕獲,攻擊者往往將惡意的JavaScript代碼進行混淆操作,所以如何有效準確地識別出混淆惡意的JavaScript代碼變得尤為重要。本文利用信息論測度知識來檢測JavaScript混淆代碼,可以捕獲基于統(tǒng)計特征檢測器的逃逸攻擊,并對混淆代碼進行反混淆,最后利用機器學習知識來檢測JavaScript惡意代碼。具體工作如下:1.通過對JavaScript代碼語法分析,改進了基于統(tǒng)計特征的JavaScript混淆代碼檢測模型。改進后的模型對JavaScript代碼進行N-gram分詞并計算相應對象的頻率,然后計算信息論測度值,最后通過One-class SVM單分類器進行分類。實驗表明,改進的方法達到了更好的檢測效果,并且驗證了 Bigram分詞比Unigram分詞達到的效果更好。2.通過對基于統(tǒng)計特征的JavaScript代碼檢測模型的分析,構造了針對該模型的逃逸攻擊,并提出...
【文章來源】:北京郵電大學北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:68 頁
【學位級別】:碩士
【部分圖文】:
圖1-1?2013年6月至2018年6月中國網(wǎng)站數(shù)量統(tǒng)計圖⑴??I2】
3.1目前JavaScript混淆代碼檢測存在的問題??目前對于JavaScript混淆代碼的檢測,大多數(shù)是和惡意代碼檢測結合起來??的,傳統(tǒng)的基于機器學習的JavaScript混淆惡意代碼檢測,如圖3-1所示,其一??般流程是:先對代碼進行混淆檢測,若判斷代碼混淆,則提取代碼行為特征進??行動態(tài)執(zhí)行分析;若判斷代碼不是混淆,則使用提取文本特征的靜態(tài)檢測方法。??f開始)??、、?--???V???輸入javaScript代碼??Y??<、:\浞渚判斷>一一]??是?I?行???y???y???|提取代碼行為特征?I?提取文本特征???V???V???動態(tài)檢測?靜態(tài)檢測????I??輸出結果??f結來)??圖3-1傳統(tǒng)的機器學習檢測JavaScript混淆惡意代碼流程??該傳統(tǒng)的基于機器學習的檢測方法的一個明顯不足就是若判斷代碼混淆,??需要進行動態(tài)檢測,成本較高且耗時,導致模型整體效率不高。目前最好的做??法是將JavaScript混淆代碼檢測和JavaScript惡意代碼檢測分開,如圖3-2所示,??首先對代碼進行混淆檢測,若判斷混淆,則使用SpiderMonkey進行反混淆,然??13??
3.1目前JavaScript混淆代碼檢測存在的問題??目前對于JavaScript混淆代碼的檢測,大多數(shù)是和惡意代碼檢測結合起來??的,傳統(tǒng)的基于機器學習的JavaScript混淆惡意代碼檢測,如圖3-1所示,其一??般流程是:先對代碼進行混淆檢測,若判斷代碼混淆,則提取代碼行為特征進??行動態(tài)執(zhí)行分析;若判斷代碼不是混淆,則使用提取文本特征的靜態(tài)檢測方法。??f開始)??、、?--???V???輸入javaScript代碼??Y??<、:\浞渚判斷>一一]??是?I?行???y???y???|提取代碼行為特征?I?提取文本特征???V???V???動態(tài)檢測?靜態(tài)檢測????I??輸出結果??f結來)??圖3-1傳統(tǒng)的機器學習檢測JavaScript混淆惡意代碼流程??該傳統(tǒng)的基于機器學習的檢測方法的一個明顯不足就是若判斷代碼混淆,??需要進行動態(tài)檢測,成本較高且耗時,導致模型整體效率不高。目前最好的做??法是將JavaScript混淆代碼檢測和JavaScript惡意代碼檢測分開,如圖3-2所示,??首先對代碼進行混淆檢測,若判斷混淆,則使用SpiderMonkey進行反混淆,然??13??
【參考文獻】:
期刊論文
[1]面向drive-by-download攻擊的檢測方法[J]. 馬洪亮,王偉,韓臻. 華中科技大學學報(自然科學版). 2016(03)
碩士論文
[1]JavaScript惡意代碼檢測技術研究[D]. 徐青.西南交通大學 2014
本文編號:3219387
【文章來源】:北京郵電大學北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:68 頁
【學位級別】:碩士
【部分圖文】:
圖1-1?2013年6月至2018年6月中國網(wǎng)站數(shù)量統(tǒng)計圖⑴??I2】
3.1目前JavaScript混淆代碼檢測存在的問題??目前對于JavaScript混淆代碼的檢測,大多數(shù)是和惡意代碼檢測結合起來??的,傳統(tǒng)的基于機器學習的JavaScript混淆惡意代碼檢測,如圖3-1所示,其一??般流程是:先對代碼進行混淆檢測,若判斷代碼混淆,則提取代碼行為特征進??行動態(tài)執(zhí)行分析;若判斷代碼不是混淆,則使用提取文本特征的靜態(tài)檢測方法。??f開始)??、、?--???V???輸入javaScript代碼??Y??<、:\浞渚判斷>一一]??是?I?行???y???y???|提取代碼行為特征?I?提取文本特征???V???V???動態(tài)檢測?靜態(tài)檢測????I??輸出結果??f結來)??圖3-1傳統(tǒng)的機器學習檢測JavaScript混淆惡意代碼流程??該傳統(tǒng)的基于機器學習的檢測方法的一個明顯不足就是若判斷代碼混淆,??需要進行動態(tài)檢測,成本較高且耗時,導致模型整體效率不高。目前最好的做??法是將JavaScript混淆代碼檢測和JavaScript惡意代碼檢測分開,如圖3-2所示,??首先對代碼進行混淆檢測,若判斷混淆,則使用SpiderMonkey進行反混淆,然??13??
3.1目前JavaScript混淆代碼檢測存在的問題??目前對于JavaScript混淆代碼的檢測,大多數(shù)是和惡意代碼檢測結合起來??的,傳統(tǒng)的基于機器學習的JavaScript混淆惡意代碼檢測,如圖3-1所示,其一??般流程是:先對代碼進行混淆檢測,若判斷代碼混淆,則提取代碼行為特征進??行動態(tài)執(zhí)行分析;若判斷代碼不是混淆,則使用提取文本特征的靜態(tài)檢測方法。??f開始)??、、?--???V???輸入javaScript代碼??Y??<、:\浞渚判斷>一一]??是?I?行???y???y???|提取代碼行為特征?I?提取文本特征???V???V???動態(tài)檢測?靜態(tài)檢測????I??輸出結果??f結來)??圖3-1傳統(tǒng)的機器學習檢測JavaScript混淆惡意代碼流程??該傳統(tǒng)的基于機器學習的檢測方法的一個明顯不足就是若判斷代碼混淆,??需要進行動態(tài)檢測,成本較高且耗時,導致模型整體效率不高。目前最好的做??法是將JavaScript混淆代碼檢測和JavaScript惡意代碼檢測分開,如圖3-2所示,??首先對代碼進行混淆檢測,若判斷混淆,則使用SpiderMonkey進行反混淆,然??13??
【參考文獻】:
期刊論文
[1]面向drive-by-download攻擊的檢測方法[J]. 馬洪亮,王偉,韓臻. 華中科技大學學報(自然科學版). 2016(03)
碩士論文
[1]JavaScript惡意代碼檢測技術研究[D]. 徐青.西南交通大學 2014
本文編號:3219387
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3219387.html
最近更新
教材專著