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

基于CNN-XGBoost的惡意URL檢測

2023-05-29 10:20:08趙世雄張紫妍
軟件導刊 2023年5期
關鍵詞:特征檢測模型

趙世雄,韓 斌,張紫妍

(江蘇科技大學 計算機學院,江蘇 鎮江 212000)

0 引言

互聯網的高速發展給人們帶來便利的同時也帶來了諸多安全問題,其中以Web 安全問題最為顯著。國外知名安全廠商賽門鐵克在2020 年5 月發出的安全報告中統計,目前通過Web 進行攻擊的行為占據所有網絡非法攻擊的70%以上[1];國內360 安全廠商發布的2020 年安全態勢報告中指出,釣魚郵件的比例大幅增加,攻擊者通過偽造郵件誘導用戶點擊其構造的惡意URL,進而獲取用戶信息,賬戶甚至密碼;根據OWASP 組織發布的Web 應用安全攻擊排名中可以看出,跨站腳本、注入缺陷、惡意文件執行這三大攻擊方式占據了榜單的前三名。這些不同攻擊方式的相同點都是攻擊者構造惡意URL 來偽裝成正常請求誘導用戶或者繞過企業安全機制以達到獲得服務器權限的目的,對企業或者用戶造成數據甚至財產損失。因此高效檢測惡意URL 能給企業和用戶帶來安全保障,同時也是構建網絡安全解決方案的重要方向之一,具有重要的研究意義。

近年來,在惡意統一資源標識符(Uniform Resource Locator,URL)判斷方面主要有兩大類方法。第一種是傳統的基于黑名單方式檢測惡意URL,這種方式有兩大局限性:一是無法防御未知或不在黑名單中的惡意攻擊。這種方法往往是在出現了新型的惡意攻擊后再通過人工把規則寫進黑名單庫,此時已經亡羊補牢,規則還未來得及寫入黑名單庫,系統可能就被攻擊者攻破,因此時效性較低,跟不上攻擊者的速度,只是一味的被動防御,做不到自動識別各種各樣的攻擊行為;二是基于黑名單的識別需要耗費較大的人力物力維護一個惡意URL 庫,防守方需要一個專業的安全人員無時無刻地更新規則,規則維護成本和規則構造成本比較高。

二種是基于機器學習檢測惡意URL。機器學習檢測的準確率較高,但是機器學習所需要的特征都基于人工去提取,這種方式有三大弊端:第一,特征更新速度慢。惡意URL 變幻多端,手工提取的特征無法適應惡意URL 的多樣性,因此會對整個檢測系統產生較大的誤報和漏報,誤報會導致誤攔截的情況,影響業務的穩定,而漏報會導致攻擊者趁虛而入,影響業務的安全性;第二,完成龐大的特征工程耗費的不僅是人力更是時間,這種方法對設計者攻防的要求比較高,需要精通Web 安全的各種攻擊行為和特征;第三,機器學習模型的精確率很大程度依賴于參數的選擇,基于目前的研究,大多學者都是根據現有的測試集通過主觀經驗去調整參數,而生產環境中的惡意URL 復雜多樣,其主觀調整的參數會影響真實的準確率。

隨著深度學習的不斷發展,其不僅在計算機視覺領域取得優越的成果,在文本分類等諸多神經語言程序學(Neuro Linguistic Programming,NLP)領域中也被廣泛學者運用[2]。惡意URL 本身就是一個長短文本,同時考慮到機器學習無法自動提取特征,因此本文提出利用深度學習來進行URL 特征的提取,一方面可以減少機器學習中通過人工提取特征所消耗的人力和時間,另一方面通過深度學習可以對原始的URL 進行自動特征提取,所提取的特征能較大程度地適應惡意URL 的多樣性,檢測出各種復雜的攻擊場景。近年來在機器學習的比賽中,極限梯度算法(Extreme Gradient Boosting,XGBoost)被許多參賽者使用,其有效性和精確性得到了很好的回報,因此本文提出將深度學習與機器學習相結合的惡意URL 檢測模型。該模型主要通過Word2vec 將預處理好的URL 訓練成詞向量,輸入到卷積神經網絡(Convolutional Neural Networks,CNN)中去提取特征,最終將提取的特征輸入到XGBoost 分類器中進行分類,并通過煙花算法(Fireworks Algorithm,FWA)優化XGBoost關鍵參數來提高惡意URL 的準確率。

1 相關研究

在國外,基于已知黑名單庫的識別中比較有知名度的是IBM 的 x -force Exchange,這是一個開源的威脅情報平臺,為企業和安全人員提供查詢已知的惡意URL、惡意軟件、垃圾郵件、Web 漏洞等威脅情報。在國內,比較具有知名度的就是微步在線的威脅情報庫,其開放API 接口供安全人員去調用其黑名單庫進行惡意URL 的識別。基于黑名單庫識別惡意URL 的另一種表現形式就是國內外各大安全廠商例如綠盟、Mcafee、奇安信等都出的一款名為WEB 應用防火墻的產品。該產品里面內置了目前曝光在互聯網上的所有Web 漏洞,利用正則寫成規則庫,通過匹配規則庫的方式來驗證是否為惡意攻擊行為。這種方式帶來的局限就是需要頻繁更新廠商發布的規則庫以及需要面對業務中因為開發的不規范導致規則庫在解析時候帶來誤報而影響業務的問題,往往給企業的業務造成巨大的影響,同時還無法應對在規則庫外的新型攻擊行為。這種局限性在很多企業組織的攻防演練中體現的較為突出。攻擊方往往會放出很多0day(未在互聯網上爆出的漏洞),這種0day100%會繞過WEB 應用防火墻,此時防守方只能被動挨打,任由攻擊方拿到服務器權限獲取最終的勝利。

基于機器學習算法檢測的原理是手工提取特征,然后通過訓練龐大的數據生成威脅檢測模型對未知的URL 進行判斷。例如,吳少華等[3]、甘宏等[4]通過TF-IDF 提取文本特征后輸入SVM 進行訓練,雖然便捷但TF-IDF 選取的特征都是頻率較低的值,不能較好地提取出惡意URL 的關鍵特征。同時惡意URL 是一個文本,使用TF-IDF 進行特征提取會忽略詞與詞之間的上下文聯系,使得提取的特征不精確導致最終模型精度較低。且文獻中數據集相對較少,但是生產環境中面對以億為單位的數據量,使用TFIDF 會生成龐大的特征向量增加計算的復雜度和空間開銷,最終影響模型的檢測效率;劉建等[5]利用決策樹、SVM、樸素貝葉斯3 種機器學習算法構造一個多層過濾的檢測模型,該模型對3 種算法設定一個閾值,滿足閾值條件則判斷URL 類別,不滿足則進行下一個分類器的閾值判斷,這種方式充分發揮了3 種算法各自的優勢,提高了模型準確率;李澤宇等[6]利用集成算法訓練多個弱分類器,再并行地將這些弱分類器訓練的模型組合起來提高模型的準確率,相較單個模型預測更準確,但集成算法在沒有經過優化的條件下容易出現過擬合以及陷入局部最優的問題。同時,該作者手工提取了10 多種特征,根本無法適應惡意URL 的多樣性,將該模型應用于生產環境中,面對每天按億為單位的URL 數據量,最終精度會大大折扣且產生大量誤報,最終影響正常業務。

近年來,深度學習在自然語言領域取得了很多成功的實踐。例如,梁斌[7]、高彥琳等[8]、孫敏等[9]均利用CNNLSTM 網絡對電影以及微博評論進行情感分析,通過CNN進行提取文本特征,LSTM 層進行特征排序與分類,最后與CNN、LSTM 網絡進行對比,得出CNN-LSTM 的準確率更高證明了CNN-LSTM 模型的有效性。同時也有越來越多的學者將深度學習運用到惡意URL 檢測上,例如王歡歡等[10]將URL 分為主機和參數兩大部分,分別提取了20 種惡意的主機特征和參數特征,并組合起來輸入到其提出的Bi-IndRNN 網絡中進行分類,作者對比了KNN、IndRNN、LSTM 在該模型中的分類精度,最終證明其提出的Bi-IndRNN 精確率最高,達到95.96%;張婷[11]利用skip-gram 對惡意URL 進行詞向量編碼,并輸入到LSTM 中,利用平均池化的方式融合LSTM 提取到的特征,提高了分類的準確率,最終準確率達到97.2%;梁飛[12]對URL 通過N-gram 進行分詞處理,embedding 成詞向量輸入到BiLSTM 模型中進行特征提取,同時加入Attention 機制捕捉文本中詞與詞之間的關聯性,最后輸入到分類器進行分類,該模型在BiLSTM 算法中加入Attention 機制準確提取了惡意URL 的特征,提高了模型準確率。潘司晨[13]、陳康等[14]利用CNN 算法提取特征并將提取到的特征輸入到softmax 進行分類,相較于通過機器學習進行惡意URL 檢測的方法減少了特征提取時間,豐富了特征提取的多樣性,進而提高了識別的精確率,可見深度學習在提取文本特征上具有良好的效果。此外在商業領域,國內著名安全廠商長亭科技利用深度學習算法發布了國內第一款出了基于語義分析的WAF,其通過接入Web 訪問流量,進行協議解析與深度解碼,調動深度學習引擎,對攻擊行為特征進行威脅定級,生成基于客戶業務流量的威脅檢測模型。隨著樣本數據的增加,威脅模型越來越精準,在防護0day 漏洞的同時也實現真正意義上的主動防御,給諸多企業帶來了安全保障。

在上述研究的基礎上,本文結合深度學習與機器學習的優缺點,提出基于CNN-XGBoost 相結合的惡意URL 檢測模型。該模型利用CNN 提取惡意URL 特征,較大程度降低了人工提取特征所消耗的時間,利用 FWA 算法自動調整XGBoost 參數,避免了XGBoost 算法在訓練時陷入局部最優以及過擬合的現象,同時XGBoost 分布式計算能力也極大降低了模型訓練時間,提高了運行效率和準確率。

2 特征提取

2.1 數據處理

Http 協議通過URL 建立數據的連接和傳輸,URL 主要分為協議、域名、端口、文件名和參數5 個部分,本文主要研究的是惡意URL,而惡意URL 的變換主要在URL 后面4個部分,因此協議部分可以不作處理。從網上爬取的URL都是經過瀏覽器URL 編碼過的,會將一些字符串轉換成編碼后的形式,直接作為數據集會導致特征提取有誤差,因此對爬取到的數據集先進行URL 解碼,再統一轉換為UTF-8 的形式,最后將各個URL 協議部分去掉只保留其余4 個字段,同時對數據集進行去重處理得到最終的數據集,預處理結果如圖1所示。

2.2 字符向量

Fig.1 URL preprocessing圖1 URL預處理

利用 Word2Vec 對已經預處理好的URL 進行詞向量訓練,Word2vec 是Google 開發的開源生成詞向量工具,包括連續詞袋模型(Continuous Bag of Words,CBOW)和Skipgram 兩種模型。CBOW 模型通過上下文或者是周邊的詞語預測當前詞語,Skip-gram 模型通過當前詞預測詞的上下文或周邊的詞。本文利用CBOW 模型對預處理好的URL 進行并訓練生成詞向量。CBOW 的輸入層由URL 中每個單詞的one-hot 向量組成,隱藏層為one-hot 向量經過與權重矩陣相乘后組成的向量,輸出層為將隱藏層得到的向量乘以輸出權重矩陣得到最終的輸出向量。設URL 為U,單詞個數為x,URL 長度為L,其中L 的長度設置為200,不足用O 補齊,輸出向量的維數為N,那么最終每個URL被表示為L行N 列的矩陣。

2.3 CNN網絡

URL 可以看作文本形式,故本文采用CNN 自動對URL進行特征提取。由圖2 可知,CNN 網絡模型主要包括3 個卷積層,3 個max pooling 以及1 個全連接層,結構如圖2 所示。3 個卷積層對URL 中的主機名+端口、文件名、參數這3 個部分進行訓練以提取相應特征。對于長度為h 的卷積窗口,輸入矩陣的卷積操作表示為:

式中,w ∈Rh*q表示卷積核的權重;b∈R表示偏差項bias,vi:i±h表示第i個單詞到第i+h個單詞組成的矩陣;f為激活函數,本文選取ReLu 函數,其比sigmoid 收斂速度更快,有利于降低CNN 網絡的運算量,在處理大數據集時優勢突出。

Fig.2 CNN network structure圖2 CNN網絡結構

考慮到惡意URL 的特征復雜多樣,會影響模型的運行速度和準確率,因此采用池化的方式減少特征圖大小,提高模型運行效率。常見池化方式為最大池化和平均池化,觀察數據集可以發現URL 中惡意詞語比例往往比正常詞語低且差異比正常詞語大,而最大池化的作用就是保留文本中差異最大的特征,去除一些冗余無關的特征。因此,相較于平均池化著重保留文本的上下文信息,最大池化更有利于惡意特征的提取。通過最大池化方式提取特征圖中的關鍵特征c=max{ }c,將提取到的關鍵特征進行拼接,得到以下輸出矩陣:

將得到的C→輸入全連接層,然后加入dropout,防止過擬合產生。

3 FWA-XGBoost

3.1 XGBoost算法

XGBoost 是廣泛應用的樹形學習算法,其是在GBDT(Gradient Boosting Decision Tree)的基礎上改進而來,計算速度和精度有所改善[15-17]。XGBoost 的核心是對目標函數進行二階泰勒展開,利用不斷分裂的新樹擬合上次預測的殘差以保證模型準確性。XGBoost 增加了隨機采樣比例,通過遍歷隨機選取的特征降低遍歷所有特征帶來時間的浪費以及過擬合現象,通過設置樹的最大深度和閾值防止樹生長過深的現象。同時XGBoost 支持并行化,可以對每個特征進行分塊并排序,允許以樹狀結構排列對輸出變量進行預測,大大提高了模型訓練速度。模型推導公式為:

將所有樣本Xi劃入第j個葉子結點樣本集中,表示為:

將公式(6)和(7)代入公式(5)中,得到的目標函數表示為:

以上推導過程可以得出一棵最佳決策樹以及決策樹每個節點對應的的最優得分。

3.2 FWA算法

FWA 算法是通過觀察燃放煙花產生火花這一現象而提出的一種智能優化算法[18-20]。對于FWA 算法來說,每一朵煙花都可以作為一個可行解,每一朵煙花爆炸產生火花的過程就是FWA 算法不斷搜索最優解的過程。FWA 算法爆炸產生的爆發性和多樣性使其在全局搜索和局部搜索上都具有良好的尋優能力,其具體實現步驟如下:

步驟1:初始化種群數位N,隨機產生一部分煙花,每朵煙花xi代表一個解。

步驟2:在N 個位置上分別釋放煙花,并且計算煙花的適度值f(xi),同時計算每朵煙花產生的火花個數Si以及爆炸半徑Ai,分別表示為:

式中,ymin和ymax分別當前種群中適應度的最小值和最大值;表示爆炸半徑大??;ε表示機器最小量,用于避免分母為0;M 是用于調整爆炸產生火花數量的常數。

步驟3:根據適應度值,通過公式(13)調整火花數量;公式(14)主要對爆炸和變異導致超出范圍的火花進行映射;公式(15)為變異算子,主要用于負責種群的多樣性,其目的是為了保存超出范圍的火花。

步驟4:采用輪盤賭法的方式在區域N-1 個煙花中選出適應值最小的煙花直接進入下一代種群,每個煙花被選中的概率為:

式中,D(xi)表示xi到其他個體之間距離總和;d(xi,xj)表示任意一個xi到xj之間的歐式距離;k 表示候選煙花種群。

步驟5:滿足終止條件則結束,不滿足則返回步驟2。

3.3 XGBoost算法改進

目前XGBoost 常用的參數優化方法有人工調參和網格搜索兩種。人工調參需要調參者對各個參數很熟悉,并且需要通過大量實驗確定最終參數,時間成本大而且太過依賴主觀判斷。網格搜索法又稱窮舉搜索法,其會在指定參數范圍內按照步長遍歷所有參數,直到找到精度最高的一個參數。該方法會導致在選取參數范圍較大的情況下計算復雜度呈指數形式增長,增加設備性能消耗,降低整個模型的效率,一般適合于規模較小的超參數優化。

本文采用FWA 算法對XGBoost 參數進行優化。XGBoost 參數主要分為通用參數、Booster 參數以及學習目標參數,其中通用參數主要對宏觀函數進行控制,學習目標參數主要控制分類類型是二分類還是多分類,而Booster 參數可以調控XBOOST 最終分類的效果和計算代價??紤]到本實驗數據集較大,調整過多的參數反而會導致模型運行慢降低計算效率。因此,本次實驗主要調整Booster 中三大關鍵參數,其中Learning_rate 表示每一步迭代的步長,設置太大會降低準確率,設置太低會影響訓練的速度。取值范圍設置為[0,1],缺省值為0.3,該參數決定模型的運行速度和準確率;Subsample 表示對于每棵樹隨機進行采用的比例值,取值范圍在(0,1],缺省值為1;Max_depth 表示樹的最大深度,數值過大模型學習到的樣本會更具體但會出現過擬合狀態,取值范圍[0,∞],缺省值為6。Subsample和Max_depth 決定模型的復雜程度,防止模型出現過擬合現象,使模型學習更加具體。將這三組參數作為FWA 尋優解進行優化,利用測試集進行預測,將平均誤差作為適應度函數,表示為:

4 實現流程

如圖3 所示,本文實驗分為三大部分,第一部分為數據預處理,主要對公網爬取的數據集進行數據清理以及均衡正負樣本集;第二部分為特征提取,對數據集進行編碼輸入到CNN 網絡中進行特征提??;第三部分為模型訓練和優化,將提取到的特征輸入到XGBoost 中進行回歸分析,同時結合FWA 算法對XGBoost 關鍵參數進行優化以提高模型精確率。

根據國家疾病控制中心性病診斷標準中對于梅毒診斷標準施行診斷,記錄不同檢查結果的靈敏度、特異度、陰性預測值以及陽性預測值[5-6]。

Fig.3 Model implementation process圖3 模型實現流程

5 實驗方法與結果分析

采用準確率、召回率、精確率、F1 以及時間成本5 個指標評估模型分類能力,并與通過手工提取特征-XGBoost 的檢測模型以及其他機器學習算法模型進行比較,驗證本文CNN-XGBoost 模型檢測惡意URL 的有效性。

5.1 實驗數據集

惡意URL 來源于Github 中的部分數據集以及知名釣魚網站PhishTank 中爬蟲獲取的數據,共計8 萬條,作為正樣本。正常URL 來源于Alexa 公布的正常網站,從中隨機選取前100萬個數據中的5萬條作為負樣本。

上述URL 經過去重以及數據清洗工作得到126 593 個樣本,其中正樣本71 785 條,負樣本54 808 條,正負樣本比約為6∶4。隨機選取數據集中的30%作為測試樣本,70%作為訓練樣本。

5.2 實驗環境

硬件環境:CPU 為Intel(R)Core i5-10210U;內存為DDR4 16G;硬盤為512G 固態。

軟件環境:gensim==2.0.0;numpy==1.12.0;pandas==0.19.2;sklearn==0.18.1;tensorflow==1.1.0。

5.3 CNN模型參數設置

利用CNN 模型對惡意URL 的主機名、路徑+文件名、參數域3 個部分進行特征提取。根據數據集樣本大小,將3 個部分的卷積核大小分別設置為5×20×8、5×30×8、5×40×8,防止CNN 出現過擬合現象,使用Dropout 機制同時加入L2 正則化參數,采用Adam 優化器,最終通過最大池化方式以及全連接層輸出一個128 維的一維向量,作為后續XGBoost算法的輸入,具體參數如表1所示。

Table 1 CNN parameters表1 CNN參數

5.4 基于FWA的XGBoost參數優化

基于FWA 的XGBoost 參數優化實驗分為3 個,結果見表2。實驗一中FWA 算法初始總群數量為30,最大振幅為40,正?;鹦强倲禐?5,特殊火星總數為5,尋優迭代次數為100。在迭代40 次時,適應度值下降的幅度降低,表明此時算法收斂速度變得緩慢,從而導致算法在后續迭代過程中全局搜索能力開始降低,60~100 之間的適應度值一直徘徊在9±0.2 之間,即該條件下搜索能力逐漸下降,此時容易導致產生較少火花,火花減少帶來的影響就是算法只能在一個很小的范圍內不斷搜索從而陷入局部最優,從最終適應度值9.105 可以發現,該條件下的算法確實已經陷入局部最優中。

Table 2 Experimental data of fireworks algorithm表2 FWA算法實驗數據

為提高FWA 算法的收斂速度,實驗二中使用曼哈頓距離計算公式代替原有的歐式距離計算公式的選擇策略,表示為:

與歐式距離不同的是,曼哈頓距離計算兩點之間的距離只需要進行加減而不需要開平方,不僅降低了計算開銷,也消除了開平方導致取近似值帶來的誤差,加快了算法收斂速度,又增強了全局搜索能力,最終提高了搜索精度。實驗二中,算法在迭代40 次時適應度值已經搜索到了8.713,而實驗一100 次迭代時才搜索到9.015,實驗二以較少的迭代次數搜索到了最優值。同時實驗二算法在迭代60 次時的適應度值降低到了7.927,此時算法前期的全局尋優能力和收斂速度得到顯著提高,但與實驗一一樣,實驗二在迭代60 次后也只是在搜索到的最優值附近繼續搜索,并沒有跳出最優值,可見該算法跳出局部最優的能力較弱。

為跳出局部最優,實驗三將火星種群數量增加至50,將每次迭代產生的正?;鹦强倲禍p少至15,其余與實驗二保持一致,這樣增加了后續迭代過程中選擇較優火星的概率和較優火星產生的正?;鹦潜槐A舻母怕剩欣诤罄m跳出局部最優。可以看出,迭代到40 次時適應度值已經降低至7.265,比前兩組實驗的適應度值降低許多,可見算法收斂速度增加了很多。同時算法在60~80 次迭代的過程中由原本的6.576 跳出至最終的5.734,已跳出局部最優,算法整體優化性能提高。

FWA 算法和網格搜索初始種群數量為50,尋優迭代次數取100,二者比較結果見圖4。FWA 算法在尚未迭代至40 次時便已迅速收斂至網格搜索的最優值,在迭代至60 次時已經達到全局最優解;在60~100 次的迭代過程中進行局部搜索,跳出了6.576 的最優值,達到最終的5.617。而反觀網格搜索在20~40 次迭代的過程中便已經逐步陷入局部最優解,由于尋優參數的區間值較大,后續40~100次迭代相當于在進行無效搜索,最終適應度值遠低于FWA算法。綜上所述,FWA 算法無論是收斂速度、全局尋優能力還是局部尋優能力均高于網格搜索。因此,本文最終選取FWA 算法搜索出來的最優值作為XGBoost 關鍵參數值,其最優參數為Subsample=0.5,Max_depth=11Learning_rate=0.2。

Fig.4 Comparison of firework algorithm and grid search parameter optimization圖4 FWA算法與網格搜索參數尋優比較

5.5 結果分析

為評估 CNN-XGBoost 模型在惡意URL 檢測上的適用性,選取文獻[14]和文獻[20]中的特征選擇方法和分類算法以及常用分類器SVM、邏輯回歸以及隨機森林進行比較,從精確率、準確率、召回率、F1 分數以及訓練時間5 個方面評估模型的檢測能力,結果見表3??梢钥闯?,CNNXGBoost 的精確率、召回率、F1 在幾個模型中最高,其中精確率達到97.2%,召回率達到94.1%,F1 值達到93.5%,表明其能很好地提取特征并基于提取的特征準確分類。文獻[14]中基于手工提取—XGBoost 的方法精確率只達到90.9%,原因是手工提取的特征并沒有適應訓練樣本中惡意URL 特征的多樣性,導致有部分惡意樣本由于其特征未在手工提取的特征中而影響了整體模型精度;文獻[20]中的Bi-IndRNN 模型精確率達到94.5%,與本文算法相比降低2.7%,可見通過CNN 自動提取特征的準確率明顯高于手工提取特征。CNN-RF 模型的精確率僅次于CNN-XGBoost,達到96.1%,而CNN-SVM 模型的精確率只達到92.7%,可見SVM 算法雖然適合進行二分類,但在數據集龐大時效率低下。CNN-LR 模型精確率為93.6%,其使用極大似然估計函數對目標函數進行求解,在數據集龐大的情況下會使模型不斷擬合數據,從而導致最終模型陷入過擬合狀態。而XGBoost 算法加入了正則化,控制了模型復雜度,自動調整learning_rate,max_depth 以及subsample 這3 個參數,避免了在樣本集過大時葉子節點過多而造成的巨大開銷,同時可避免限制樹的最大深度以及樹的采樣率陷入過擬合狀態。XGBoost 最大的優點是利用損失函數進行二階泰勒展開,通過學習新的函數擬合上次預測的殘差,使模型更接近真實值,加快了模型收斂,提高了模型準確率。

在相同的實驗環境下,CNN-XGBoost模型只用了1 361s便完成了模型訓練,可見其并行計算的能力大大降低了模型訓練時間。而SVM 由于二次規劃求解支持向量,在數據量龐大的情況下求解速度變低導致時間消耗大,比CNN-XGBoost 多消耗近50%的時間。CNN-LR 使用梯度下降算法,利用較少的資源處理龐大數據,在時間成本方面有很大優勢。CNN-RF 完成模型訓練花費了1 721s,相較XGBoost 提高25%以上。因此,CNN-XGBoost 模型無論是準確率還是時間成本均優于其他機器學習模型。

Table 3 Indicators comparison of different models表3 不同模型評價指標比較

本次實驗還觀察了各模型在訓練過程中CPU 的使用情況,結果見圖5??梢钥闯?,各模型消耗的CPU 均在80%以上,CPU 使用率較高不僅會降低模型準確率和檢測速度,還會影響設備穩定性。在生產環境中,設備的穩定性決定著業務的穩定性。因此,如何在保證模型準確率的同時降低設備負載是未來需要克服的重要問題。

Fig.5 CPU% usage of each mode圖5 各模型CPU%使用情況

6 結語

Web 安全目前成為各大企業以及安全廠商的關注重點,市面上90%的防護采用傳統的黑名單防范機制,攻擊的多樣性導致黑名單防范的局限性日益凸顯,使得越來越多的安全廠商和安全研究員研究新型惡意URL 檢測。因此,針對日益嚴峻的Web 安全問題,本文分析了目前已有研究的優點以及缺點,提出基于CNN-XGBoost 的新型惡意URL 檢測模型。該模型利用深度學習進行特征提取,其能隨著模型訓練不斷調整從而提取最優特征,能更好地適應惡意URL 特征的多樣性,發現更多未知惡意攻擊,精確率高達97.2%。然而,本次實驗在設備性能消耗方面沒有進行較多優化,導致模型在訓練過程中使CPU 超負荷運行,影響了最終檢測率與穩定性。后續將繼續研究如何在保證模型準確率的同時降低對設備性能的消耗,使其適應更大數據量的環境。

猜你喜歡
特征檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
如何表達“特征”
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
3D打印中的模型分割與打包
主站蜘蛛池模板: 国产一级片网址| 亚洲高清无码久久久| 亚洲女人在线| 国产精品久久精品| 波多野结衣中文字幕一区二区| 无码 在线 在线| 亚洲国产成人无码AV在线影院L | 国产精品丝袜视频| 国产成人高清精品免费5388| 亚洲成人一区在线| 国产精品护士| 美女毛片在线| 亚洲第一成网站| 国产xx在线观看| 国产成人三级在线观看视频| 999精品视频在线| 色AV色 综合网站| 亚洲色欲色欲www网| 国产不卡一级毛片视频| 制服丝袜 91视频| 热热久久狠狠偷偷色男同| 亚洲人成影院在线观看| 91网红精品在线观看| 狠狠v日韩v欧美v| 青青操国产| 久久超级碰| 国产三级a| 中国一级特黄视频| 国产成+人+综合+亚洲欧美 | 国产门事件在线| 人妻丰满熟妇αv无码| 日韩在线视频网站| 精品无码人妻一区二区| 99久久精彩视频| 高清国产va日韩亚洲免费午夜电影| 久热精品免费| 日本午夜影院| 国产va在线| 欧美翘臀一区二区三区| 国内精品久久人妻无码大片高| 欧美国产精品不卡在线观看| 亚洲侵犯无码网址在线观看| 亚洲一欧洲中文字幕在线| 国产人人乐人人爱| 尤物视频一区| 午夜不卡视频| 3344在线观看无码| 日韩免费成人| 久久亚洲日本不卡一区二区| 久久久精品国产亚洲AV日韩| 激情无码字幕综合| 久久人人爽人人爽人人片aV东京热 | 日本不卡在线| 97视频免费看| 一级香蕉视频在线观看| 国产午夜福利亚洲第一| 亚洲天堂视频在线观看| 国产高清自拍视频| 国产精品一区二区不卡的视频| 在线观看国产小视频| 成年午夜精品久久精品| 精品亚洲欧美中文字幕在线看| 国产无码精品在线| 国产成人av大片在线播放| 最新国产成人剧情在线播放| 亚洲视频影院| 男人天堂伊人网| 亚洲中文字幕日产无码2021| 天天干伊人| 亚洲一区二区三区国产精华液| 亚洲精品爱草草视频在线| 一级毛片免费观看久| 热99精品视频| 激情在线网| 国产成人福利在线视老湿机| 国产91在线|日本| 成人福利在线视频| 免费激情网址| 成人午夜免费观看| 2022国产无码在线| 一本大道视频精品人妻| 精品国产一区二区三区在线观看|