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

基于多BP神經網絡的內存組合特征分類方法

2022-02-26 06:58:20段佳良蔡國明徐開勇
計算機應用 2022年1期
關鍵詞:模型系統

段佳良,蔡國明,徐開勇

(信息工程大學網絡空間安全教研室,鄭州 450001)

0 引言

近年來,由于互聯網的快速發展,大部分電子產品的使用方式出現了巨大改變。數以億計的電子設備管理并監測著交通系統、工業系統、電力系統等公共資源,同時也記錄著各種各樣的隱私數據,例如個人健康、線上消費、社交等線上業務,因此,電子設備的安全性至關重要,其中智能終端的安全問題更是該研究領域一直以來的熱點方向。

智能終端安全主要分為系統安全、通信安全、組件安全、數據安全等[1]。系統安全作為設備的運行環境基礎,影響了整個智能終端的安全狀況,而現代移動終端的操作系統功能愈發強大,可安裝運行第三方軟件并提供數據存儲與處理等各種服務,導致操作系統存在漏洞,往往成為惡意軟件的攻擊目標,面臨巨大的安全威脅[2]。操作系統的安全狀況可以通過完整性度量技術進行測量、驗證,并實時監控其運行狀態。完整性度量技術可以度量內核的完整性,評估內核在內存中的運行狀態、資源的完整性,有效保護和增強內核和操作系統的安全。

目前關于完整性度量的研究主要使用基于硬件虛擬化與軟件輔助的方式進行度量,兩種都使用了計算哈希值對比基準值的度量方法[3-9]。文獻[7]中介紹并分析了現有針對動態完整性度量結構的攻擊方法,認為現存動態完整性度量結構存在較多問題,但沒有給出實質性的解決方法。文獻[8]中使用了基于ARM(Advanced RISC(Reduced Instruction Set Computing)Machine)虛擬化擴展的內核動態度量方法,主要使用硬件輔助的方法保護度量程序的安全,然后度量程序獲取初始值并進行度量,該方法需要硬件支持因此具有較大局限性。文獻[9]中提出了動態完整性度量架構(Dynamic Integrity Measurement Architecture,DIMA),可以解決其他架構難以避免的TOC-TOU(Time Of Check-Time Of Use)問題,但其主要度量方法為使用基準值進行度量,特征選取方法較為單一,且可移植性較弱。文獻[10]中采用語義約束描述內核動態數據的動態完整性,可以有效地對動態數據進行可信度量,但語義約束集合需要不斷更新,對處于互聯網中實時更新的設備保護十分有限。由現有研究可以看出,傳統度量方法僅適用哈希值進行度量,并且特征選取方法較為單一,導致其保護能力越來越有限。

神經網絡以及深度學習在圖像、語音、機器翻譯等領域獲得了突破性的進展,產生了大量的研究成果[11]。而關于內核完整性度量方面的研究與應用較少,同類研究主要為關于惡意代碼檢測的研究。文獻[11]提出的基于全連接網絡的惡意代碼檢測算法使用了TensorFlow 框架進行訓練以及惡意代碼片段檢測,可以較為準確地識別存在惡意代碼的存儲數據,但其對使用環境的要求較高,需要上層框架支持,在系統內核層面無法實現。文獻[12]中提出的基于二維二進制程序特征的惡意軟件檢測是基于深度神經網絡的檢測方法,與傳統檢測方法相比,檢測率有較大提升,但其僅只能學習已有軟件的二進制文件特征,且學習時間較長。文獻[13]中提出的基于卷積神經網絡(Convolutional Neural Network,CNN)的惡意代碼檢測技術的檢測率較高,但要基于沙箱環境對軟件進行檢測,對系統整體性能影響未知,對系統內核及內存數據的功能性也沒有說明。文獻[14]中提出了基于行為的惡意代碼檢測,通過檢測API 函數調用并用CNN 進行訓練學習,但在只能檢測調用API 函數的程序,無法對系統整體安全進行監控。

由于在不斷發展的系統里傳統度量方法的保護能力較弱,且關于內核完整性度量的機器學習類型研究較少,因此為了解決完整性度量系統中內存特征選取方法過于單一、靈活性不足等問題,本文提出了一種基于多反向傳播(Back Propagation,BP)神經網絡的內存組合特征分類方法。BP 神經網絡是目前應用廣泛的一種多層前饋神經網絡模型,主要應用于數據壓縮、模式識別、函數逼近等方面[15]。本文首先構建位于Linux 系統中的完整性度量系統,對不同安全狀態下系統的關鍵不變量等內容進行數據預處理,提取特征后的數據75%用于訓練BP 神經網絡模型,15%用于模型驗證集,10%用于模型測試集。經實驗數據驗證,與傳統基于固定基準值的內存特征分類算法、單BP 神經網絡及其他神經網絡模型相比,本文提出的基于多BP 神經網絡的內存組合特征分類算法具有更高的準確率。

1 特征提取與處理

機器學習算法需要大量真實的數據作為學習樣本,因此本文利用實驗室條件采集了2 000 條不同安全狀況下的系統內存數據。由于操作系統內存中數據對象眾多,為滿足神經網絡輸入的統一,需要對內存數據中需要重點關注的度量對象進行分析。

通過對系統內核各類資源的觀察,發現內核代碼段、中斷描述符表只有在內核策略或控制流發生改變時才會發生改變;熵池資源為系統隨機數生成所需資源,一般數據內容在一定范圍內變化。然后分析了多種rootkit 攻擊行為,發現內核攻擊主要有幾種攻擊方式:例如kbeast 主要是通過修改系統調用表來破壞內核完整性,adore-ng 通過系統攔截破壞或隱藏惡意進程,wipemod 將自身從模塊鏈表中移除以實現惡意模塊隱藏[16]。因此所有內存數據主要分為兩類對象:靜態度量對象與動態度量對象:靜態度量對象在系統加載到內存中后基本保持不變,主要指內核的代碼段、只讀數據段、中斷描述符表、系統調用表、全局描述符表等。這些靜態對象在系統加載完成后,其所在內存地址及偏移量都已經固定,一旦這部分內容遭到破壞,系統預期行為將會發生變化,說明系統遭到攻擊。而動態度量對象主要指在系統運行過程中會根據系統運行狀況進行動態變化的資源對象,如進程、模塊、熵池資源等。

本文要判斷系統內核完整性就需要重點關注內存數據中上述兩類對象,其中內核代碼段、中斷描述符表等內容僅需要進行靜態度量即可實現度量操作,因此本文主要選取只讀數據段、系統異常表、系統調用表、進程、模塊和熵池資源作為系統度量對象。目前關于內存數據提取主要是通過對整體內存進行映射保存[17-20],而本文算法僅需提取有效特征值,針對不同度量對象進行處理,因此本文設計了度量對象提取算法(Measuring Object Extraction Algorithm,MOEA),算法主要通過獲取內核符號表的內存地址,根據內存地址內容獲取度量對象信息并進行分析,避免了整塊內存進行映射保存帶來的系統性能損失。

提取度量對象后,將其邏輯地址對應的物理地址與結構定義經過格式化處理后,可得到Ni個特征值,i為度量對象類別。

2 模型建立與訓練

2.1 模型建立

本文特征分類方法為各類特征值綜合判斷系統安全狀況,每個特征值都會影響系統安全的最終結果,屬于神經網絡應用中模式識別的研究范疇。在常用的神經網絡模型中,卷積神經網絡(CNN)主要用于語音識別與圖像識別,K最鄰近(K-Nearest Neighbor,KNN)算法主要用于數據挖掘中的數據分類問題,生成對抗網絡(Generative Adversarial Network,GAN)主要用于圖像識別中的數據偽造生成。全連接網絡是最符合本文特征分類要求的模式識別神經網絡模型[15],因此本文選擇BP 神經網絡模型。在內存特征分類過程中,特征值的數量較為龐大,且每類特征值之間并不存在強聯系。為了減少神經元數量,提高訓練速度,同時也為了防止發生過擬合現象,因此本文中的模型由兩組BP 神經網絡組成;同時為了體現本文方案選取模型的突出優勢,實驗部分也采用了常見神經網絡模型進行同數據集的實驗比較,從實驗的角度驗證了前文選取多BP 神經網絡模型的優勢。

在本文設計中,每個BP 神經網絡模型都為經典三層神經網絡,由輸入層、隱含層、輸出層組成,層與層之間采用全連接的方式。模型結構如圖1 所示。

圖1 多BP神經網絡模型結構Fig.1 Structure of multiple BP neural network model

圖1 中,第一組BP 神經網絡由k個神經網絡組成,每個神經網絡的輸入層均為上文提取特征值,由ik個神經元組成;輸出層為1 個神經元φk;隱含層由mk個神經元組成,由經典算法[21]決定,公式為mk=+1+α,其中α為1~10 的常數,一般根據實際效果決定分別表示第k個神經網絡內輸入層到隱含層、隱含層到輸出層的神經元之間的權值集合分別表示第k個神經網絡內輸入層到隱含層、隱含層到輸出層的神經元之間的偏置集合。

第二組為1 個神經網絡,其輸入層為第一組神經網絡的k個輸出節點組成,隱含層由m個神經元組成,由經典算法決定,公式為m=+α,輸出為1 個神經元φ;ωx,ωy分別表示輸入層到隱含層、隱含層到輸出層的神經元之間的權值集合;θx,θy表示輸入層到隱含層、隱含層到輸出層的神經元之間的偏置集合。

2.2 模型訓練

BP 神經網絡的訓練主要分為正向傳播的計算輸出與反向傳播的修正參數。在訓練開始前,初始權值與偏置都為隨機生成。

首先對于算法的描述引入一些參數的定義:

定義1權值ω。ω表示每個神經元連接間的權重。

定義2偏置θ。θ表示每個神經元的偏置。

定義3特征數量N。N表示特征數量,對應類別i的特征數量為Ni,N≥Ni。

2.2.1 正向傳播過程

正向傳播過程中,通過公式計算每個神經網絡的隱含層與輸出層各神經元輸出,其計算公式如下:

其中f(x)為神經網絡模型中的激活函數。

在本文算法中,經過前期實驗對比,在第一組隱含層使用Sigmoid 函數作為激活函數,收斂速度略快,最后訓練及測試結果較好。其公式如下:

由于目的是判斷系統安全性,僅存在安全與非安全兩種情況,若某一特征值被認為可能為非安全特征,則需要通過模型放大其特性;若某一特征值被認為是安全的,將逐漸降低其對神經網絡結果的激勵效果。同時為了提高神經網絡的收斂速度,在第一組的輸出層與第二組的隱含層使用ReLU(Rectified Liner Unit)作為激活函數進行處理,其公式如下:

在整個模型的輸出層,由于需要輸出整個度量結果是否安全,即安全概率,結果一定小于1 且大于0,因此使用將多個神經元的輸出能夠映射到(0,1)區間內的Softmax 作為激活函數,公式如下:

2.2.2 反向傳播過程

在得到輸出后,使用訓練算法來不斷修改神經網絡的權值與偏置,使其逼近期望值,而訓練算法的選取則會影響最終效果與訓練速度。本文采用小批量隨機梯度下降算法作為改進算法,減少了網絡訓練的迭代次數,提高了網絡的收斂速度,并且最終訓練出來的模型精度更高。

首先定義損失函數Cost(x),對于樣本數量為N的模型,可得公式如下:

其中yi為第i個樣本的期望輸出。

然后為了更新神經網絡中的權值與偏置的參數,需要分別對損失函數(4)關于ω和θ進行求導。可得偏導數分別為如下:

隨機梯度下降法(Stochastic Gradient Descent,SGD),批量梯度下降法(Batch Gradient Descent,BGD)分別是使用N=1與N=樣本容量進行優化。由于本文研究內存特征樣本容量較為龐大,使用BGD 與SGD 會出現收斂速度慢的問題,導致訓練速度過于緩慢,因此使用小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)作為訓練優化算法。每次選取m個樣本進行更新,1 <m<N,可以極大減少收斂所需要的迭代次數,同時可以使收斂到的結果更加接近梯度下降的效果[22]。

最后根據正向傳播與反向傳播過程,對神經網絡中各神經元的權值與偏置進行修改,訓練完成后得到神經網絡模型。使用模型測試集對模型進行驗證,除非驗證準確率達到要求,否則更新批量樣本數量并進行新一輪訓練,直到最終完成訓練過程。訓練流程如圖2 所示。

圖2 訓練流程Fig.2 Training flowchart

3 實驗結果及分析

本文算法實驗通過ubuntu 18.04+CUDA10.0 實現。所使用的實驗環境的計算機配置如表1 所示。

表1 計算機配置信息Tab.1 Computer configuration information

數據集使用實驗室的完整性度量原型系統采集的2 000條系統內存數據,將內存數據通過MOEA 進行提取,共分為6個類別的度量對象,數據集相關數據如表2 所示。

表2 數據集相關數據Tab.2 Related data of dataset

實驗中數據集由1 500 條訓練數據、300 條驗證數據和200 條測試數據組成。訓練數據集主要用于訓練模型以及確定模型權重,驗證數據集用于確定網絡過結構以及調整模型的超參數,測試集主要用于檢驗模型的泛化能力。本文神經網絡模型通過訓練后,得到結果如表3 所示。

表3 訓練完成的本文神經網絡模型的數據結果Tab.3 Data results of the proposed neural network model after training

為驗證本文所提算法的可行性與優越性,本文對性能進行了進一步分析,并用相同數據集使用不同神經網絡進行比較,結果如表4 所示。實驗分別使用了基于基準值的完整性度量、一維CNN、K近鄰,以BGD 為訓練算法的傳統單BP 神經網絡進行對照實驗。

表4 內存特征提取模型方法的對比Tab.4 Comparison of memory feature extraction models and methods

其中,基于基準值的完整性度量使用每次系統啟動時的內存特征作為基準值,不需要進行模型訓練,具有較大局限性,因此總準確率較低;CNN 與KNN 訓練迭代次數均為提前確定,因此訓練時間比較暫無意義;單BP 除網絡結構不同,其余均使用本文相同參數。由表4 可知,除了基于基準值的方法外,不同的分類方法準確率均能達到90%以上,而BP 神經網絡能達到95%以上。但在相同參數情況下,使用了多BP 結構與小批量梯度下降算法的本文模型方法具有準確率更高、訓練迭代次數更少的優勢;而在分類所用時間上,BP神經網絡分類速度均高于CNN 與KNN 算法。而單BP 與本文算法分類時間較為接近,其影響因素主要在多BP 之間的數據傳輸上,若除去數據傳輸對分類的影響,分類所用時間將會更短。綜上所述,本文算法基于多BP 神經網絡結構提高了特征分類的準確率與分類速度,優于其他幾種算法。

4 結語

本文提出了一種基于多BP 神經網絡的內存特征分類方法,通過完整性度量系統獲得內存數據,并對采集的數據進行特征值提取,經過多個BP 神經網絡進行訓練,使得該算法可以較為準確地將系統安全狀況進行分類,給出系統安全狀況評分。實驗結果表明,本文所提算法與其他幾種算法相比,準確性與效率有明顯提高,并且具有普適性,可以移植其他平臺上使用。但本文算法也有一定局限性:由于訓練與測試數據集均為已有攻擊樣例攻擊系統得到的數據,在應對未知攻擊時還沒有數據進行訓練與測試,所以該系統需要到實際應用場景進行進一步訓練與驗證。

猜你喜歡
模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
3D打印中的模型分割與打包
主站蜘蛛池模板: 视频一区亚洲| 美女亚洲一区| 99在线观看视频免费| 亚洲成人精品久久| 亚洲精品中文字幕无乱码| 精品伊人久久久久7777人| 四虎永久免费在线| 成人精品视频一区二区在线 | 青草精品视频| 精品久久777| 手机在线免费不卡一区二| 亚洲va精品中文字幕| 一本色道久久88| 成人小视频网| 亚洲第一成年网| 91精品久久久无码中文字幕vr| 国产视频a| 亚洲人成色在线观看| 青青久视频| 国产拍揄自揄精品视频网站| 福利姬国产精品一区在线| 97亚洲色综久久精品| 国产无码在线调教| 91精品国产自产在线老师啪l| 激情综合网激情综合| 亚洲成人动漫在线观看 | 日本精品视频一区二区| 永久天堂网Av| 亚洲日韩精品无码专区97| 国产高潮视频在线观看| 日韩一区二区在线电影| 欧美激情第一区| 天天干伊人| 欧美a在线| 亚洲国语自产一区第二页| 国产精品嫩草影院av| 国产特级毛片aaaaaa| 黄片在线永久| 亚洲性视频网站| 亚洲一级毛片| 国产成人综合久久精品尤物| 日本午夜精品一本在线观看| 在线欧美日韩国产| 亚洲色图欧美| 成年人视频一区二区| 在线欧美日韩| 在线一级毛片| 成人综合久久综合| 四虎影视永久在线精品| 国产产在线精品亚洲aavv| 国产视频 第一页| 天天综合网色中文字幕| 亚洲精品无码AⅤ片青青在线观看| 国产免费一级精品视频| 欧美日韩中文国产| 男女性午夜福利网站| 色婷婷久久| 九九热在线视频| 伊人久久影视| 免费女人18毛片a级毛片视频| 久久超级碰| 国产成人精品高清不卡在线| 国产精品一区在线麻豆| 国产剧情国内精品原创| 欧美人在线一区二区三区| 麻豆精品在线播放| 国产激爽大片在线播放| 亚洲Va中文字幕久久一区| 国产欧美日韩精品第二区| 国产一区二区免费播放| 欧美v在线| a毛片在线| 国产91熟女高潮一区二区| 福利在线一区| 亚洲欧美一区在线| 亚洲国产理论片在线播放| 国产一级无码不卡视频| 91色国产在线| 日韩精品免费一线在线观看| 国产区91| 国产91在线|日本| 成人福利在线视频|