• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于N-gram 和Transformer 的DGA 惡意域名檢測(cè)

      2022-10-18 01:48:40蘆天亮閆尚義張建嶺
      關(guān)鍵詞:域名詞組合法

      楊 成, 蘆天亮, 閆尚義, 張建嶺

      (中國人民公安大學(xué)信息網(wǎng)絡(luò)安全學(xué)院, 北京 100038)

      0 引言

      如今,人們的生活越來越離不開互聯(lián)網(wǎng),截至2021 年6 月,我國網(wǎng)民規(guī)模達(dá)10.11 億,較2020 年底新增網(wǎng)民2 175 萬,互聯(lián)網(wǎng)普及率達(dá)71.6%[1]。但是互聯(lián)網(wǎng)的應(yīng)用在豐富人們生活的同時(shí),也帶來了很多安全隱患。 在訪問網(wǎng)站時(shí),輸入的域名會(huì)通過DNS 服務(wù)解析為IP 地址,進(jìn)而定位到目標(biāo)服務(wù)器瀏覽相應(yīng)的Web 服務(wù)。 因?yàn)橛蛎到y(tǒng)本身沒有安全檢測(cè)機(jī)制,所以惡意軟件、病毒常使用DNS 服務(wù)與外部服務(wù)器通信[2]。

      惡意域名作為惡意軟件、病毒與惡意服務(wù)器的通信載體,被黑客APT 組織廣泛運(yùn)用。 為滿足攻擊者的攻擊需求,以及防止惡意域名被安全廠商發(fā)現(xiàn),無法繼續(xù)展開攻擊行為,攻擊者常使用域名生成算法(Domain Generation Algorithm, DGA)生成大量的惡意域名,還可以實(shí)現(xiàn)隱藏真正惡意服務(wù)器的目的。

      現(xiàn)有惡意域名檢測(cè)算法檢測(cè)效果不夠好,并且無法挖掘域名深層次特征。 鑒于此,本文提出了一種新的惡意域名檢測(cè)方法,主要工作和貢獻(xiàn)如下:

      (1) 在數(shù)據(jù)處理階段,使用N-gram 算法處理數(shù)據(jù)集,并使用word-hashing 技術(shù)增添域名中字符的首尾位置信息,該模型能夠深入地學(xué)習(xí)惡意域名的字符位置特征,增強(qiáng)模型的魯棒性;

      (2) 在模型訓(xùn)練階段,運(yùn)用Transformer 模型識(shí)別惡意域名,進(jìn)一步加深了模型對(duì)惡意域名中字符位置信息、字符特征等深層特征的學(xué)習(xí),提升了識(shí)別的準(zhǔn)確率;

      (3) 對(duì)Alexa 和360 安全實(shí)驗(yàn)室提供的數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),與Nalve Bayesia 算法、XGBoost 算法、RNN 模型、LSTM 模型等進(jìn)行對(duì)比。 實(shí)驗(yàn)表明,本文提出的算法的準(zhǔn)確率達(dá)96.04%, 召回率達(dá)95.99%,優(yōu)于大多數(shù)主流惡意域名檢測(cè)算法。

      1 相關(guān)工作

      1.1 惡意域名生成算法

      攻擊者為了應(yīng)對(duì)封堵IP 和域名等措施,使用DGA 算法生成大量候選域名列表,域名列表會(huì)隨DGA 選擇參數(shù)的不同而不斷變化,有效地掩護(hù)了真實(shí)的惡意服務(wù)器,為傳輸病毒、木馬、惡意程序提供了便捷。 域名生成算法使用時(shí)間、特定字符串等參數(shù)通過異或、哈希等操作生成一系列偽隨機(jī)字符串[3]。 隨著學(xué)者對(duì)DGA 算法研究的深入,針對(duì)惡意域名檢測(cè)的方法也在不斷地完善與發(fā)展,但在檢測(cè)已有惡意域名的同時(shí),新的DGA 家族變體也隨之出現(xiàn),360 安全實(shí)驗(yàn)室公開的惡意域名家族多達(dá)54 個(gè)。

      DGA 選擇的生成參數(shù),主要分為2 類。

      (1) 靜態(tài)DGA。 生成的域名不依賴種子的域名生成算法,這類域名生成算法有一定幾率在生成時(shí)產(chǎn)生相同的域名。

      (2) 基于種子的DGA。 根據(jù)種子所選的不同分為2 類:

      ①一類使用硬編碼的種子生成域名,如使用推特?zé)衢T話題作為種子;以歐洲中央銀行每天發(fā)布的外匯參考匯率作為種子;以日期作為隨機(jī)種子。

      ②一類基于字典生成的域名,該域名多為單詞組合生成,從結(jié)構(gòu)上看與合法域名較為相似。

      每類DGA 代表的惡意域名家族見表1。

      表1 域名生成算法分類

      1.2 惡意域名檢測(cè)技術(shù)

      惡意域名檢測(cè)研究主要分為2 類:基于流量分析和基于域名字符特征的惡意域名檢測(cè)[4]。

      (1)基于流量分析的惡意域名檢測(cè)

      基于流量分析的惡意域名檢測(cè)方法[5]主要從域名使用者運(yùn)用的Fast-Flux 和Domain-Flux 技術(shù)研究。 Fast-Flux 技術(shù)[6]用于應(yīng)對(duì)防御者進(jìn)行IP 限制策略,攻擊者在擁有大量主機(jī)的基礎(chǔ)上,為每個(gè)主機(jī)的IP 配置較小的TTL 值,實(shí)現(xiàn)惡意域名通過DNS解析IP 地址的快速轉(zhuǎn)變,使防御者的IP 限制策略失效。 Domain-Flux 技術(shù)[7]使用DGA 生成大量的備用域名,只從中選取一個(gè)域名作為命令與控制服務(wù)器(Command and Control,C&C)的域名,該技術(shù)使得域名禁用的策略失效。

      (2)基于域名字符特征的惡意域名檢測(cè)

      由于IP 地址不便于記憶,為了滿足人們記憶和訪問的需求,所以發(fā)明了域名,其本身包含豐富的特征信息。 合法域名使用的域名長度往往小于惡意域名的長度;參考英文單詞的結(jié)構(gòu)[8],合法域名的平均記憶字元數(shù)常小于惡意域名的對(duì)應(yīng)值,并且合法域名中不常見到超過連續(xù)3 個(gè)的重復(fù)字母,而DGA生成的域名可能包括更多的連續(xù)字符。

      使用機(jī)器學(xué)習(xí)方法的惡意域名檢測(cè)常使用上述字符特征進(jìn)行研究。 根據(jù)合法域名與惡意域名字符分布上的差異,Yadav 等[9]通過查看同一組IP 地址中域名的unigram 和bigram 特征分布檢測(cè)惡意域名;Agyepong 等[10]根據(jù)字符分布的頻率分析和域名加權(quán)分?jǐn)?shù)的方法檢測(cè)DGA;王紅凱等[11]利用域名長度等特征提出了一種基于隨機(jī)森林識(shí)別惡意域名的方法;Shi 等[12]結(jié)合字符特征、DNS 特征和網(wǎng)站的whois 信息使用極限學(xué)習(xí)機(jī)(Extreme Machine Learning,ELM)模型識(shí)別惡意域名。

      傳統(tǒng)機(jī)器學(xué)習(xí)的方法提取域名字符特征分析惡意域名工作量大,耗費(fèi)的時(shí)間過長,并且該方法提取的特征可能會(huì)被DGA 使用者回避,如基于字典的域名生成算法產(chǎn)生的惡意域名不易被傳統(tǒng)方法檢測(cè)。深度學(xué)習(xí)方法較傳統(tǒng)機(jī)器學(xué)習(xí)方法的模型更復(fù)雜,它可以挖掘數(shù)據(jù)集深層次的特征,能夠從訓(xùn)練集中的有限特征集合中推導(dǎo)出新的特征。

      趙科君等[13]利用word-hashing 技術(shù)[14]將所有域名轉(zhuǎn)換為二元語法字符串,使用詞袋模型將域名映射到了高維的向量空間,之后搭建5 層深度神經(jīng)網(wǎng)絡(luò)對(duì)轉(zhuǎn)換為高維向量的域名進(jìn)行訓(xùn)練分類檢測(cè)。傳統(tǒng)RNN 算法難以解決惡意域名實(shí)驗(yàn)中梯度擴(kuò)散的情況,Xu 等[15]使用雙向遞歸神經(jīng)網(wǎng)絡(luò)算法提取有效的語義特征,使用遞歸網(wǎng)絡(luò)有效地解決了梯度擴(kuò)散和梯度爆炸的問題。

      惡意域名檢測(cè)問題中,許多學(xué)者使用LSTM 模型,試圖尋找域名中更多的特征。 Ghosh 等[16]使用改進(jìn)的LSTM 模型,在傳統(tǒng)LSTM 模型上加入ALOHA(Auxiliary Loss Optimization for Hypothesis Augmentation)[17],增加了對(duì)基于詞匯生成的惡意域名的檢測(cè)準(zhǔn)確率。 徐國天等[18]為了解決獨(dú)熱編碼中稀疏矩陣和維度災(zāi)難等問題,采用詞向量嵌入對(duì)域名中的字符編碼,并且融合卷積神經(jīng)網(wǎng)絡(luò)和長短期記憶網(wǎng)絡(luò)訓(xùn)練惡意域名檢測(cè)模型,提高了算法的效率。 張斌等[19]使用CNN 網(wǎng)絡(luò)提取域名中字符組合的特征避免N-gram 的特征稀疏分布的問題,之后使用LSTM 挖掘域名字符串中的上下文信息。 王甜甜等[20]構(gòu)建雙向長短時(shí)記憶神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)的混合模型BiLSTM-CNN,在其構(gòu)建的待檢測(cè)域名集合中實(shí)現(xiàn)了域名分類。 張?chǎng)蔚萚21]為了解決縮略域名上存在的誤報(bào)率高的問題,采用LSTM 改進(jìn)了Transformer 模型的編碼方式,以更好地捕獲字符位置信息,該模型能有效區(qū)分DGA 和縮略域名。

      從上面的研究可以看出,學(xué)者們?cè)贒GA 的檢測(cè)中,在對(duì)網(wǎng)絡(luò)流量、DNS 解析信息、域名字符等信息統(tǒng)計(jì)的基礎(chǔ)上,利用機(jī)器學(xué)習(xí)或深度學(xué)習(xí)算法進(jìn)行惡意域名分類或惡意域名家族的聚類。 但對(duì)于某些惡意域名家族可能并不適用,并且攻擊者會(huì)回避隨機(jī)生成域名的特征,如suppobox 家族的域名。 面對(duì)這類域名,需要挖掘更好的統(tǒng)計(jì)特征,本文使用Ngram 模型,并運(yùn)用包含注意力機(jī)制的Transformer 模型,該算法能較好地處理文本數(shù)據(jù),可以有效地對(duì)惡意域名進(jìn)行分類。

      2 惡意域名檢測(cè)模型

      為了進(jìn)一步提升識(shí)別惡意域名的準(zhǔn)確率,本文基于Transformer 網(wǎng)絡(luò)架構(gòu),提出了基于N-gram、word-hashing、特征增益的惡意域名檢測(cè)方法,模型分為數(shù)據(jù)處理、模型訓(xùn)練、域名類別預(yù)測(cè)3 個(gè)階段,從位置信息、字符特征等方面更深入地挖掘了惡意域名的特點(diǎn),檢測(cè)過程如圖1 所示。

      圖1 模型檢測(cè)流程

      2.1 word-hashing

      自然語言處理問題中,常使用one-hot encoding的方法將文本信息轉(zhuǎn)換為深度學(xué)習(xí)可以直接使用的向量形式,但是其生成的向量非常稀疏,面對(duì)onehot encoding 產(chǎn)生的稀疏矩陣,常使用word2vec 技術(shù)將高維向量空間映射到低維向量空間。 因?yàn)閻阂庥蛎臉颖締卧宰址疄閱挝?沒有上下文環(huán)境,會(huì)破壞域名的特征信息,所以word2vec 技術(shù)無法對(duì)惡意域名樣本轉(zhuǎn)換成向量后的空間降維。

      本文采用word-hashing 技術(shù)的目的是降低詞袋向量中的維數(shù),word-hashing 技術(shù)基于N-gram 方法,對(duì)每一個(gè)字符串的首部和尾部添加一個(gè)符號(hào)標(biāo)志位(如“#”),之后使用N-gram 方法處理,以域名“www.baidu.com”為例,處理過程如圖2 所示。

      圖2 word-hashing 算法處理“www.baidu.com”

      因?yàn)橛⑽淖帜甘怯邢薜?所以選擇bigram 或trigram 算法產(chǎn)生的子字符串結(jié)果是有限的,其維度不會(huì)過大,相較于使用one-hot Encoding 方法會(huì)產(chǎn)生巨大的稀疏矩陣,選擇N-gram 算法可以提高資源利用率。 針對(duì)惡意域名檢測(cè)問題,基于N-gram 的word-hashing 方法將域名樣本轉(zhuǎn)化為向量,一定程度上節(jié)約了深度學(xué)習(xí)搭建時(shí)的內(nèi)存損耗,并且特征模型不用隨樣本增加而修改。

      2.2 N-gram

      N-gram 是一種基于統(tǒng)計(jì)的語言模型算法,在自然語言處理的過程中實(shí)現(xiàn)了“聯(lián)想”行為。 對(duì)于一個(gè)確定的字符串,N-gram 算法處理過的結(jié)果是該字符串所有長為N 的子字符串,對(duì)于域名“www.linkedin.com”,當(dāng)N=2 時(shí),處理過程如圖3 所示。

      圖3 N-gram(N=2)算法處理“l(fā)inkedin.com”

      N-gram 算法認(rèn)為一個(gè)單詞的出現(xiàn)依賴其他的若干詞語,因此可以用來判斷一個(gè)句子的構(gòu)成是否合理,并且,當(dāng)獲得足夠多的信息時(shí),所預(yù)測(cè)的信息越準(zhǔn)確。

      惡意域名檢測(cè)中運(yùn)用N-gram 算法以字母為最小單元,并且為了避免N-gram 結(jié)果冗余,僅使用二級(jí)域名作為模型的輸入部分,將頂級(jí)域忽略。 假設(shè)我們現(xiàn)在有n個(gè)字母組成的域名s= (w1,w2,…,wn),每一個(gè)字母wi都與第一個(gè)字母w1到其前一個(gè)字母wn-1有關(guān),如式(1)所示。

      式(1)在運(yùn)算過程中會(huì)帶來過多的變量,同時(shí)對(duì)于N-gram 模型,在N取的較大時(shí),得到的結(jié)果會(huì)十分稀疏。 為了解決這個(gè)問題,利用馬爾可夫鏈的假設(shè),第i個(gè)字母wi出現(xiàn)的概率僅與當(dāng)前字母前N個(gè)字母有關(guān),通過馬爾可夫鏈的假設(shè)大幅縮減了式(1)的計(jì)算量,此時(shí)的情況如式(2)所示。

      2.3 Transformer

      Transformer 網(wǎng)絡(luò)[22]是融入注意力機(jī)制的Encoder-Decoder 模型。 常見的Encoder-Decoder 框架使用RNN 網(wǎng)絡(luò)實(shí)現(xiàn),但因其依賴序列順序特征,使訓(xùn)練不能并行進(jìn)展,所以效率較慢。 在Transformer網(wǎng)絡(luò)中,因?yàn)榇罅渴褂米宰⒁饬C(jī)制,該網(wǎng)絡(luò)可以并行處理數(shù)據(jù),并且自注意力機(jī)制在處理過程中,輸入和輸出都來源同一序列,能夠很好地捕獲全局信息。在惡意域名檢測(cè)的應(yīng)用中,并沒有生成文本,所以主要用到了Transformer 結(jié)構(gòu)中的Encoder 部分,本文使用的Transformer 結(jié)構(gòu)如圖4 所示。

      圖4 Transformer(Encoder 部分)結(jié)構(gòu)

      在Transformer 網(wǎng)絡(luò)中沒有像RNN 中的順序結(jié)構(gòu),所以需要元素的位置信息,位置信息的計(jì)算如式(4)所示。

      其中,pos為字母在域名字符串中的位置,i是字母向量的位置,dmodel是字母向量的維度,在i為奇數(shù)時(shí),使用cos 函數(shù)處理,i為偶數(shù)時(shí),使用sin 函數(shù)處理。

      Transformer 的核心是多頭注意力機(jī)制,多頭注意力機(jī)制由多個(gè)自注意力機(jī)制構(gòu)成。 自注意力機(jī)制是將Q(Query)、K(Key)進(jìn)行相似度計(jì)算,與V(Value)相乘后得到權(quán)重求和的過程,如式(5)所示。

      其中,n表示多頭注意力機(jī)制中的頭數(shù),Wo是線性變化的參數(shù)矩陣。

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

      3.1 數(shù)據(jù)集和測(cè)試環(huán)境

      本文使用的數(shù)據(jù)集包括合法域名和惡意域名,合法域名來自Alexa 網(wǎng)站收集的排名前100 萬的域名集合,惡意域名來自360 網(wǎng)絡(luò)安全實(shí)驗(yàn)室公開收集的不同DGA 家族的惡意域名,例如nymaim、necurs等知名惡意域名家族的惡意域名共計(jì)100萬條。

      本文的實(shí)驗(yàn)基于keras 的深度學(xué)習(xí)框架,后端使用Tensorflow 模塊。 具體的實(shí)驗(yàn)環(huán)境如表2所示。

      表2 實(shí)驗(yàn)環(huán)境配置

      3.2 數(shù)據(jù)處理

      隨機(jī)抽取合法域名和惡意域名各1 萬條數(shù)據(jù)作為實(shí)驗(yàn)的數(shù)據(jù)集,對(duì)于每一個(gè)域名,因?yàn)楹戏ㄓ蛎蛺阂庥蛎患?jí)域名的特征不明顯,所以舍棄一級(jí)域名,構(gòu)成數(shù)據(jù)集D1。

      對(duì)于數(shù)據(jù)集D1,經(jīng)過bigram 處理后共有1 417個(gè)詞組元素,trigram 處理后共有31 220 個(gè)詞組元素,4-gram 處理后共有127 469 個(gè)詞組元素,5-gram處理后共有138 636 個(gè)詞組元素。 對(duì)D1中的合法域名和惡意域名分別使用N-gram 算法,得到域名的詞組元素分布如圖5(a)和(b)所示。

      圖5 合法域名和惡意域名詞組元素頻率的分布(部分)

      由合法域名和惡意域名的N-gram(N=2,3)結(jié)果分布,可以看出DGA 生成的惡意域名的詞組元素與合法域名分割的詞組元素頻率有很大的差異,同時(shí)惡意域名的詞組元素分布較為均勻,而合法域名的詞語元組分布差異很大,所以bigram 分割后產(chǎn)生的詞組元素具有較好的域名分類特征。

      N=4,5 時(shí),由于詞組元素位數(shù)增多,合法域名字符串已經(jīng)可以看出明顯的單詞特征,而D1數(shù)據(jù)集中的惡意域名經(jīng)過N-gram 算法處理后,不存在這些類詞組元素的字符串,通過分析N-gram 算法處理后,詞組元素的數(shù)字特征如表3 所示。

      表3 N-gram 算法結(jié)果分析

      分析中使用均值、方差、偏度和峰度作為數(shù)字特征的指標(biāo)分析兩類域名N-gram 處理后的結(jié)果。 均值是表示詞組元素分布集中趨勢(shì)的指標(biāo);方差能看出詞組元素的數(shù)量變化趨勢(shì);偏度能夠看出域名的詞組元素分布是否對(duì)稱;峰度能夠得到域名詞組元素?cái)?shù)據(jù)分布相較正態(tài)分布的不同。

      從表3 可以看出,除N=1 外,N-gram 處理后合法域名和惡意域名的詞組元素具有相同的特征。 在N=2,3,4,5 時(shí),惡意域名詞組元素的方差均小于合法域名的詞組元素,方差小說明域名詞組元素分布的均勻,為隨機(jī)生成的域名;方差大,則詞組元素分布集中,是人為干預(yù)產(chǎn)生的域名。 惡意域名詞組元素的偏度小于合法域名詞組元素,在數(shù)據(jù)分布上,惡意域名較合法域名有更好的對(duì)稱性。 從峰度來看,惡意域名的數(shù)據(jù)分布比合法域名的數(shù)據(jù)分布更貼合正態(tài)分布。

      以bigram 處理后的數(shù)據(jù)為例,實(shí)驗(yàn)中使用word-hashing 技術(shù),在每個(gè)二級(jí)域名的首部和尾部添加上標(biāo)識(shí)符“#”,數(shù)據(jù)元素由1 417 個(gè)增加到了1 486 個(gè),首尾標(biāo)志的增加標(biāo)注了域名的部分位置信息,在沒有大幅造成冗余的同時(shí),豐富了識(shí)別過程中的特征。 所以使用N-gram 算法和word-hashing 組合的數(shù)據(jù)預(yù)處理方法能夠有效提取域名的字符頻率和字符位置信息特征。

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

      3.3.1 評(píng)價(jià)指標(biāo)

      實(shí)驗(yàn)中使用準(zhǔn)確率(Acc)評(píng)價(jià)算法對(duì)域名的分類精度,使用召回率(recall)評(píng)價(jià)模型對(duì)惡意域名的分類情況,準(zhǔn)確率的計(jì)算公式如式(8)所示。

      其中,TP表示惡意域名且被預(yù)測(cè)為惡意域名的數(shù)量,FN表示惡意域名但被預(yù)測(cè)為合法域名的數(shù)量,TN表示合法域名且被預(yù)測(cè)為合法域名的數(shù)量,FP表示合法域名但被預(yù)測(cè)為惡意域名的數(shù)量。

      召回率的計(jì)算公式如式(9)所示。

      由式(9)可以看出TP+FN為數(shù)據(jù)集中惡意域名的總數(shù),所以召回率可以計(jì)算出模型對(duì)惡意域名的檢測(cè)效果。

      為了驗(yàn)證本文提出的基于bigram 和Transformer的框架檢測(cè)惡意域名的結(jié)果,本文設(shè)計(jì)了4 組實(shí)驗(yàn),以下實(shí)驗(yàn)均在keras 深度學(xué)習(xí)框架下,Tensorflow 后端和sklearn 模塊中實(shí)現(xiàn)。

      3.3.2 N-gram 算法對(duì)比實(shí)驗(yàn)

      為了選擇出效果更好的語言模型,對(duì)N-gram 技術(shù)中N的取值進(jìn)行分析。 對(duì)于N≥3 時(shí),雖然可以捕獲更多的特征,對(duì)字符預(yù)測(cè)的能力也顯著提升,但是在模型中產(chǎn)生大量的稀疏矩陣,容易導(dǎo)致算出的概率失真,并且參數(shù)空間很大會(huì)造成維數(shù)災(zāi)難,模型在訓(xùn)練時(shí)對(duì)時(shí)間和內(nèi)存會(huì)產(chǎn)生巨大的損耗,導(dǎo)致實(shí)驗(yàn)不能順利進(jìn)行。 在原有N-gram 和Transformer 檢測(cè)模型的基礎(chǔ)上,使用基于L1 正則化的特征選擇算法對(duì)特征進(jìn)行優(yōu)化,經(jīng)過特征增益處理,除了實(shí)現(xiàn)篩選特征的目的,還對(duì)高維的矩陣進(jìn)行了降維,大大降低了實(shí)驗(yàn)時(shí)間和內(nèi)存損耗,使實(shí)驗(yàn)可行。

      對(duì)N的取值進(jìn)行測(cè)試,探究最合適的N的取值,結(jié)果如表4 所示。

      表4 N-gram 算法對(duì)比

      實(shí)驗(yàn)結(jié)果表明,模型中使用brigram 處理數(shù)據(jù)得到的效果最好。 隨著N值的變化,雖然得到的詞組元素種類不斷增加,但因?yàn)樵~組元素的基本單位在擴(kuò)充,域名中符合同一種類的詞組元素的數(shù)目必然減少,所以訓(xùn)練得到的有效特征減少。 以“l(fā)inkedin”為例,其“l(fā)i”詞組元素在數(shù)據(jù)集D1中共有749 個(gè),經(jīng)過trigram 處理后,“l(fā)in”詞組元素在D1中共有192 個(gè),少于二元詞組元素處理的結(jié)果。 同時(shí),訓(xùn)練得到的模型識(shí)別的準(zhǔn)確率不斷降低,且召回率不斷升高,說明發(fā)生了過擬合現(xiàn)象。

      3.3.3 網(wǎng)絡(luò)模型對(duì)比實(shí)驗(yàn)

      數(shù)據(jù)集均用bigram 處理,將輸出后的結(jié)果用經(jīng)典的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)算法進(jìn)行比較,實(shí)驗(yàn)選取Nalve Bayesia 算法、XGBoost 算法、RNN 模型、LSTM模型與Transformer 模型進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果如圖6所示。

      圖6 模型訓(xùn)練算法對(duì)比

      可以看出,由于Transformer 模型能夠提取更多的字母的位置關(guān)系,同時(shí)使用多頭注意力機(jī)制,算法能夠捕捉更多的字詞組合間的特征,所以在惡意域名分類問題上取得了較好的效果。

      3.3.4 多頭注意力head 對(duì)比實(shí)驗(yàn)

      對(duì)于Transformer 模型中,head 的數(shù)量也會(huì)對(duì)實(shí)驗(yàn)產(chǎn)生影響,通過改變head 的值進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖7 所示。

      圖7 準(zhǔn)確率和召回率變化趨勢(shì)

      從圖7 可以看到,當(dāng)head 數(shù)量為5 時(shí),模型的Acc和recall均達(dá)到最好效果,此時(shí)改變head 數(shù)量并不能對(duì)模型的檢測(cè)效果有所提高,即增加對(duì)特征矩陣的線性映射的次數(shù),無法在增加的線性空間內(nèi)提取出有效的特征。 根據(jù)該實(shí)驗(yàn)結(jié)果,檢測(cè)模型中head的值取5 時(shí)會(huì)使惡意域名檢測(cè)效果達(dá)到最優(yōu)。

      3.3.5 消融實(shí)驗(yàn)對(duì)比

      為了進(jìn)一步驗(yàn)證檢測(cè)模型中各部分對(duì)實(shí)驗(yàn)的影響,對(duì)本文提出的N-gram 和Transformer 惡意域名檢測(cè)模型進(jìn)行消融實(shí)驗(yàn)。 首先使用bigram 和Transformer 實(shí)驗(yàn),為了驗(yàn)證word-hashing 的有效性,使用word-hashing 處理后的數(shù)據(jù)集進(jìn)行惡意域名檢測(cè);之后通過增加L1 正則化,對(duì)特征增益前后的模型進(jìn)行對(duì)比,驗(yàn)證特征增益對(duì)模型的影響,實(shí)驗(yàn)結(jié)果如表5所示。

      表5 消融實(shí)驗(yàn)分析

      從表5 可以看出,使用word-hashing 可以增加域名字符串中的首尾位置信息,使模型檢測(cè)的準(zhǔn)確率和召回率小幅提升。 添加L1 正則化后,模型訓(xùn)練的時(shí)間大幅減小,同時(shí),模型的準(zhǔn)確率增加了1.80%,召回率增加了1.15%,結(jié)果表明,L1 正則化后增益的特征能夠更準(zhǔn)確地檢測(cè)出惡意域名。

      綜上所述,本文提出的N-gram 和Transformer 框架可以有效、準(zhǔn)確地檢測(cè)惡意域名。

      4 結(jié)語

      針對(duì)現(xiàn)有惡意域名檢測(cè)算法提取深層特征較少的現(xiàn)狀,提出了N-gram 和Transformer 的深度學(xué)習(xí)框架,提高了域名內(nèi)字母位置信息、字母間組合關(guān)系特征的提取效果。 針對(duì)惡意域名檢測(cè)問題,本框架還有需要改進(jìn)的方面,域名預(yù)處理嘗試使用組合Ngram 的結(jié)果;對(duì)網(wǎng)絡(luò)模型優(yōu)化,使得更貼合惡意域名的應(yīng)用場(chǎng)景,提高識(shí)別的準(zhǔn)確率。

      接下來將會(huì)挖掘字母間其他深層的特征,如,相鄰的輔音分布、輔音元音組合的統(tǒng)計(jì)。 此外,針對(duì)對(duì)抗生成網(wǎng)絡(luò)、文本生成算法[23]進(jìn)一步研究,網(wǎng)絡(luò)結(jié)構(gòu)是否能抵御惡意樣本的攻擊也是今后研究的主要內(nèi)容。

      猜你喜歡
      域名詞組合法
      合法兼職受保護(hù)
      被賴賬討薪要合法
      公民與法治(2020年3期)2020-05-30 12:29:56
      合法外衣下的多重阻撓
      中國外匯(2019年14期)2019-10-14 00:58:32
      如何購買WordPress網(wǎng)站域名及綁定域名
      找個(gè)人來替我懷孕一一代孕該合法嗎?
      媽媽寶寶(2017年2期)2017-02-21 01:21:22
      騰訊八百萬美元收購域名
      副詞和副詞詞組
      頂級(jí)域名爭(zhēng)奪戰(zhàn):ICANN放出1930個(gè)通用頂級(jí)域名,申請(qǐng)者有上千家
      咱去國外買域名
      灌云县| 娄烦县| 璧山县| 常德市| 洞头县| 镇安县| 田东县| 横山县| 吉木乃县| 隆德县| 论坛| 东光县| 宜川县| 四会市| 翁牛特旗| 浦城县| 南投县| 丘北县| 开封市| 界首市| 斗六市| 翁牛特旗| 长顺县| 清远市| 雷州市| 故城县| 甘谷县| 万山特区| 余庆县| 罗田县| 阳新县| 吉安市| 霍州市| 山丹县| 云阳县| 右玉县| 水城县| 明光市| 库车县| 华容县| 习水县|