摘要:為了更好地識別網(wǎng)絡(luò)中的惡意代碼,本研究提出了一種融合卷積神經(jīng)網(wǎng)絡(luò)(CNN)和極端梯度提升(XGBoost)技術(shù)的惡意代碼智能識別系統(tǒng)。該系統(tǒng)利用卷積神經(jīng)網(wǎng)絡(luò)提取惡意代碼的圖像特征,并采用極端梯度提升算法進行分類。實驗結(jié)果表明,該系統(tǒng)在測試集上取得了99.0%的精確率、97.4%的召回率和97.8%的F1值,顯著優(yōu)于對比算法,有效提升了惡意代碼識別的精度。這表明,研究方法能夠準確識別網(wǎng)絡(luò)中的惡意代碼,分類性能表現(xiàn)良好。研究成果為惡意代碼的智能識別提供了一定的技術(shù)支撐。
關(guān)鍵詞:CNN;XGBoost;惡意代碼;智能識別;特征提取
中圖分類號:TN915文獻標識碼:A
文章編號:1009-3044(2024)34-0020-04開放科學(資源服務(wù))標識碼(OSID):
0引言
在當今數(shù)字化時代,隨著互聯(lián)網(wǎng)的飛速發(fā)展和信息技術(shù)的廣泛應(yīng)用,病毒、木馬等惡意代碼已成為網(wǎng)絡(luò)安全領(lǐng)域的一大威脅。這些惡意代碼不僅危及個人隱私和數(shù)據(jù)安全,還可能導致數(shù)據(jù)泄露、系統(tǒng)癱瘓等嚴重后果,對國家安全和社會穩(wěn)定造成嚴重影響[1]。因此,開發(fā)高效、準確的惡意代碼識別技術(shù)顯得尤為重要。
傳統(tǒng)的惡意代碼識別方法主要依賴于特征工程和手工提取的規(guī)則,但這些方法往往難以應(yīng)對日益復雜和多變的惡意代碼攻擊[2-3]。近年來,深度學習技術(shù),尤其是卷積神經(jīng)網(wǎng)絡(luò)(ConvolutionalNeuralNet?work,CNN),在圖像識別、自然語言處理等領(lǐng)域取得了顯著成果。CNN憑借其強大的特征提取能力,能夠自動學習數(shù)據(jù)中的高層抽象特征,為惡意代碼識別提供了新的研究思路[4]。
然而,單一模型通常難以應(yīng)對復雜多變的惡意代碼攻擊,因此需要結(jié)合多種技術(shù)以提高識別的準確率和魯棒性[5]。極端梯度提升(eXtremeGradientBoost?ing,XGBoost)作為一種高效的梯度提升決策樹算法,在分類、回歸等任務(wù)中表現(xiàn)優(yōu)異,具有處理非線性關(guān)系和自動處理缺失值等優(yōu)點[6]。將CNN與XGBoost相結(jié)合,可以充分發(fā)揮CNN的特征提取能力與XGBoost的分類性能,從而有效提升惡意代碼識別的準確性和泛化能力。
基于此背景,本研究創(chuàng)新性地融合CNN和XG?Boost,構(gòu)建了一種惡意代碼智能識別系統(tǒng),以提高識別的準確率和效率。該系統(tǒng)有望為網(wǎng)絡(luò)安全領(lǐng)域提供更為高效、準確的惡意代碼識別方案,為應(yīng)對復雜的網(wǎng)絡(luò)安全威脅提供技術(shù)支持。
1惡意代碼智能識別系統(tǒng)設(shè)計
1.1基于改進CNN的惡意代碼特征提取方法
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)(CNN)需要大量的訓練數(shù)據(jù),其訓練過程可能耗費大量時間和存儲空間,同時在提取圖片信息時可能會忽略部分重要的圖片特征[7]。注意力機制能夠幫助CNN捕捉易被忽略的圖片信息,并強調(diào)關(guān)鍵的圖片特征。因此,本研究對傳統(tǒng)CNN進行了改進,在其基礎(chǔ)上引入了注意力機制。
CNN獨特的結(jié)構(gòu)使得隱含層中的卷積核能夠?qū)崿F(xiàn)參數(shù)共享,這一特性顯著降低了網(wǎng)絡(luò)的計算復雜度[8]??紤]到惡意代碼家族中的二進制數(shù)據(jù)之間存在一定程度的相似性,可以將這些二進制數(shù)據(jù)轉(zhuǎn)換為類似于圖像特征的向量形式?;谶@一轉(zhuǎn)換,利用CNN進行惡意代碼檢測成為一種可能且有效的方法。CNN能夠深入挖掘惡意代碼中的潛在特征,從而提升檢測的準確性和效率。
本研究采用改進的CNN模型來提取惡意代碼灰度圖像的特征。該模型在傳統(tǒng)CNN的基礎(chǔ)上引入了注意力機制,以增強對關(guān)鍵特征的關(guān)注。注意力機制能夠使模型有選擇性地關(guān)注輸入特征中的不同部分,為各部分分配不同的權(quán)重,從而突出關(guān)鍵信息。
具體而言,首先將神經(jīng)網(wǎng)絡(luò)從惡意代碼灰度圖像中提取到的特征作為注意力層的輸入。在特征圖中,每個像素的位置均由其坐標(i,j)表示。接著,利用注意力機制計算特征圖上每個像素的注意力因子,這些因子共同構(gòu)成了注意力向量。注意力權(quán)重矩陣通過公式(1)計算:
A=Softmax?Fcwf,bf?ReLU?Fcwd,bd(F),A∈[0,1](1)
式中:A代表注意力權(quán)重矩陣,F(xiàn)代表輸入到全連接層的向量,ReLU代表激活函數(shù)。
相比傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的激活函數(shù),改進的激活函數(shù)ReLU在避免梯度爆炸和梯度消失問題方面表現(xiàn)更為優(yōu)越,同時還能簡化計算過程。其公式定義如下:
f(x)=max(0,x)(2)
式中:x代表輸入值,f(x)代表輸出值。
將每個特征與對應(yīng)的注意力因子進行逐元素相乘,并計算加權(quán)平均值,從而得到平均注意力權(quán)重F?。這一權(quán)重F?可以被視為特征分布中最具代表性的中心點,它綜合了所有像素的注意力權(quán)重,能夠更準確地反映關(guān)鍵特征的重要性。平均注意力權(quán)重F?由公式(3)計算。
式中:F?代表平均注意力權(quán)重,fi,j代表注意力因子的特征,wi,j代表注意力權(quán)重變量。
注意力機制的算法如公式(4)所示:
ai,j=Softmax?Fcwf,bf?ReLU-Fcwd,bd(fi,j),ai,j∈[0,1](4)
式中:ai,j代表注意力因子,表示不同信息在當前情境下的影響程度。
為了實現(xiàn)損失函數(shù)的最小化或最大化目標,神經(jīng)網(wǎng)絡(luò)依賴優(yōu)化器來迭代更新其參數(shù),以降低訓練過程中的損失,從而改進模型性能并提升檢測精度。本研究采用Adam優(yōu)化算法作為優(yōu)化器,通過綜合考慮所有訓練樣本的梯度信息,實現(xiàn)學習率的自適應(yīng)調(diào)節(jié),從而加速收斂并提高模型的穩(wěn)定性。
在獲取到注意力加權(quán)的特征之后,利用全連接層對所提取的特征進行整合。在全連接層中,每一個神經(jīng)元均與前一層的所有神經(jīng)元相連,這種設(shè)計能夠?qū)崿F(xiàn)對前層網(wǎng)絡(luò)所得特征的全面匯總,并將多維特征展平處理,以便于后續(xù)的分類任務(wù)。模型結(jié)構(gòu)包括兩層卷積層、池化層、一層注意力層和兩層全連接層。卷積層與池化層用于提取惡意代碼灰度圖像的特征信息,這些特征在注意力層中進一步處理,最終在全連接層中轉(zhuǎn)換為分類結(jié)果并輸出。由于惡意代碼灰度圖像的結(jié)構(gòu)層次相對簡單,因此無須采用深層次的復雜網(wǎng)絡(luò)來進行圖像處理。
該神經(jīng)網(wǎng)絡(luò)模型接收由惡意代碼轉(zhuǎn)換而成的灰度圖像作為輸入,并輸出惡意代碼的檢測結(jié)果。通過將輸入特征進行線性組合得到輸出,并使用非線性激活函數(shù)ReLU(RectifiedLinearUnit)來提取特征,能夠有效減輕過擬合現(xiàn)象,同時避免梯度爆炸和梯度消失問題。全連接層用于整合特征,為后續(xù)分類任務(wù)提供輸入。此外,模型引入了注意力機制,以進一步提取圖像中的空間特征。
在全連接層之后,采用了Dropout策略來預防過擬合現(xiàn)象。具體而言,Dropout通過預設(shè)的概率隨機地將部分神經(jīng)元從網(wǎng)絡(luò)中臨時移除,從而減少模型對某些特定局部特征的過度依賴,增強模型的泛化能力。
整個流程首先將惡意代碼轉(zhuǎn)換為灰度圖像,這一轉(zhuǎn)換過程能夠保留更多信息,為后續(xù)的惡意代碼分類與檢測奠定堅實基礎(chǔ)。隨后,進行惡意代碼特征提取,轉(zhuǎn)換后的灰度圖像被用作神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)。通過卷積神經(jīng)網(wǎng)絡(luò)的卷積層和池化層對圖像進行深度處理,并結(jié)合注意力機制,能夠更有效地提取關(guān)鍵特征。這些特征隨后被傳遞至注意力層進行進一步處理,最終通過全連接層進行特征展平,以便于輸入到分類器中進行精確分類。最后,將經(jīng)過注意力機制處理后的特征送入全連接層進行映射與分類,從而實現(xiàn)惡意代碼家族的準確識別和歸類。
1.2融合XGBoost的惡意代碼智能識別系統(tǒng)
在使用注意力機制提取圖片中的空間特征后,研究還需對提取到的特征進行分類。盡管惡意代碼灰度圖像蘊含了大多數(shù)關(guān)鍵的惡意特征,但同時也夾雜了大量無關(guān)信息,即所謂的無效噪聲,這些噪聲會對分類過程產(chǎn)生干擾。為了優(yōu)化分類器的性能,研究采用自動編碼器對惡意代碼灰度圖像進行預處理。通過自動編碼器的轉(zhuǎn)換,生成惡意代碼的自編碼圖像,這一過程有助于降低噪聲干擾。隨后,將這些經(jīng)過降噪處理的自編碼圖像作為模型的輸入,以更精準地提取惡意代碼的特征。
惡意代碼灰度圖像的處理流程如下:首先,將轉(zhuǎn)換后的惡意代碼灰度圖像調(diào)整為標準化尺寸。接著,這些圖像被送入自動編碼器中進行重構(gòu)處理,生成同樣標準化尺寸的惡意代碼自編碼圖像,此步驟旨在剔除灰度圖像中的噪聲成分。隨后,這些經(jīng)過降噪的自編碼圖像被用作神經(jīng)網(wǎng)絡(luò)的輸入,以進行特征提取,并最終服務(wù)于分類任務(wù)。自編碼圖像的優(yōu)勢在于其能夠有效濾除噪聲,同時保留圖像中的關(guān)鍵信息。
生成自編碼圖像的自動編碼器具備無監(jiān)督學習的能力,由編碼器和解碼器兩大組件構(gòu)成。編碼器負責將輸入的惡意代碼灰度圖像進行映射變換,通過下采樣操作將特征壓縮至潛在空間表示;解碼器則負責將這一潛在空間表示進行重構(gòu)。通過不斷地訓練,自動編碼器能夠?qū)W習輸入數(shù)據(jù)中最顯著的特征,從而實現(xiàn)對數(shù)據(jù)的凈化處理。
在分類階段,盡管CNN中廣泛應(yīng)用Softmax分類算法,并取得了一定的效果,但其存在數(shù)值溢出和梯度消失等問題。此外,Softmax分類算法高度依賴輸入訓練集的質(zhì)量,且具有一定的不可解釋性,訓練集質(zhì)量的波動會直接影響輸出結(jié)果[9]。為了解決這些問題并進一步提高分類精度,研究采用XGBoost算法對CNN提取的特征進行分類。
XGBoost算法在處理大規(guī)模數(shù)據(jù)集時表現(xiàn)出色,具有速度快、效果好、能夠自動處理數(shù)據(jù)缺失值等優(yōu)點,從而增強了模型的穩(wěn)定性和可靠性。XGBoost樹的節(jié)點劃分基于公式(5):
式中:gain代表得到的節(jié)點,G2L/HL+λ代表左子樹的得分,G2R/HR+λ代表右子樹的得分,G2/H+λ代表節(jié)點不進行分裂時的得分。
交叉熵損失通過梯度下降使預測值的分布逐步接近標簽值的分布,同時模型參數(shù)也在這一過程中不斷更新,從而優(yōu)化分類模型的性能。由于惡意代碼檢測屬于典型的二分類問題,因此研究采用二元交叉熵損失函數(shù)作為損失函數(shù),其定義如下公式(6)所示。
式中:Loss代表損失函數(shù)。y代表二元標簽,p代表輸出屬于對應(yīng)標簽的概率。
XGBoost算法采用貪婪策略,逐步分裂節(jié)點,直到滿足停止生長的條件:最大增益小于0、葉子節(jié)點僅含一個樣本,或樹的深度達到預設(shè)的最大值。最終,XG?Boost模型的參數(shù)通過特征訓練和提取進行優(yōu)化。CNN-XGBoost惡意代碼智能識別系統(tǒng)的構(gòu)建如圖1所示。
如圖1所示,CNN-XGBoost惡意代碼智能識別系統(tǒng)巧妙融合了特征提取與特征分類兩大核心環(huán)節(jié)。系統(tǒng)首先接收自編碼的圖像輸入,隨后啟動特征學習和分類器學習的雙重學習過程。具體而言,系統(tǒng)首先利用CNN的強大能力深入挖掘圖像中的關(guān)鍵特征,完成特征學習。
系統(tǒng)創(chuàng)新性地用XGBoost分類器替換了傳統(tǒng)的Softmax分類算法,同時保持特征提取部分的模型結(jié)構(gòu)和參數(shù)不變,確保特征能夠順利從特征學習階段遷移到分類器學習階段。隨后,固定模型參數(shù)和特征,將提取的特征遷移到XGBoost分類器中,以進行特征訓練,從而精準獲取XGBoost模型的參數(shù)。
2惡意代碼智能識別系統(tǒng)設(shè)計有效性分析
為了驗證系統(tǒng)的有效性,研究在Malimg數(shù)據(jù)集上進行了實驗。實驗環(huán)境為Windows10操作系統(tǒng),開發(fā)語言為Python3.6,測試軟件為Postman。實驗以Malimg數(shù)據(jù)集為基礎(chǔ),驗證了研究設(shè)計方法的性能表現(xiàn)。
為了進一步驗證所提出算法的有效性,研究將CNN-XGBoost算法與傳統(tǒng)的CNN和XGBoost算法進行了對比分析。通過實驗,研究對比了不同算法在惡意代碼分類任務(wù)中的表現(xiàn)。圖2顯示了不同算法的混淆矩陣,直觀地展示了分類模型對惡意代碼分類的預測標簽與真實標簽的對比情況。
由圖2可知,不同算法的混淆矩陣分類結(jié)果存在差異。圖2(a)顯示,CNN的分類準確率整體在0.91以上。其中,對標簽4的誤分類率為0.09,對標簽5的誤分類率為0.08,對標簽8的誤分類率為0.1,而對標簽1和標簽7的分類準確率高達0.96。圖2(b)顯示,XG?Boost對標簽8的分類準確率最低,為0.90;對標簽3和標簽4的誤分類率為0.07,對標簽6的誤分類率為0.06;對標簽1和標簽7的分類準確率高達0.97。圖2(c)顯示,CNN-XGBoost的分類準確率最低為0.95。在對標簽6的惡意代碼分類時,預測準確率高達0.99;對標簽3和標簽5的誤分類率為0.05。與前兩種算法相比,CNN-XGBoost的惡意代碼分類準確率顯著提高。
上述結(jié)果表明,CNN-XGBoost在惡意代碼分類任務(wù)中能夠整體提升分類準確率,將準確率從0.90提高至0.95,同時顯著降低了不同標簽的誤分類概率。這說明,CNN-XGBoost能夠更有效地識別惡意代碼并對其進行分類。
此外,研究使用精確率(Precision)、召回率(Re?call)和F1-Score等指標,對比了Softmax[10]、CNNXGBoost和SVM[11]的分類性能。對比實驗結(jié)果如圖3所示。
圖3顯示,CNN-XGBoost算法的精確率為99.0%,召回率為97.4%,F(xiàn)1值為97.8%;相比之下,Softmax的精確率、召回率和F1值分別為95.2%、93.5%和94.2%,而SVM的精確率、召回率和F1值分別為96.6%、96.2%和96.4%??梢钥闯?,CNN-XGBoost算法的分類性能顯著優(yōu)于Softmax和SVM算法。這表明,CNN-XGBoost在惡意代碼分類任務(wù)中具有明顯的優(yōu)勢,其分類準確率總體上較Softmax和SVM有顯著提升,充分彰顯了其在惡意代碼分類任務(wù)中的優(yōu)越性,為提升分類準確性提供了一種有效的解決方案。
3結(jié)論
本研究提出了一種融合CNN和XGBoost的惡意代碼智能識別系統(tǒng)。該系統(tǒng)利用CNN提取惡意代碼灰度圖像的特征,并將提取到的圖像特征輸入到XG?Boost分類器中,通過XGBoost樹的節(jié)點對惡意代碼特征進行分類。實驗結(jié)果表明,所設(shè)計的方法分類準確率最低達到0.95,在對標簽6的惡意代碼分類時,預測準確率高達0.99,整體取得了99.0%的精確率、97.4%的召回率和97.8%的F1值。該系統(tǒng)有效提升了惡意代碼識別的精度。
未來的研究將致力于結(jié)合動態(tài)行為特征,以進一步提高惡意代碼識別的準確率,并探索該方法在不同類型惡意代碼上的泛化能力。
參考文獻:
[1]王碩,王堅,王亞男,等.一種基于特征融合的惡意代碼快速檢測方法[J].電子學報,2023,51(1):57-66.
[2]凌旭,謝非,楊繼全,等.基于通道加權(quán)FPN的熔池檢測與特征提取方法[J].南京師范大學學報(工程技術(shù)版),2023,23(2):16-24.
[3]LIUJ,JINGDL,CAOYY,etal.Lightweightprogressivefusioncalibrationnetworkforrotatedobjectdetectioninremotesens?ingimages[J].Electronics,2024,13(16):3172.
[4]蔣瑞林,覃仁超.基于深度可分離卷積的多神經(jīng)網(wǎng)絡(luò)惡意代碼檢測模型[J].計算機應(yīng)用,2023,43(5):1527-1533.
[5]YAQOOBA,VERMANK,AZIZRM,etal.Optimizingcancerclassification:ahybridRDO-XGBoostapproachforfeaturese?lectionandpredictiveinsights[J].CancerImmunology,Immuno?therapy,2024,73(12):261.
[6]郭利瑞,吳馳,雷瀟,等.線路復合絕緣子憎水性及金具腐蝕特征提取方法[J].合成材料老化與應(yīng)用,2024,53(5):36-39.
[7]HASHMIH,KUMARDWIVEDIR,KUMARA.ComparativeanalysisofCNN-basedsmartpre-trainedmodelsforobjectde?tectiononDOTA[J].JournalofAutomation,MobileRoboticsandIntelligentSystems,2024:31-45.
[8]郭雪麗,華大鵬,包鵬宇,等.一種基于改進VMD-PSO-CNNLSTM的短期電價預測方法[J].電力科學與技術(shù)學報,2024,39(2):35-43.
[9]封強,潘保芝,韓立國.基于卷積降噪自編碼器和Softmax回歸的微地震定位方法[J].地球物理學報,2023,66(7):3076-3085.
[10]ZHANGY,PENGLL,QUANLH,etal.High-precisionmethodandarchitectureforbase-2softmaxfunctioninDNNtraining[J].IEEETransactionsonCircuitsandSystemsI:Regu?larPapers,2023,70(8):3268-3279.
[11]白晉川,李肖博,姚浩,等.基于FIMD和SVM的高壓輸電線路保護方案[J].電測與儀表,2024,61(9):107-112.
【通聯(lián)編輯:唐一東】