閆金鎣,王海珍
基于LSTM的DAE加密流量識別
閆金鎣,王海珍
(齊齊哈爾大學 計算機與控制工程學院,黑龍江 齊齊哈爾 161006)
隨著虛擬專用網(wǎng)(VPN)技術(shù)的廣泛應用,實時VPN流量識別已成為網(wǎng)絡管理和安全維護中越來越重要的任務.加密流量使得從原始流量中提取特征變得極具挑戰(zhàn)性,現(xiàn)有的VPN流量識別方法通常存在高維數(shù)據(jù)特征提取困難的問題.提出了一種在DAE(Denoising Auto-Encoder,降噪自編碼器)的網(wǎng)絡結(jié)構(gòu)基礎上加入了LSTM(Long Short Term Memory,長短時記憶)的模型,將深度學習相關(guān)技術(shù)融入加密流量識別技術(shù)之中,使一直存在的難以處理高維數(shù)據(jù)以及特征提取等問題得到解決.
降噪自編碼器;加密流量識別;長短時記憶網(wǎng)絡
加密流量主要是指在通信過程中所傳送的被加密過的實際明文內(nèi)容.在安全和隱私保護需求的驅(qū)動下,網(wǎng)絡通信加密化已經(jīng)成為不可阻擋的趨勢.但是,加密流量也給互聯(lián)網(wǎng)安全帶來了巨大威脅,尤其是加密技術(shù)被用于網(wǎng)絡違法犯罪,如網(wǎng)絡攻擊、傳播違法違規(guī)信息等.如何通過改進加密流量識別技術(shù),識別潛在的網(wǎng)絡威脅是目前加密流量技術(shù)的重點.
機器學習方法主要根據(jù)C4.5[1]、KNN以及有效載荷長度序列(PLS)[2]等方法進行展開.深度學習[3]方法在準確分類加密流量的方面具有強大的改進空間,GAO[2]等提出了將流量混淆分為三類,并提出了兩種分類方法,即基于統(tǒng)計特征識別和分類VPN流量.Lotfollahi[4]等提出了一種新型的方法用于加密流量分類,開發(fā)了一個名為Deep Packet的框架,可以處理網(wǎng)絡流量分類為主要類別(如FTP和P2P)的流量表征,還可以區(qū)分VPN網(wǎng)絡流量和非VPN網(wǎng)絡流量.TIAN[5]等提出了一種卷積注意力網(wǎng)絡(CAT),作為一種端到端的模型,CAT 以原始數(shù)據(jù)為輸入,使用卷積神經(jīng)網(wǎng)絡(CNN)自動學習特征并將輸出輸入到 softmax 函數(shù)中得到分類結(jié)果.FENG[6]等提出了一種利用基于有效載荷的技術(shù)和從現(xiàn)有網(wǎng)絡結(jié)構(gòu)修改的卷積神經(jīng)網(wǎng)絡模型的方法,但是相比于其他深度神經(jīng)網(wǎng)絡而言,資源密度較低.XIAN[7]等提出了一種用于識別 SSL VPN的膠囊神經(jīng)網(wǎng)絡(CapsNet),通過改進指紋識別方法以及替換采樣層,來達到對SSL流更高的識別準確率.
這些方法采用深度神經(jīng)網(wǎng)絡實現(xiàn)對加密流量的識別,但在識別高維度多類別時序數(shù)據(jù)時,會出現(xiàn)識別率低且時間較長的情況.因此,本文提出了一種基于LSTM(Long Short Term Memory,長短時記憶)的DAE(Denoising Auto-Encoder,降噪自編碼器)加密流量識別模型,通過LSTM對時序數(shù)據(jù)進行特征提取,根據(jù)DAE的特性對高維度時序數(shù)據(jù)進行特征降維,并進行了分類訓練,得到了較高的準確率,在ISCXTor2016數(shù)據(jù)集上的準確率能夠達到0.963 9.
圖1 DAE-LSTM模型設計
使用Wireshark與Weka進行數(shù)據(jù)形式轉(zhuǎn)換,將pcap文件與arff文件轉(zhuǎn)換為csv格式,并對數(shù)據(jù)進行了訓練集與測試集的劃分.因為原始數(shù)據(jù)具有不平衡性,在進入模型訓練之前,對數(shù)據(jù)進行標簽數(shù)值化和標準化處理.訓練集與測試集經(jīng)過多次實驗得出最佳劃分比例為8∶2.
DAE是在自編碼器(AE)的基礎上增強了魯棒性的自編碼器.DAE最大的特點是能夠?qū)Α氨晃廴竞驮肼暺茐摹钡脑紨?shù)據(jù)通過解碼和編碼處理恢復真正的原始數(shù)據(jù).因此,相比較于其他類型的自編碼器,DAE具有良好的降噪能力,可以降低因為數(shù)據(jù)丟失或污染而對數(shù)據(jù)分類結(jié)果產(chǎn)生的影響.DAE結(jié)構(gòu)見圖2.
圖2 降噪自編碼器網(wǎng)絡結(jié)構(gòu)設計
LSTM基本原理見圖3.
圖3 LSTM基本原理
第2步通過sigmoid激活函數(shù)決定單元的更新值,由tanh層創(chuàng)造一個新的候選向量并將其添加到單元狀態(tài)中,公式為
通過sigmoid激活函數(shù)確定輸出單元狀態(tài)的部分,將單元輸出與前一個sigmoid層經(jīng)過tanh層運算(通過tanh層進行映射處理,得到-1到1之間的單元值)的輸出相乘作為最終輸出值,公式為
LSTM本質(zhì)是由一系列的LSTM模塊組成,LSTM的結(jié)構(gòu)見圖4.模型使用雙層LSTM網(wǎng)絡,第1層LSTM的return_sequences=True,返回所有節(jié)點的輸出;第2層LSTM的return_sequences=False,LSTM輸入維度為(serie_size,n_features),輸出維度為最后一個節(jié)點的輸出值,其中:
serie_size:序列遞歸的步數(shù);
n_features:輸入數(shù)據(jù)的特征數(shù)量.
圖4 LSTM模塊結(jié)構(gòu)
LSTM的隱藏層層數(shù)與隱藏層的LSTM模塊數(shù)量由具體的數(shù)據(jù)集數(shù)據(jù)特征決定.隱藏層層數(shù)的設置并沒有特定要求,如果設置過量的隱藏層層數(shù),那么可能會在模型訓練中造成過擬合現(xiàn)象,也會增大模型的存儲開銷與計算.本文的LSTM使用的是雙層LSTM網(wǎng)絡結(jié)構(gòu),深度體系結(jié)構(gòu)對于編碼器-解碼器框架而言,實現(xiàn)流量分類的效果更好.根據(jù)實驗可得,一層LSTM網(wǎng)絡結(jié)構(gòu)相比于雙層的效果要差,但三層相較于雙層而言,容易使模型過擬合.
使用64位Win 10操作系統(tǒng),八核十六線程AMD Ryzen 7 5800H with Radeon Graphics CPU和16 GB DDR4 RAM,安裝Anaconda3,采用Python3.8編程.實驗使用ISCXTor 2016[8],為加拿大新不倫瑞克大學(UNB)的ISCX 研究中心發(fā)布.
ISCXTor2016數(shù)據(jù)集初始大小為22 GB,Tor是一種面向電路的協(xié)議,從網(wǎng)關(guān)到入口節(jié)點的所有流量都將被加密并通過相同的連接發(fā)送.數(shù)據(jù)集中定義了八種類別,即Browsing,Email,Chat,Audio-streaming, Video-streaming,F(xiàn)ile Transfer,VoIP,P2P.數(shù)據(jù)集一共選取了八種流量類別進行識別分類,最終使用的數(shù)據(jù)一共有67 834條.
提出的模型在數(shù)據(jù)集上隨著迭代次數(shù)的增加(見圖5),根據(jù)準確率以及損失率的變化,可以看出當?shù)螖?shù)為100時,準確率能夠達到0.963 9,損失率小于0.02且數(shù)值較穩(wěn)定.
為了進一步驗證本文模型的有效性,選取了SAE-LSTM[9]模型與本文模型DAE-LSTM進行對比實驗(見表1).相關(guān)實驗所涉及的構(gòu)造與內(nèi)部參數(shù)均按照原文模型進行復現(xiàn).由表1可以看出,在多分類流量識別模型中,本文提出的基于LSTM的降噪自編碼器模型的表現(xiàn)優(yōu)于SAE-LSTM.在ISCXTor2016數(shù)據(jù)集中能夠達到0.963 9的準確率,并且損失率低至0.01.
a DAE-LSTM損失率 b DAE-LSTM準確率
圖5 ISCXTor2016數(shù)據(jù)集的訓練集與測試集的損失率與準確率
表1 SAE-LSTM模型和DAE-LSTM模型的準確率與損失率比較
ROC曲線下的面積反映各個模型的檢測效果(見圖6),當ROC曲線下方的面積越大,越接近1時,模型的效果越好.
圖6 對比實驗與本文實驗ROC 曲線
從所有ROC曲線圖的對比來看,本文提出的模型ROC曲線中的AUC(曲線下方面積)最接近1,證明提出的模型效果相較于對比實驗為最佳效果.
通過對模型的多次分類訓練,兩種流量識別模型對八種流量類別識別的F1值見表2.F1值綜合了準確率與召回率,能夠更加全方位地分析各模型對流量識別的性能效果.
表2 各模型識別各類流量的F1值對比
本文提出了一種在降噪自編碼器(DAE)基礎上融入了LSTM的模型.該模型主要通過對流量的時序數(shù)據(jù)特征進行進一步的提取與分析,最后進行流量分類,得到最終的分類結(jié)果.該模型在ISCXTor2016數(shù)據(jù)集上進行實驗與分析,DAE-LSTM模型的準確率、F1值以及ROC優(yōu)于SAE-LSTM基于深度學習的模型與算法,準確率達到了0.963 9,實驗結(jié)果說明了本文模型的有效性.在所采用的數(shù)據(jù)集中,因為其中各類數(shù)據(jù)的數(shù)據(jù)條數(shù)差別過大,對模型的訓練具有一定的影響.下一步,將對數(shù)據(jù)集的不平衡性進行研究,將不平衡數(shù)據(jù)進行改進與生成,降低原始數(shù)據(jù)集對模型訓練的影響.
[1] WANG S,CHEN Z,YAN Q,et al.A mobile malware detection method using behavior features in network traffic[J].Journal of Network and Computer Applications,2019,133:15-25.
[2] GAO P,LI G,SHI Y,et al.VPN Traffic Classification Based on Payload Length Sequence[C]// 2020 International Conference on Networking and Network Applications(NaNA).2020.
[3] Aldweesh A,Derhab A,Emam A Z,et al.Deep learning approaches for anomaly-based intrusion detection systems:A sur- vey,taxonomy,and open issues[J].Knowledge-Based Systems,2020,189:105124.
[4] Lotfollahi M,Zade S H R,SiavoshaniJ M,et al.Deep packet:a novel approach for encryptedtraffic classification using deep learning[J/OL].Soft Comput,2020,24:1999-2012.https://doi.org/10.1007/s00500-019-04030-2.
[5] TIAN S M,GONG F X,MO S,et al.End-to-end encrypted network traffic classification method based on deep learning[J].The Journal of China Universities of Posts and Telecommunications,2020,27(3):25-34.
[6] FENG R,HU T,JIA X,et al.VPN Traffic Classification Based on CNN[C]//2022 14th International Conference on Computer Research and Development(ICCRD).Shenzhen,2022:94-99.DOI:10.1109/ICCRD54409.2022.9730292.
[7] XIAN K H.An optimized recognition algorithm for ssl vpn protocol encrypted traffic[J]. Informatica(Lithuanian Academy of Sciences),2021:45:125-129.
[8] Lashkari A H,Draper-Gil G,Mamun M S,et al.Ghorbani,Characterization of Tor Traffic Using Time Based Features[C]//In the proceeding of the 3rd International Conference on Information System Security and Privacy.Porto Portugal:SCITEPRESS,2017.
[9] 尚文利,石賀,趙劍明,等.基于SAE-LSTM的工藝數(shù)據(jù)異常檢測方法[J].電子學報,2021,49(8):1561-1568.
DAE encrypted traffic identification based on LSTM
YAN Jinying,WANG Haizhen
(School of Computer and Control Engineering,Qiqihar University,Qiqihar 161006,China)
With the widespread application of virtual private network(VPN)technology,real-time VPN traffic identification has become an increasingly important task in network management and security maintenance.Encrypting traffic makes it highly challenging to extract features from the original traffic,and existing VPN traffic identification methods often face difficulties in high-dimensional data feature extraction.It was proposed of a model based on the network structure of denoising auto-encoder(DAE)with the addition of long short term memory (LSTM).Integrating deep learning techniques into encrypted traffic identification technology enables solutions to long-standing issues such as handling high-dimensional data and feature extraction.
denoising auto-encoder;encrypted traffic identification;long short term memory network
TP393
A
10.3969/j.issn.1007-9831.2024.02.008
1007-9831(2024)02-0042-06
2023-09-11
黑龍江省省屬高等學?;究蒲袠I(yè)務費科研項目(145209126)
閆金鎣(1998-),女,河南鄭州人,在讀碩士研究生,從事計算機網(wǎng)絡與信息安全研究.E-mail:519778027@qq.com
王海珍(1976-),女,山東臨沂人,教授,碩士,從事嵌入式技術(shù)、密碼分析與設計、網(wǎng)絡安全研究.E-mail:wanghaizhen1976@163.com