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

        ?

        基于深度學(xué)習(xí)的惡意DGA域名檢測

        2021-03-23 09:38:24王志強李舒豪池亞平張健毅
        計算機工程與設(shè)計 2021年3期
        關(guān)鍵詞:單詞深度檢測

        王志強,李舒豪,池亞平+,張健毅

        (1.北京電子科技學(xué)院 網(wǎng)絡(luò)空間安全系,北京 100070;2.國家信息中心 博士后科研工作站,北京 100045;3.公安部第三研究所 信息網(wǎng)絡(luò)安全重點實驗室,北京 100741)

        0 引 言

        Yu B等[1]指出,黑客通過域名產(chǎn)生算法(domain gene-ration algorithm,DGA)產(chǎn)生DGA惡意域名,竊取用戶主機上的個人信息和商業(yè)機密。目前主要使用深度學(xué)習(xí)來檢測DGA域名。如Woodbridge J等[2]和Bharathi B等[3]使用了循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)中的長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)對域名進行檢測。Saxe J等[4]使用了卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)結(jié)構(gòu)進行檢測。Dhingra B等[5]同時使用雙向LSTM檢測。Vosoughi S等[6]和劉洋等[7]將層疊CNN結(jié)構(gòu)與LSTM結(jié)構(gòu)進行結(jié)合。Zhang X等[8]單獨使用了層疊CNN結(jié)構(gòu)。裴蘭珍等[9]將CNN結(jié)構(gòu)與門控循環(huán)單元結(jié)合?;谏疃葘W(xué)習(xí)的檢測方法使用深度學(xué)習(xí)網(wǎng)絡(luò)進行特征的自動提取。但是缺乏對詞組信息的分析,無法提取更深層次的信息。左雯[10]設(shè)計了基于關(guān)鍵詞的惡意域名檢測模型,結(jié)合詞嵌入技術(shù)與GRU模型進行檢測。楊路輝等[11]改進了檢測算法,在CNN結(jié)構(gòu)上增加了提取深層字符級特征的卷積分支。該類方法在提取域名特征方法存在不足,難以同時提取字符和詞組中包含的特征。Le H等[12]結(jié)合了字符嵌入與詞嵌入技術(shù),在向量嵌入階段改進了詞嵌入方式,同時提取域名的字符與詞組的特征。其使用固定的CNN結(jié)構(gòu)對域名進行檢測,無法根據(jù)輸入向量的維度調(diào)整模型參數(shù),很難在大范圍內(nèi)提取深層特征。在此基礎(chǔ)上,本文研究域名的嵌入表示方法,提取域名攜帶的深層次信息,并且設(shè)計檢測網(wǎng)絡(luò)結(jié)構(gòu),旨在根據(jù)輸入數(shù)據(jù)動態(tài)調(diào)整網(wǎng)絡(luò)參數(shù),從而獲得更優(yōu)的檢測效果。

        1 域名檢測研究

        在當(dāng)前網(wǎng)絡(luò)空間安全形勢下,黑客往往使用域名產(chǎn)生算法獲取大量惡意域名,通過這些惡意域名與命令控制中心進行通信,從而竊取受感染主機的信息,導(dǎo)致用戶財產(chǎn)受到損失。隨機產(chǎn)生的惡意域名有效避開了基于“黑名單”的傳統(tǒng)檢測方法,傳統(tǒng)的檢測方法難以及時維護,在當(dāng)前網(wǎng)絡(luò)空間形勢下不再適用。因此,如何有效地識別和檢測此類惡意域名成為網(wǎng)絡(luò)安全領(lǐng)域的研究重點。目前針對惡意域名的檢測方法大致可以分為兩類,分別是傳統(tǒng)機器學(xué)習(xí)檢測方法和基于深度學(xué)習(xí)的檢測方法。傳統(tǒng)機器學(xué)習(xí)方法需要對特征進行人工選取,依賴于專家的經(jīng)驗,黑客可以巧妙地修改域名中某些字段的信息來規(guī)避該檢測方法。并且該方法在更新維護方面存在局限性,難以適用于當(dāng)前復(fù)雜多變的網(wǎng)絡(luò)場景。

        針對上述問題,本文在現(xiàn)有的深度學(xué)習(xí)架構(gòu)上,提出了基于動態(tài)卷積算法(dynamic convolutional neural network,DCNN)的檢測方法。深度卷積模型是指將經(jīng)典的卷積層進行層疊排布,使用多層卷積對數(shù)據(jù)進行處理,挖掘深層次的有用信息。本文使用的基于DCNN的檢測模型整體架構(gòu)如圖1所示。因為待檢測域名中包含的字符數(shù)較少,區(qū)別于文本信息,因此本文適當(dāng)縮減了卷積層的個數(shù),在整個檢測模型中使用了兩層卷積層。這樣做一方面可以簡化檢測模型,另一方面可以縮減模型訓(xùn)練時間。首先,輸入的域名經(jīng)過預(yù)處理后,輸入到嵌入層,得到適合的向量表示。然后,這些向量在動態(tài)卷積層中訓(xùn)練。動態(tài)卷積層包含兩層卷積層以及折疊層和池化層。最后,數(shù)據(jù)經(jīng)過一層全連接層,得到檢測結(jié)果。本章將介紹實驗中涉及到的數(shù)據(jù)預(yù)處理和向量嵌入方案。

        圖1 基于DCNN的檢測模型

        1.1 數(shù)據(jù)預(yù)處理

        基于深度學(xué)習(xí)的檢測技術(shù)無需手動提取特征,僅以域名作為輸入。域名在訓(xùn)練之前,需要經(jīng)過以下預(yù)處理過程:首先移除整個數(shù)據(jù)集中重復(fù)的域名和非法域名,其次將域名中包含的字符串轉(zhuǎn)換為小寫字母。對每條域名的標(biāo)簽使用“獨熱編碼”,即惡意域名編碼為“10”,正常域名編碼為“01”。對于域名中包含的字符串,根據(jù)嵌入方式的不同,進行不同的后續(xù)處理。

        如果采用字符嵌入作為向量嵌入方法,則需要將每個字符替換為相對應(yīng)的ASCII碼(American standard code for information interchange)。如果采用詞嵌入的方式,需要對域名中的字符串進行分詞,用分割后的單詞建立一個字典,最后將域名字符串中包含的單詞替換為字典中相對應(yīng)的索引。上述步驟完成以后,需要對得到的域名向量進行填充或者截短,使每條代表域名的向量保持相同的長度。

        1.2 嵌入方式

        (1)字符級別嵌入與單詞級別嵌入

        嵌入方式是自然語言處理中的一個基本概念,是指將域名中包含的原始字符串通過特定的方式,映射為多維向量,深度學(xué)習(xí)模型使用嵌入后得到的向量進行訓(xùn)練。本文使用了卷積神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)從域名的字符級別或單詞級別的嵌入向量中學(xué)習(xí)有用信息。

        如果使用字符級別的嵌入方式,需要先識別域名中包含的所有字符,不妨設(shè)每條域名包含長度為L1的字符,對于長度不足或超過L1的域名使用0進行填充或截短,每個字符轉(zhuǎn)換成一個k維的向量。每個字符的向量表示使用隨機數(shù)進行初始化,在訓(xùn)練的過程中學(xué)習(xí)得到。字符的向量表示存儲在字符嵌入矩陣EMc∈RM×k,其中M表示訓(xùn)練數(shù)據(jù)集中出現(xiàn)的所有字符數(shù),字符嵌入矩陣中每行表示一個字符的向量表示。通過上述操作,一條包含L1個字符的域名d轉(zhuǎn)換成一個L1行k列的矩陣,即d→DNc∈RL1×k。

        如果使用單詞級別的嵌入,首先需要識別域名中包含的所有單詞,單詞的個數(shù)取決于數(shù)據(jù)集的大小。不妨設(shè)每條域名包含L2個單詞,對于長度不足或超過L2的域名,使用進行填充或截短。和字符嵌入類似,每個單詞將被轉(zhuǎn)換成一個k維的向量。每個單詞的向量表示使用隨機數(shù)進行初始化,隨后在訓(xùn)練的過程中學(xué)習(xí)得到。單詞的向量表示存儲在單詞嵌入矩陣EMw∈RM′×k,M′表示訓(xùn)練數(shù)據(jù)集中出現(xiàn)的所有單詞數(shù),單詞嵌入矩陣中每行即是一個單詞的向量表示。通過上述操作,一條包含L2個單詞的域名d轉(zhuǎn)換成一個L2行k列的矩陣,d→DNw∈RL2×k。

        (2)基于字符嵌入的高級詞嵌入

        本文借鑒了Le H等[12]的研究方法,使用了高級詞嵌入技術(shù),其結(jié)合了字符嵌入和詞嵌入的優(yōu)點,在此基礎(chǔ)上進行了改進,主要體現(xiàn)在兩方面。

        1)將域名包含的特殊字符視為一個單詞進行處理。這樣做的原因是,域名中頻繁出現(xiàn)的特殊字符,往往包含一些有用信息,這些信息可以用作判斷域名是否惡意。

        2)上述詞嵌入方法在遇到訓(xùn)練集之外的新詞時無法進行嵌入,因此無法獲得訓(xùn)練集中新詞的信息。為了解決這個問題,基于字符嵌入的高級詞嵌入除了獲取詞嵌入表示,另外獲取了每個詞中包含的字符嵌入表示。具體來說,高級詞嵌入方法獲取詞嵌入矩陣EMw∈RL2×k和字符嵌入矩陣EMc∈RL1×k,獲取矩陣EMc是為了更有效提取單詞中包含的有用信息。當(dāng)對一條域名進行檢測時,首先通過EMw獲取該域名的詞嵌入表示DNw∈RL2×k。 不妨設(shè)每個單詞包含L3個字符,使用EMc將每個單詞表示為一個L3×k的矩陣,將這個矩陣逐行相加,得到1×k的向量。上述操作應(yīng)用到域名包含的L2個單詞上,最終得到該域名字符級別的詞嵌入表示DNcw∈RL2×k。 域名的最終表示為兩個矩陣之和,即DNw+DNcw。 基于字符嵌入的高級詞嵌入的示例如圖2所示,為說明問題,此處設(shè)每條域名包含8個詞,每個詞包含5個字符,1個字符嵌入后得到1×5的向量,1個詞嵌入后同樣得到1×5的向量。高級詞嵌入包含兩個分支。第一個分支是詞嵌入,通過詞嵌入矩陣,每條域名經(jīng)嵌入后得到8×5的矩陣。第二個分支是字符嵌入,因為詞包含5個字符,每個詞經(jīng)字符嵌入矩陣得到 5×5 的矩陣。又因為一條域名中包含8個詞,所以得到 8×5×5 的矩陣。通過將5個矩陣對應(yīng)行相加,得到8×5的基于字符的詞嵌入矩陣。最后將詞嵌入矩陣和基于字符的詞嵌入矩陣相加,得到最終表示。高級詞嵌入方法有助于獲取測試集中新詞的有用信息,有效提升檢測效果。

        圖2 基于字符嵌入的高級詞嵌入示例

        2 神經(jīng)網(wǎng)絡(luò)模型

        2.1 卷積神經(jīng)網(wǎng)絡(luò)

        卷積神經(jīng)網(wǎng)絡(luò)原本被用于圖像處理領(lǐng)域,用來處理輸入的像素信息,識別圖像模式。后來一維卷積網(wǎng)絡(luò)被用于字符級別的文本分類問題。研究人員提出了用于處理自然語言信息的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。該網(wǎng)絡(luò)結(jié)構(gòu)包含6個層疊排布的卷積層。因為相對于自然語言,域名長度較短,并且不包含完整語法結(jié)構(gòu),因此本文將層疊的卷積層結(jié)構(gòu)縮短至2層,減少每層卷積包含的卷積核數(shù)量。

        2.2 動態(tài)卷積神經(jīng)網(wǎng)絡(luò)

        本小節(jié)描述本文使用的動態(tài)卷積算法,用于DGA惡意域名的檢測。本文對傳統(tǒng)的深度卷積結(jié)構(gòu)進行改進,新增加了折疊層,并且將池化層替換為動態(tài)k值池化和最大ktop值池化。動態(tài)卷積算法由以下幾個部分組成,分別是卷積層、折疊層、動態(tài)k值池化層、最大ktop值池化層、全連接層。動態(tài)卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)示例如圖3所示,為便于說明,設(shè)嵌入層維度是4,該網(wǎng)絡(luò)包含兩層卷積,每層卷積有兩個特征映射。第一層卷積使用寬度為3的卷積核,第二層卷積使用寬度為2的卷積核。兩個池化層中的k值分別取5和3。

        圖3 動態(tài)卷積網(wǎng)絡(luò)結(jié)構(gòu)示例

        (1)卷積層

        卷積層對輸入的數(shù)據(jù)進行卷積運算,從中提取出有用的信息。輸入矩陣u∈Rd×s,其中s代表每條域名的長度,d代表每個單詞嵌入后的維度。若使用一維卷積,需訓(xùn)練的參數(shù)矩陣為v∈Rd×m,m代表卷積核寬度。輸出矩陣c的維度是d×(s+m-1)。 若使用二維卷積,需訓(xùn)練的參數(shù)矩陣為v′∈Rd×m,m代表卷積核寬度。輸出矩陣c′的維度是d×(s+m-1)×n,n代表卷積核數(shù)目。

        (2)折疊層

        折疊層對上一層輸出的稀疏矩陣進行處理。本文使用一種簡單的方法,將矩陣進行折疊。具體來講,就是將矩陣的相鄰兩行進行相加,原本d行的矩陣通過折疊后變?yōu)閐/2行。這種方法無需引入?yún)?shù),縮減了矩陣的大小,將稀疏矩陣變?yōu)槌砻芫仃嚒?/p>

        (3)動態(tài)k值池化

        動態(tài)k值池化中,k值是一個函數(shù),與輸入字符串長度和網(wǎng)絡(luò)深度有關(guān)。本文選取以下函數(shù)對k值進行計算

        (1)

        (4)最大ktop值池化

        對一個長度為p的序列q∈Rp,最大ktop值池化選取序列q中最大的ktop個值為子序列,子序列中元素的順序?qū)?yīng)原序列q中的順序。ktop值是固定的超參數(shù),按照經(jīng)驗,ktop值取為4。最大ktop值池化提取出不同位置的ktop個最具代表性的特征,并且保持特征的順序不變。最大ktop值池化應(yīng)用于動態(tài)卷積神經(jīng)網(wǎng)絡(luò)的最后一層,使得動態(tài)卷積網(wǎng)絡(luò)的輸出與輸入的字符串長度無關(guān)。卷積處理完畢后,將數(shù)據(jù)輸入全連接層進行訓(xùn)練,最后輸出結(jié)果。

        3 實驗結(jié)果與分析

        本文收集了Bambenek網(wǎng)站2019年5月16日當(dāng)天約83萬條DGA惡意域名,這些惡意域名來源于現(xiàn)實網(wǎng)絡(luò)。由于這些惡意域名中包含部分被錯誤判斷的正常域名,可能影響模型訓(xùn)練效果,因此本文從中選取了前30萬條高可信度DGA惡意域名用于訓(xùn)練,另外選取7.5萬條惡意域名用于驗證與測試。另外,本文收集了Alexa網(wǎng)站2019年5月17日公布的排名前100萬的域名作為正常域名。Alexa從網(wǎng)站訪問量及訪問次數(shù)等方面對域名進行綜合排名,其中包含了該網(wǎng)站的頂級域名和次級域名。在實驗中,本文從中挑選了與惡意域名數(shù)目相當(dāng)?shù)那?0萬條正常域名用于訓(xùn)練,另外選取7.5萬條正常域名用于驗證與測試。本文隨機劃分收集到的數(shù)據(jù)集,將80%的數(shù)據(jù)用于訓(xùn)練,10%的數(shù)據(jù)用于訓(xùn)練過程中進行驗證,10%的數(shù)據(jù)用于最終測試。數(shù)據(jù)集劃分見表1,本文總共使用75萬條域名進行訓(xùn)練。其中訓(xùn)練集占80%。驗證集和測試集各占10%。本次實驗所使用環(huán)境配置見表2。

        表1 數(shù)據(jù)集劃分

        表2 實驗環(huán)境配置

        在以下實驗中,本文將數(shù)據(jù)集分為多個批次進行訓(xùn)練,每個批次包含100條域名,總共訓(xùn)練10輪。其它的實驗參數(shù)分別是:根據(jù)不同的實驗,每條域名填充后的長度設(shè)為75,向量嵌入維度設(shè)為32。第一層卷積核的寬度設(shè)為3,第二層卷積核的寬度設(shè)為2。另外,本文使用了Adam(adaptive moment estimation)算法進行學(xué)習(xí)和計算網(wǎng)絡(luò)結(jié)構(gòu)的各層參數(shù)。

        為了說明基于DCNN的檢測方法的檢測效果,本文使用了常規(guī)的深度卷積方法作為對比實驗。深度卷積方法使用常規(guī)的詞嵌入方法,以及層疊CNN結(jié)構(gòu)。本文以精度(accuracy)、F1度量(F1-score)、查準(zhǔn)率(precision)、查全率(recall)作為衡量訓(xùn)練模型的指標(biāo),各個指標(biāo)的計算見式(2)~式(5)。其中,TP(true positive)指測試集中被預(yù)測為正例,實際為正例的樣本總數(shù);FP(false positive)指測試集中被預(yù)測為正例,實際為反例的樣本總數(shù);TN(true negative)指測試集中被預(yù)測為反例,實際為反例的樣本總數(shù);FN(false negative)指測試集中被預(yù)測為反例,實際為正例的樣本總數(shù)。為了直觀的對實驗進行比較,本文繪制了ROC曲線(receiver operating characteristic)進行對比,并且計算了AUC值(area under ROC curve)。ROC曲線以FPR(false positive rate)為橫軸,TPR(true positive rate)為縱軸,曲線整體越靠近坐標(biāo)(0,1)點,代表檢測的效果越好。AUC值代表ROC曲線下的面積,AUC值越大,說明分類器效果更好

        (2)

        (3)

        (4)

        (5)

        本文提出的基于DCNN的檢測方法使用了高級詞嵌入和動態(tài)卷積網(wǎng)絡(luò),其實驗結(jié)果見表3。改進前的深度卷積方法作為對比,其實驗結(jié)果見表4。從實驗結(jié)果中可以看出,基于DCNN的檢測方法的各方面性能指標(biāo)均優(yōu)于現(xiàn)有的深度卷積方法,檢測精度從0.826提升至0.957。另外,為直觀的闡述基于DCNN的檢測方法的優(yōu)勢,本文對比了兩種方法的ROC曲線和AUC值,如圖4所示。實驗結(jié)果表明,相較于現(xiàn)有的深度卷積方法,基于DCNN的檢測方法AUC值有所提高,并獲得了較好的檢測效果。

        表3 基于DCNN的檢測方法實驗結(jié)果

        表4 改進前的深度卷積方法實驗結(jié)果

        圖4 ROC曲線與AUC值對比

        4 結(jié)束語

        本文基于深度學(xué)習(xí)網(wǎng)絡(luò)研究了DGA惡意域名檢測,在現(xiàn)有的研究基礎(chǔ)上,提出了基于DCNN的DGA域名檢測方案,并使用現(xiàn)實網(wǎng)絡(luò)中收集的70余萬條域名,在此基礎(chǔ)上對模型進行訓(xùn)練與測試。實驗結(jié)果表明,基于動態(tài)卷積算法的檢測方法能夠達到95.7%的精度,驗證了方案的可行性。綜上,本文的主要貢獻如下:①在檢測DGA域名的向量嵌入階段,本文采用了基于字符嵌入的高級詞嵌入方法,與單一的詞嵌入方法相比,高級嵌入方法可以更有效表示域名,有助于提取域名中的信息;②在深度學(xué)習(xí)架構(gòu)的基礎(chǔ)上,本文借鑒自然語言處理中的動態(tài)卷積思想,針對DGA域名檢測重新設(shè)計了動態(tài)卷積算法,該算法能夠更有效識別惡意域名;③本文使用現(xiàn)實網(wǎng)絡(luò)中收集的大量域名數(shù)據(jù)對模型進行了訓(xùn)練,對比了現(xiàn)有深度學(xué)習(xí)方法與本文使用的基于DCNN的檢測方法的性能,分析了兩種方法的多個檢測指標(biāo),直觀地闡述了基于DCNN的檢測方法具有的優(yōu)勢。實驗結(jié)果表明,相較于現(xiàn)有的深度學(xué)習(xí)方法,基于DCNN的檢測方法能夠提升DGA惡意域名的檢測效果。

        實驗結(jié)果表明,相較于現(xiàn)有的深度學(xué)習(xí)方法,基于DCNN的檢測方法可以獲得更好的檢測指標(biāo),提升檢測效果。通過實驗,可以得出如下結(jié)論,一方面對于類似域名的短小字符串,高級詞嵌入方法能夠更好進行向量表示;另一方面,動態(tài)卷積網(wǎng)絡(luò)中的參數(shù)是根據(jù)輸入字符串長度和網(wǎng)絡(luò)深度動態(tài)選擇得到,這樣有利于在更大范圍內(nèi)提取更深層的特征,提升模型訓(xùn)練效果。

        本文未來的工作將集中于域名檢測的多分類問題。另外,DGA域名僅僅包含頂級域名和二級域名,具有少量的字符,基于詞嵌入的復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)未能充分發(fā)揮其提取深層次特征的優(yōu)勢。相對于DGA域名,URL包含豐富的字符和詞組,深度學(xué)習(xí)可以充分提取有用信息。檢測DGA惡意域名的方法可以應(yīng)用于檢測惡意URL。所以,對惡意URL的檢測也是本文未來的一個研究方向。

        猜你喜歡
        單詞深度檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        深度理解一元一次方程
        單詞連一連
        深度觀察
        深度觀察
        深度觀察
        看圖填單詞
        看完這些單詞的翻譯,整個人都不好了
        91久久精品人妻一区二区| 国产熟女露脸大叫高潮| 99久热re在线精品99 6热视频| 久久中文字幕亚洲精品最新| 亚洲精品综合久久中文字幕 | 少妇性l交大片| 精品一区二区av天堂| 日韩熟女精品一区二区三区视频| 中文字幕日韩人妻少妇毛片| 正在播放东北夫妻内射| 亚洲久无码中文字幕热| 蜜桃在线观看视频在线观看| 日韩亚洲精品国产第二页| 日韩人妻无码精品久久免费一| 国产特级全黄一级毛片不卡| 人妻色中文字幕免费视频| 国产内射视频在线免费观看| 亚洲av日韩av无码污污网站| 亚洲最大成av人网站| 大红酸枝极品老料颜色| 丝袜美腿亚洲一区二区| 欧美日韩中文国产一区发布| 欧美成人精品福利在线视频| 国产高清女主播在线观看| 欧美国产综合欧美视频| 大地资源网更新免费播放视频| 性色av成人精品久久| 一区二区三区日韩亚洲中文视频| 亚洲av午夜福利精品一区二区| 国产免费av片在线观看麻豆| 麻豆视频在线观看免费在线观看| 精品熟人妻一区二区三区四区不卡| 好男人日本社区www| 国产码欧美日韩高清综合一区 | 柠檬福利第一导航在线| 一本大道久久东京热无码av| 91精品福利一区二区三区| 免费观看a级片| 精品国产一区二区三区久久久狼| 中文字幕无线精品亚洲乱码一区| 精品人妻一区二区三区久久|