李芳
摘 要: 針對傳統分析日志數據方法無法有效檢測出分布式拒絕服務攻擊存在的海量攻擊,對異常網絡數據包的檢測精度低,并且檢測效果不夠直觀的問題,研究了基于數據方塊圖的網絡數據包安全可視化過程,通過數據采集統計模塊采集并分析網絡中的隨機數據包,采用節點坐標運算模塊選擇合理的算法原則運算網絡數據包的圖形元素的屬性,利用圖形顯示模塊呈現網絡數據包的圖形元素,采用基于用戶的參數調控性能對顯示模型效果進行調控,獲取網絡數據包中的詳細信息。給出數據采集統計模塊和圖形顯示模塊的實現過程,采用數據方塊圖對網絡數據包中的攻擊和端口進行檢測,顯示出網絡中不同主機的端口、連接頻率和傳遞數據包的數量以及其中存在的攻擊,實現網絡數據包安全的可視化控制。實驗結果說明,所研究方法能夠準確檢測出網絡中存在的攻擊,準確顯示異常數據包。
關鍵詞: 數據方塊圖; 網絡數據包; 安全; 可視化
中圖分類號: TN711?34; TP319 文獻標識碼: A 文章編號: 1004?373X(2017)15?0083?04
Abstract: The traditional log data analysis method can′t detect the mass attacks existing in distributed denial of service attack effectively, has low detection precision of abnormal network data packet, and its detection effect is not intuitive enough. Aiming at the above problems, the data block diagram based security visualization process of network data packet is studied. The data acquisition and statistics module is used to collect and analyze the random data packet in the network. The node coordinate operation module is adopted to choose the reasonable algorithm principle to operate the attribute of graphical element of the network data packet. The graphic display module is employed to present the graphical element of network data packet. The parameter control performance based on user is used to control the effect of the display model, and get the detail information in the network data packet. The implementation processes of data acquisition and statistics module and graphic display module are given. The data block diagram is used to test the attack and port of the network data packet, display the port and connection frequency of different host computers in the network, transmit the quantity of data packet, and detect its attacks to realize the visualization control of network data packet safety. The experimental results show that the method can detect the attack existing in the network accurately, and display the abnormal data packet precisely.
Keywords: data block diagram; network data packet; safety; visualization
0 引 言
網絡安全可視化是當前研究的熱門行業,其同傳統分析日志數據方法存在較高的差異,極大地增強了網絡安全檢測的質量[1]。網絡安全可視化方法能夠對網絡中的海量數據進行處理和分析,采用圖形圖像模式協助網絡管理人員快速辨識網絡攻擊,對網絡安全事故進行準確監控,確保網絡數據包的有效傳遞。傳統分析日志數據方法無法有效地檢測出分布式拒絕服務攻擊存在的海量攻擊,對異常網絡數據包的檢測精度低,并且檢測效果不夠直觀[2]。因此,研究面向網絡數據包安全檢測的可視化技術具有重要的應用意義。
1 數據方塊圖的網絡數據包安全可視化設計
1.1 數據源選取
網絡數據包安全分析過程中進行分析的數據包主要來自于主機的日志記錄和系統報警信息等。采用tcpdump抓包工具采集網絡數據包,并對數據包進行降維和過濾處理[3]。用戶輸入目的IP地址能夠檢索想要分析的中心主機網絡狀況信息。通過目的端口能夠分析出異常網絡數據包,通過顏色描述端口信息。
1.2 數據方塊圖算法原則
采用可視化顯示工具——數據方塊圖對網絡數據包中的攻擊和端口進行檢測,實現網絡數據包的安全可視化監控。其運算原理為:
(1) 節點同核心節點間的距離同該節點與主機間的通信頻率一致。
(2) 主機節點同中心節點間的連線用于描述時間間隔中通信的數據包量,采用不同灰度描述數據包量,顏色越深說明通信數據包量越高。
(3) 主機節點包括不同的同心圓,顏色間的差異強度說明連接中相關的端口數量。
數據采集統計模塊按照合理算法規則將獲取的有價值信息進行分類并存儲[4];再運算節點坐標、節點間連線粗細和顏色組成,確保準確呈現異常網絡數據包;圖形顯示模塊將網絡數據包呈現到屏幕上。若默認參數形成的圖像內存在異常活動,并且該活動顯示模糊時,應及時調整參數,繼續從數據采集統計模塊開始再次檢測異常網絡數據包[5]。系統的運行流程圖如圖1所示。
通過圖1中數據方塊圖中全部模塊的處理后,顯示模塊能夠進行不規律網絡數據包的可視化呈現,并且可直觀看到其中的異常網絡數據包,實現網絡數據包的準確監控。數據方塊圖中各模塊的算法原則如下所述。
1.2.1 數據采集統計模塊
數據采集統計模塊對初始數據進行統計,結果如圖2所示。可以看出,該模塊通過哈希表保存數據包,表中的Key通過字符串方式描述數據,字符串由源IP、端口號和用戶設置的時間間隔構成的時間簽構成,各元素對應于圖形化描述中的各節點,用于描述同對應主機間的關系;Key對應的值用于描述當前連接通信過程中的全部數據包量[6]。如果用戶設置時間間隔則數據采集統計模塊將作為窗口,從初始數據向末尾數據進行遍歷分析。
1.2.2 節點坐標運算模塊
系統通過圖形描述網絡狀態,需要對節點坐標進行運算,節點坐標運算模塊的算法設計原則是:節點同中心節點間的距離同該節點與中心主機間的通信頻率一致[7]。該主機同中心節點距離更遠,將短時間內不存在頻繁連接的主機部署在中心主機附近。
1.2.3 圖形顯示模塊
系統將節點坐標以及其他信息保存到程序內,同時通過圖形顯示模塊依據節點坐標制作圖形。圖形顯示模塊的算法原則為:主機節點同中心節點間的連線用于描述時間間隔中全部網絡數據包。采用合理的系數完成映射,通過不同顏色描述網絡數據包量,紅色對應的網絡數據包量最多[8]。主機節點包括不同的同心圓,不同顏色對照強度描述了對應連接包含的端口數量。若統計出的節點內同一IP相關的端口數量較大,則該節點顏色對比度較高。而異常節點同主機節點間的連線同其他連線混合,會使得顏色模糊。
主機節點同中心主機節點間的連線描述了網絡的通信數據包量,采用圖形描述主機節點位置。端口在網絡前期特征以及攻擊特征檢測過程中具有重要作用,因此,應對端口進行可視化處理[9]。如圖3所示,將各節點均等劃分成個等寬的同心圓環,圓環內的顏色會映射到對應的色彩帶內,不同顏色間的距離是同主機節點與中心主機節點通信過程中包含的端口數量相關。網絡數據包通信過程中采用的端口數量越大,不同顏色間的距離越大,顏色的對比度也越高;而端口數量越小,不同顏色間的距離越小,則顏色更為相近。
2 數據方塊圖的網絡數據包安全可視化實現
2.1 數據采集統計模塊實現
數據采集統計模塊的運行流程如圖4所示。其中map1塑造在源文件的操作過程上,讀入源文件后,從文件首行開始采集數據,此時用戶輸入時間間隔在map1中的任意時刻若新元素(新源IP以及端口)的時間簽小于則會被統計到以“源IP、端口以及時刻t”為key的value值中,結束map1的統計后,將統計結果作為map2的初始值,map2的key為“源IP;時間簽”,map2用戶繪制節點,其中各元素同圖形中的節點相對應。
2.2 圖形顯示模塊實現
圖形顯示模塊包括節點繪制、主機節點和中心主機節點連線繪制以及鼠標事件。該模塊調用節點函數Draw()存儲節點位置,如果端口數量高于1,則繼續繪制,節點端口數量同其他節點中相關度最低的端口數量間的差距越高,level也越大[10]。采用不同的灰度繪制主機節點同中心主機節點間的連線,用于描述二者間進行通信的網絡數據包,各節點乘以該單位值能夠獲取灰度值。鼠標事件是用戶采用鼠標點擊節點過程中顯示節點各端口產生的網絡數據包量以及連接頻率。系統采用GraphicsPanel類實現鼠標事件。如果鼠標點擊的位置同圖形中任何節點的距離低于節點半徑,則驅動鼠標事件,并通過迭代器從map1中采集相關的節點信息,存儲在ArrayList 中,將ArrayList輸入到JScrollPane對象中進行顯示,再繪制表格,最終獲取的節點顯示效果見表1,其中的各行是當前節點同主機間通信所需的端口、間隔時間中連接頻率以及數據量。
3 實驗結果與分析
實驗采用某大學圖形圖像研究所中局域網捕獲的網絡數據,對本文系統的性能進行檢測。本文系統對網絡數據中的Sumrf類攻擊的檢測結果如圖5所示。可以看出,本文系統很容易檢測到一個網絡攻擊,中心主機外存在三個獨立節點,節點3與中心主機的連線顏色深于節點1和節點2與中心主機的連線,說明該用戶通過端口同主機間進行更多的信息交互。中心主機附近排列著很密的節點,節點都具有一致的IP,都是在短時間內產生的小數量的網絡數據包,依據經驗判斷其是Echo信息,屬于Smurf 類攻擊類型。而本文系統準確檢測并顯示了這些在極短時間中形成了大規模IP進行連接的攻擊類型。
本文系統能夠準確檢測到網絡數據包存在的端口掃描攻擊,檢測結果如圖6所示。從中可以看出,節點1和節點2是兩個異常節點,這兩個節點距離中心主機較遠,節點顏色層次較多,同中心主機節點存在較高的連接網絡數據包量。從圖6中還可以看出不同節點同中心主機間的連線較深,而過多的端口連接會導致節點顏色混亂。依據這些特征,本文方法檢測出了網絡數據包存在端口掃描攻擊。
本文系統面向大規模網絡數據可以更好地顯示異常網絡數據包,從圖7可以看出,節點1進行了文件傳遞,使用了較多的帶寬,導致傳遞的網絡數據包量較高,不是網絡攻擊。而本文系統檢測出的異常是節點2、節點3以及節點群可以看出,本文系統能夠準確將網絡異常數據包和正常數據包分開,確保用戶更容易對網絡異常數據包進行觀測,具有較高的網絡異常數據包檢測精度。
4 結 語
本文研究了基于數據方塊圖的網絡數據包安全可視化過程,實驗結果說明,所研究方法能夠準確檢測網絡異常數據包,并具有較高的交互性。
參考文獻
[1] 趙穎,樊曉平,周芳芳,等.網絡安全數據可視化綜述[J].計算機輔助設計與圖形學學報,2014,26(5):687?697.
[2] 范開元,米西峰.網絡數據包安全指標關聯規則挖掘應用與研究[J].科學技術與工程,2014,14(7):216?218.
[3] 彭國金,劉嫚婷,韓璐.基于飛行試驗采集的FC數據檢測分析技術[J].現代電子技術,2016,39(2):92?94.
[4] 劉真,吳向陽,鄭秋華.動態網絡可視化與可視分析綜述[J].計算機輔助設計與圖形學學報,2016,28(5):693?701.
[5] 陳紅倩,李慧,方藝,等.一種農殘檢測數據的融合對比可視化方法[J].系統仿真學報,2016,28(2):354?360.
[6] 黃國兵,金勇,賈榮興,等.某電能量遠方終端雙平面網絡接口設計[J].西安工程大學學報,2016,30(1):102?106.
[7] 翟永杰,李冰,常啟誠.風機滑動偏航系統的在線監測系統數據分析[J].現代電子技術,2015,38(21):123?126.
[8] 胡華全,吳玲達,楊超,等.衛星時變拓撲網絡多視圖可視化分析框架[J].系統工程與電子技術,2014,36(2):312?316.
[9] 董重,魏迎梅.運用平行坐標系的多變元時序數據可視化方法[J].小型微型計算機系統,2015,36(10):2408?2411.
[10] 韓丹,王勁松,宋密.基于Snort的多視圖網絡流量可視化系統[J].天津理工大學學報,2014,30(2):42?45.