趙丹陽



摘 ? 要:針對現有網絡隱寫分析算法特征提取難度大、算法適用范圍單一的問題,文章提出了一種基于卷積神經網絡的網絡隱寫分析方法。對網絡數據流進行預處理,將所有數據包處理成大小相同的矩陣,最大限度地保留數據特征完整性;使用異構卷積進行特征提取,減少模型計算量及參數數量,加快模型收斂速度;取消池化層,提高模型訓練效率。與傳統網絡隱寫分析方法相比,模型能夠自動提取數據特征,識別多種網絡隱寫算法。
關鍵詞:網絡隱寫分析;卷積神經網絡;特征提取
1 ? ?網絡隱寫分析簡要介紹
隱寫術是一種具有隱蔽性的信息隱藏技術,主要用于保密通信領域,但無疑也為不法分子創造了條件。網絡隱寫主要利用冗余字段及協議規則設定漏洞來進行秘密信息傳輸,具有動態性以及更強的隱蔽性。
網絡隱寫分析是網絡隱寫的逆過程。近年來,關于隱寫分析的研究多集中于通用隱寫分析,通過使用原始數據和隱密數據來訓練分類器,達到檢測多種隱寫方法的目的。卷積神經網絡獨特的卷積處理能力使其可以在不用對數據進行復雜預處理的情況下,直接自動提取高層特征并進一步分析,同時使計算復雜度以指數級別下降。
2015年,Qian等[1]使用深度學習來代替傳統的統計分析方式進行隱寫分析,提出了5層的CNN模型,測試效果較好,展現出了神經網絡在隱寫分析領域的巨大潛力。Oplatkova等[2]討論了能夠檢測由程序OutGuess編碼進行隱寫的神經網絡模型,實驗證明,具有兩個隱藏層的神經網絡檢測效果要優于一個隱藏層。Tumoian等[3]評估了用神經網絡檢測Rutkowska的TCP ISN隱蔽信道的精確率,研究發現,對于連續ISNs序列進行監測的正確率可達到99%,隱寫分析準確度較高。
2 ? ?基于異構卷積神經網絡的NS-HCNN
網絡隱寫分析模型(Network Steganalysis- Heterogeneous Convolutional Neural Network,NS-HCNN),構造卷積神經網絡模型NS-HCNN,包含輸入層、卷積層、全連接層和softmax層。NS-HCNN模型的網絡結構如圖1所示。
NS-HCNN模型先對網絡數據包進行預處理,選取數據包前1 024字節并將其處理成大小為32×32的二維矩陣輸入到卷積層。
模型共有5層卷積層,第1層為同構卷積核,共有大小為5×5的卷積核256個。第2層和第3層為異構卷積核,大小為5×5的卷積核128個,P=2。第4層為異構卷積核,大小為3×3的卷積核64個,P=2。模型取消池化層,第5層卷積層使用大小為18×18的全局卷積來產生512個特征值,供之后的全連接層進行特征匯聚。
將卷積層最終處理得到的特征輸入全連接層,增強模型特征整合能力。最后使用softmax函數判斷輸入數據流可能的分類情況。為防止過擬合,NS-HCNN模型添加L2正則以及在模型訓練期間隨機舍棄部分數據。
2.1 ?數據預處理
首先,模型在輸入層進行數據包預處理。為了確保卷積核特征提取效果,輸入層將原始數據包的前k個字節取出,若數據包長度小于k字節則做添0處理。使用此方法將變長數據包轉換為固定長度。其次,將其轉換成一個大小為n×n的二維矩陣送入卷積層。
以太網中,數據包大小范圍通常在64~1 518字節之間。如果數據包小于64字節,稱為碎片;如果大于1 518字節,稱為特大數據包。這兩種類型的數據包都不是常見的以太網數據包,不在本文考慮范圍內。經過實驗發現,網絡數據包大小處于1 024字節內時,隱寫分析效果最好。這可能是因為實驗樣本集中大小超過1 024字節的數據包樣本較少,導致大量長度不足1 024字節的數據包需添0填充至1 024,而這種行為影響了模型檢測。因此,k值選為1 024,n為32。輸入層經過預處理后生成大小為32×32的二維矩陣。
2.2 ?特征提取
卷積是一種有效提取特征的方法。使用卷積核遍歷輸入矩陣上的每一個值,輸入矩陣與卷積核重合區域內相對應的每一個值乘卷積核內對應點的權重,然后求和并加上偏置,最后經過非線性激活函數,得到輸出矩陣中的一個特征值。特征,其中,b是偏置項,f是激活函數。模型激活函數選擇ReLU函數,函數表示為f(x)=max(0, x)。
傳統的同構卷積中,卷積層包含的所有卷積核大小相同,即在3×3×256的卷積層中,其256個卷積核大小都為3×3。而NS-HCNN模型使用異構卷積,即每層卷積層中包含不同大小的卷積核,以此來降低模型的計算量和參數數量,提高模型檢測效率。
假設某卷積層中卷積核數量為M,其中,大小為H的卷積核有M/P個,剩余(1-1/P)×M個卷積核大小為1×1,則大小為H的卷積核的計算量為:
FLH=(DO×DO×M×N×H×H)÷P
大小為1*1的卷積核的計算量為:
該層總計算量為FL=FLH+FL1,其中,DO是卷積層輸出特征圖的尺寸,M是輸入通道數,N是輸出通道數,H是卷積核尺寸,P為比例系數。而同構卷積計算量為FLS=DO×DO×M×N×H×H,因此異構卷積與同構卷積計算量之比為,P≥2時,模型計算量大幅下降,檢測效率顯著提高。
網絡隱寫分析目的是檢測正常網絡流內數據包是否包含隱寫信息,而網絡隱寫算法為保證隱蔽性,隱寫嵌入率普遍不高,即隱寫噪聲通常較小。傳統的最大池化及平均池化方法容易導致過度采樣,不利于模型收斂。因此,NS-HCNN模型取消池化層,使用全局卷積來對特征進行聚合統計。實驗證明,全局卷積能夠提供更多特征信息供全連接層進行特征整合,提升模型分類效果。
3 ? ?實驗
為了測試本文模型性能,建立網絡隱寫數據集共2 400個數據包。網絡隱寫數據包通過重發隱寫算法[4]以及基于TCP首部ISN隱寫算法[5]生成。利用本文卷積神經網絡NS-HCNN模型與其他常用卷積神經網絡模型進行對比實驗,實驗結果如表1所示。實驗數據表明,NS-HCNN模型針對網絡隱寫算法檢測率最高能夠達到93.5%,且模型測試時間較短。
4 ? ?結語
本文提出了一種基于異構卷積神經網絡的網絡隱寫分析方法NS-HCNN。NS-HCNN模型通過對網絡數據包進行預處理,使用異構卷積核進行特征提取,取消池化層,增加全連接層等方法進行網絡隱寫分析。針對網絡隱蔽信道,模型檢測準確率為93.5%,證明了模型在網絡隱寫分析領域良好的檢測效果以及較低的時間復雜度。
[參考文獻]
[1]QIAN Y,DONG J,WANG W,et al.Deep learning for steganalysis via convolutional neural networks[J].Proceedings of SPIE - the International Society for Optical Engineering,2015(3):9409.
[2]OPLATKOVA Z,HOLOSKA J,ZELINKA I,et al.Steganography detection by means of neural networks[C].Sydney:DEXA08 19th International Conference,2008.
[3]TUMOIAN E,ANIKEEV M.Network based detection of passive covert channels in TCP/IP[C].New York:IEEE Conference on Local Computer Networks Anniversar,2005.
[4]MAZURCZYK W,SMOLARCZYK M,SZCZYPIORSKI K.Retransmission steganography and its detection[J].Soft Computing,2011(3):505-515.
[5]CRAIG H.Rowland covert channels in the tcp/ip protocol suite[J].First Monday,1997(2):32-48.
Research on a network steganalysis model based on convolutional neural network
Zhao Danyang
(College of Computer Science & Technology, Qingdao University, Qingdao 266000, China)
Abstract:In terms of the difficulties in feature extraction and single application scope of existing network steganalysis algorithms, a network steganalysis method based on convolutional neural network is proposed in this paper. The model preprocessed the network data stream and makes all packets into a matrix of the same size to preserve the integrity of data feature to the maximum extent. The model uses heterogeneous convolution for feature extraction, reducing the amount of model calculation and parameters, and speeding up the model convergence speed; pooling layer is canceled to improve the model training efficiency. Compared with the traditional network steganalysis method, the model can automatically extract data features and identify multiple network steganography algorithms.
Key words:network steganalysis; convolutional neural network; feature extraction