◆黎臻 羅栗
(中國(guó)電子科技集團(tuán)公司第三十研究所 四川 610041)
如今,各種各樣的互聯(lián)網(wǎng)軟件為人們生活提供了便利,但也帶來(lái)了一定的潛在危險(xiǎn)。惡意軟件是故意設(shè)計(jì)以危害計(jì)算機(jī)、智能設(shè)備,竊取機(jī)密信息,滲透網(wǎng)絡(luò)或破壞關(guān)鍵的基礎(chǔ)設(shè)施等為目的的一種網(wǎng)絡(luò)威脅。惡意軟件的類型多種多樣,如病毒,蠕蟲(chóng),特洛伊木馬,邏輯炸彈,間諜軟件,廣告軟件,垃圾郵件,彈出窗體等。據(jù)卡巴斯基實(shí)驗(yàn)室最近的一份報(bào)告稱[1],由于惡意軟件攻擊,大約在兩年之內(nèi)全球的金融機(jī)構(gòu)共盜竊了十億美元。為了遏止惡意軟件造成的巨大損失和損害,惡意軟件檢測(cè)已成為計(jì)算機(jī)安全的熱點(diǎn)研究方向。
近年來(lái),關(guān)于惡意軟件檢測(cè)的學(xué)術(shù)研究數(shù)量迅速增加。在早期,基于簽名的檢測(cè)方法被廣泛使用。Malhotra等人[2]提出一種新穎的算法將惡意軟件分類為干凈、正常惡意軟件和多態(tài)、變質(zhì)惡意軟件。該方法使用基于簽名的模式匹配技術(shù)計(jì)算任意兩個(gè)文件之間的相似性得分,然后使用DBScan算法對(duì)所選特征進(jìn)行分類?;诤灻臋z測(cè)方法可以快速有效地應(yīng)對(duì)已知的惡意軟件,但對(duì)于零時(shí)差惡意軟件的效果則不佳。
隨著時(shí)間的流逝,研究人員開(kāi)始使用基于行為、啟發(fā)式和模型檢查的檢測(cè)技術(shù),以及新技術(shù),例如基于深度學(xué)習(xí)、云、移動(dòng)設(shè)備和物聯(lián)網(wǎng)的檢測(cè)。
Cimitile A等人[3]提出了一種基于模型檢查的方法來(lái)推斷移動(dòng)惡意軟件的系統(tǒng)樹(shù)。通過(guò)在droid-Sapiens工具中實(shí)施該方法,證明了移動(dòng)惡意軟件家族來(lái)自祖先,并且根據(jù)其展示的有效載荷來(lái)影響自己的后代。
Azmoodeh A等人[4]提出了一種應(yīng)用于物聯(lián)網(wǎng)基于機(jī)器學(xué)習(xí)的方法,通過(guò)監(jiān)視Android設(shè)備的功耗來(lái)檢測(cè)勒索軟件攻擊。具體來(lái)說(shuō),該方法可監(jiān)控不同進(jìn)程的能耗模式,以對(duì)來(lái)自非惡意應(yīng)用程序的勒索軟件進(jìn)行分類。實(shí)驗(yàn)證明了該方法在準(zhǔn)確率,查全率,準(zhǔn)確率和F度量方面優(yōu)于K最近鄰,神經(jīng)網(wǎng)絡(luò),支持向量機(jī)和隨機(jī)森林。
即使每種檢測(cè)方法都有其自己的優(yōu)勢(shì),但是沒(méi)有一種檢測(cè)方法可以檢測(cè)到所有惡意軟件。當(dāng)惡意軟件的復(fù)雜性(未知惡意軟件,新一代惡意軟件,混淆惡意軟件)增加時(shí),所有檢測(cè)方法的檢測(cè)率都會(huì)降低。可以看出,基于簽名方法、啟發(fā)式的方法以及大多數(shù)情況下的基于移動(dòng)設(shè)備和物聯(lián)網(wǎng)的方法要比基于行為、模型檢查、云和深度學(xué)習(xí)的方法表現(xiàn)更差。這是因?yàn)楹笳叩倪@些方法可以更有效地檢測(cè)未知和混淆的惡意軟件。
結(jié)合多種惡意軟件檢測(cè)方法可以提供更好的檢測(cè)機(jī)制,例如,將基于行為的行為與基于模型檢查的方法相結(jié)合,并同時(shí)使用深度學(xué)習(xí)和云技術(shù)一定會(huì)提供更好的檢測(cè)機(jī)制。此外,使用區(qū)塊鏈和大數(shù)據(jù)等新技術(shù)可能會(huì)提供更多機(jī)會(huì)來(lái)構(gòu)建更有效的檢測(cè)器。
深度學(xué)習(xí)是數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)的一個(gè)新領(lǐng)域,已在各種各樣的應(yīng)用領(lǐng)域取得了成功,例如計(jì)算機(jī)視覺(jué)、音頻和自然語(yǔ)言處理。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)是深度學(xué)習(xí)中最具代表性的算法之一。CNN的最顯著特征是它通過(guò)權(quán)重共享,局部場(chǎng)和空間中的子樣本的思想來(lái)減少了大量的計(jì)算。它在一組CNN神經(jīng)元之間具有相同的權(quán)重,通過(guò)卷積運(yùn)算在局部場(chǎng)上挖掘特征信息。CNN直接將原始數(shù)據(jù)的向量表示作為輸入,并以端到端的結(jié)構(gòu)前向傳播輸出分類或回歸結(jié)果。通過(guò)反向傳播算法更新CNN的神經(jīng)元權(quán)重。CNN的典型應(yīng)用是通過(guò)多個(gè)卷積層和池化層來(lái)識(shí)別手寫數(shù)字。每個(gè)卷積層輸出一組特征圖,而每個(gè)特征圖表示通過(guò)一個(gè)特定的卷積濾波器提取的高級(jí)特征。并且池化層主要使用局部相關(guān)原理完成下采樣,因此后續(xù)的卷積層可以從更全局的角度提取特征,這些大大減少了用于訓(xùn)練深度網(wǎng)絡(luò)的權(quán)重參數(shù)和計(jì)算的數(shù)量。
多層深度學(xué)習(xí)架構(gòu)在特征學(xué)習(xí)方面具有卓越的能力。更重要的是,深度學(xué)習(xí)架構(gòu)通過(guò)分層預(yù)訓(xùn)練克服了學(xué)習(xí)上的困難,即從最低層到最高層對(duì)多層特征檢測(cè)器進(jìn)行預(yù)訓(xùn)練以構(gòu)建最終的分類模型。這啟發(fā)我們?cè)O(shè)計(jì)基于深度學(xué)習(xí)的惡意軟件檢測(cè)架構(gòu)。
近年來(lái),不少深度學(xué)習(xí)的研究工作已經(jīng)投入到惡意軟件檢測(cè)上。Zhu D等人[5]提出了DeepFlow,這是一種基于深度學(xué)習(xí)的新穎方法,可直接從Android應(yīng)用程序中的數(shù)據(jù)流中識(shí)別惡意軟件。在數(shù)千種良性軟件和惡意軟件上測(cè)試DeepFlow,結(jié)果表明DeepFlow可以達(dá)到95.05%的高檢測(cè)F1分?jǐn)?shù),優(yōu)于傳統(tǒng)的基于機(jī)器學(xué)習(xí)的方法,這表明了深度學(xué)習(xí)技術(shù)在惡意軟件檢測(cè)中的優(yōu)勢(shì)。
我們提出一種基于深度學(xué)習(xí)的惡意軟件檢測(cè)方法,該方法使用CNN和長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)。對(duì)于惡意軟件檢測(cè),實(shí)際上執(zhí)行二進(jìn)制分類任務(wù)。我們的方法接收原始文件數(shù)據(jù)作為輸入,并輸出表明該惡意軟件可能性的識(shí)別概率。具體而言,檢測(cè)過(guò)程可以分為兩個(gè)階段。第一階段是預(yù)處理惡意軟件樣本數(shù)據(jù),它采用可執(zhí)行文件的二進(jìn)制形式,從中生成灰度圖像,并使用反編譯工具提取操作碼序列和元數(shù)據(jù)特征。因此,此階段將生成適當(dāng)?shù)臄?shù)據(jù)格式,作為后續(xù)CNN和LSTM網(wǎng)絡(luò)的輸入。第二階段應(yīng)用檢測(cè)網(wǎng)絡(luò)的核心過(guò)程,該過(guò)程分別采用CNN和LSTM網(wǎng)絡(luò),從灰度圖像和操作碼序列中學(xué)習(xí)。為了優(yōu)化檢測(cè)性能,我們使用堆棧集成來(lái)集成兩個(gè)網(wǎng)絡(luò)的輸出和元數(shù)據(jù)特征。實(shí)際上從原始數(shù)據(jù)中學(xué)習(xí)了三種不同的特征集。首先,檢測(cè)網(wǎng)絡(luò)通過(guò)CNN從灰度圖像中學(xué)習(xí)惡意文件結(jié)構(gòu)特征,然后通過(guò)LSTM從操作碼序列中學(xué)習(xí)惡意代碼模式特征。這兩個(gè)特征集整合并完善局部模式信息。同時(shí),添加了一些簡(jiǎn)單的元數(shù)據(jù)特征來(lái)描述全局信息。最后使用卷積塊對(duì)整合后的三種特征進(jìn)行卷積操作,學(xué)習(xí)并壓縮特征,最終輸出的預(yù)測(cè)結(jié)果。
深度學(xué)習(xí)能夠處理非結(jié)構(gòu)化的數(shù)據(jù),具有強(qiáng)大的表征學(xué)習(xí)能力,通過(guò)深層的網(wǎng)絡(luò)學(xué)習(xí)數(shù)據(jù)的特征,同時(shí)能大大降低特征量。并且許多現(xiàn)有的應(yīng)用實(shí)例也表明了深度學(xué)習(xí)在分類任務(wù)上具有高準(zhǔn)確率。這讓基于深度學(xué)習(xí)的惡意軟件檢測(cè)存在獨(dú)有的優(yōu)勢(shì),啟發(fā)我們?cè)O(shè)計(jì)基于深度學(xué)習(xí)的惡意軟件檢測(cè)架構(gòu)。
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2020年8期