尹 虹,趙 閃,李 澤,王 蕊,岳 超
(1.中國鐵道科學研究院集團有限公司 電子計算技術研究所,北京 100081;2.興唐通信科技有限公司,北京 100191;3.中國國家鐵路集團有限公司 辦公廳,北京 100844)
鐵路網絡作為我國的關鍵信息基礎設施,極易受到有組織黑客、網絡對抗的攻擊[1],面臨的大多是組織性、針對性較強的網絡威脅。數據加密技術、密鑰協商技術和隧道傳輸技術等密碼技術的應用,保障了鐵路網絡通信數據在傳輸過程中的完整性、真實性和機密性。但攻擊者也會使用密碼技術加密攻擊行為和惡意通信流量,規避各類檢測技術[2],造成對鐵路網絡的攻擊與破壞。因此,監測鐵路網絡加密流量中的攻擊行為和惡意流量,是當前網絡對抗嚴峻形式下的基本要求。
目前,加密流量監測分析研究的主要方向為加密流量應用類型識別、加密協議分析識別和加密流量異常識別等[3]。在加密流量應用類型識別中,通過提取與加密無關的數據包字節數長度和持續時間等特征信息,識別加密流量的網絡應用類型[4],如文字、語音或視頻等類型[5];在加密協議分析識別中,由于動態端口對比困難的問題,基于通信端口的加密協議識別技術整體識別準確率較低[6],基于數據流或數據包識別網絡流量的通信協議特征,并通過匹配各加密協議特征庫進行識別的準確率較高[7];加密流量異常識別可基于數據流或數據包提取網絡流量的持續時間、流量大小、包間隔時間等特征,使用支持向量機、樸素貝葉斯及C4.5決策樹等機器學習算法對加密流量特征進行分析[8],也可依據網絡流量加密協議通信周期行為特征的差異進行識別,利用機器學習或圖論等算法完成加密協議識別分類,例如,文獻[9]依據某下載軟件的網絡行為特征,實現加密流量異常識別。
在當前的研究中,機器學習等智能算法在加密流量監測中具備明顯的優勢,但現有的加密流量監測方法僅針對特定的、單一的協議或業務,存在普適性低等問題。因此,通過研究加密流量應用類型、加密協議、加密流量異常識別等智能算法,分析鐵路網絡加密流量重要特征,構建一套智能算法協同的鐵路網絡加密流量智能監測系統勢在必行。
本文設計的鐵路網絡加密流量智能監測系統主要由數據獲取、特征建模、智能分析、配置管理4個子系統組成,系統架構如圖1所示。

圖1 鐵路加密流量智能監測系統架構
數據獲取子系統為整個系統獲取原始流量,包括流量鏡像獲取、深度流解析(DFI,Deep Flow Inspection)、流量預處理和數據存儲等功能。部署時,針對需要監測的業務系統,使用探針設備對其核心交換機或服務器交換機上的流量設置旁路,使用端口鏡像技術將業務流量復制,并從特定輸出端口發出。DFI設備直接與探針相連,以pcap數據包的形式獲取采集到的端口鏡像流量數據,經過流量預處理,將流量數據中的網絡廣播或心跳包等冗余流量過濾后,存儲在存儲設備中。
特征建模子系統從經過預處理的鐵路網絡流量中提取可用于后續分析的網絡流量數據流和數據包特征、加密協議特征、密碼服務特征、異常特征、攻擊行為特征等。
(1)網絡流量數據流和數據包特征建模。提取明文流量、加密流量的流特征和包特征。流特征包括分組特征、熵特征、統計特征和距離特征;包特征包括負載特征、包分布特征、五元組信息及隨機性特征。
(2)加密流量協議特征建模。識別提取加密流量的加密協議特征,包括隧道通信特征、層疊加密特征、行為特征和距離特征。
(3)加密流量服務特征建模。提取其服務流量特征,包括密鑰協商流量特征、業務流量特征、管理流量特征和加密數據特征。
(4)加密流量異常特征建模。結合鐵路領域特征與深度模型特征對鐵路網絡加密流量進行行為畫像。鐵路領域特征主要與鐵路業務系統有關,如鐵路領域內網絡流時長、包時間間隔、背景流量特征、域名特征等。深度模型特征是指通過神經網絡模型的自我學習獲得的網絡流量特征。構造基線監測模型,計算鐵路網絡加密流量行為畫像與基線監測模型的距離向量,作為加密流量異常特征。
(5)攻擊行為特征建模。在對攻擊行為進行識別時,主要提取攻擊行為的行為模式、特征組合及上下文關聯。
智能分析子系統利用關聯分析模型、分類器模型、機器學習模型等對鐵路網絡加密流量特征、協議特征、服務特征、攻擊行為特征等進行分析與分類,輸出鐵路網絡加密應用類型、加密協議、加密服務、加密流量異常情況、攻擊行為等內容。
配置管理子系統向上承擔了整個系統的異常上報和策略下發功能,向下承擔了系統內部各子系統、各組件及功能模塊間的接口定義和協同工作,主要包括特征建模管理、模型管理、策略管理、告警管理和系統管理等。
鐵路網絡流量加密后,其數據包中的報文載荷內容已無法解析,但在通信時,數據包間的分組、字節數、熵值、負載、持續時間等時間序列特征仍存在可識別性。為實現鐵路網絡加密流量應用類型識別,本文引入長短期記憶(LSTM ,Long Short-Term Memory)網絡,識別鐵路網絡流量中的時間序列特征。LSTM網絡可計算本時刻與上一時刻的數據狀態,并傳輸給下一時刻;考慮到加密協議的復雜性,增加Elmo自回歸語言模型進行預訓練;增加自注意力(Self-Attention)結構層,充分學習加密流量的交互協議特征。加密流量應用類型識別架構如圖2所示。

圖2 基于Elmo+LSTM+Self-Attention模型的密文流量識別架構
(1)數據預處理。加密流量輸入后按流或會話的形式劃分為獨立的數據包。
(2)模型訓練向量。截取數據包字節,使用Elmo自回歸語言模型進行預訓練,通過密文流量上文及數據包字節等信息,對當前字節進行預測,過濾噪聲等干擾,輸出統一的包含密文流量特征信息的數據包數組向量。
(3)模型特征學習。通過構建LSTM、Self-Attention結構層及分類器算法,實現對數據包數組向量的特征信息提取及加密流量應用類型的分類識別等。Self-Attention結構層能提取到更加全面的密文流量特征,達到較高的識別準確性[10]。
鐵路網絡中存在多種流量加密技術和算法,使得加密后的流量特征各異,難以設計出一套通用的加密流量異常識別方法。因此,本文通過結合流時長、包時間間隔、包大小轉移矩陣、熵值、域名等領域特征和神經網絡模型自我學習獲得的深度模型特征,構建了一個基于兩階段LSTM的加密流量異常識別模型,如圖3所示。該模型可更好地獲取網絡流量數據包中的各類特征信息。

圖3 基于兩階段LSTM網絡的加密流量異常識別模型
(1)加密流量輸入后,按流或會話的形式劃分為獨立數據包。(2)分別提取或識別加密流量的領域特征和深度模型特征,其中,領域特征可通過對數據包時長、間隔時間、熵值等數據的統計、分析與計算來提取;在深度模型特征獲取中,需對數據包進行編碼,輸入至第1階段LSTM網絡中,針對
每個數據包進行深度學習,并逐個輸出特征數據,即深度模型特征。(3)獲取到鐵路網絡領域特征和深度模型特征后,通過聯合拼接方式將兩類特征拼接在一起,形成完整的加密流量特征數據,輸入至第2階段LSTM網絡中,進一步學習加密流量間的序列關系,并使用分類器算法進行分類識別。
本文從加密流量研究入手,分析了加密流量應用類型識別、加密流量異常識別等方法,設計了鐵路網絡加密流量智能監測系統,結合智能算法闡述了鐵路加密流量監測關鍵技術,有效協同多個模型,提升鐵路行業加密流量監測、識別與分析的能力,為加密流量監測技術的后續研究提供參考。