(商丘職業技術學院,河南 商丘 476100)
隨著國家對“互聯網+”思想的大力推廣以及互聯網技術的廣泛應用,在極大地促進高技術公司和科研院所在數字化、信息化領域的研究熱潮的同時,也對高校實驗室教學工作提出了新的要求[1-2]。在互聯網技術中,網絡安全[3-4]作為維護互聯網系統安全穩定運行的重要保證,已經成為了國內外的研究熱點。為了緊跟時代步伐,保證互聯網教學質量,全面提升學生的互聯網能力,迫切需要建立完善的互聯網網絡安全教學實驗室。
在網絡安全技術體系中,防火墻[5]系統用于構造內部網和外部網之間的保護屏障,在硬件和軟件相結合的基礎上,保護內部網免受非法用戶的入侵和網絡攻擊的破壞。作為網絡安全的關鍵技術,防火墻系統的教學與實驗平臺需要為學生提供完備的學習與操作功能,從而讓學生形成完整的網絡安全知識體系,實現“教”與“學”的緊密連接,提高學生解決實際問題的能力。
以防火墻系統為核心的網絡安全實驗室與以往的教學平臺建設相比,由于涉及到安全性這一敏感與重要的問題,因此具有更大的建設難度,需要借助先進的硬件設備、軟件平臺、安全算法等,針對網絡攻擊與網絡連接的實驗問題,從而為學生提供完善的實驗環境。防火墻在實際系統中的大量應用使得其平臺的建設可以充分利用社會上高科技公司的先進技術,同時在高校教師團隊的主導下,建立適應高校教學、實驗與科研的綜合平臺。
為了達到上述目標,提出一種基于軟件定義網絡(software defined networking,SDN)的防火墻系統設計方案,從而建立可以在控制器端實現的防火墻邏輯。網絡安全的發展趨勢表明,下一代防火墻在策略執行方面更有活力,并有能力保護內部網絡。SDN技術通過集中式防火墻邏輯和分布式防火墻操作,可以實現可疑信息的準確隔離。實驗結果表明所提的防火墻建設方案可以大幅度提升網絡安全性能,從而證明構建的教學平臺具備高網絡安全性。
在整合學校實驗室現有資源的前提下,提出圖1所示的高校網絡實驗室防火墻系統。自下而上,數據服務器群主要用于為實驗過程及防火墻工作過程中產生的大量數據集進行存儲;實時通信服務器群不僅保證防火墻內外網的實時通信,還能夠對通信中的異常情況進行記錄和分析;認證系統與網絡服務器保證了信息通信功能的高可靠性,并為不同用戶的訪問提供了安全路徑;控制器通過與底層交換機之間的信息交互實現網絡狀態的實時監控;防火墻監控服務器中的先進算法可以大幅度提高整個校內網絡系統的安全性能;貫穿于整個系統的高速寬帶通信網絡環境實現了數據在系統內的快速流動。

圖1 防火墻系統架構
軟件定義網絡(software defined network,SDN)是一種基于Open Flow技術的新型網絡架構[6-7],其通過將網絡設備的控制與數據分開,既可以實現網絡流量靈活控制,又為應用創新提供了良好的平臺。連接跟蹤系統柜作為控制器和交換機之間信息交互的核心監控設備,需要借助SDN技術實現網絡連接狀態的高效防護。圖2為連接跟蹤系統的結構圖。

圖2 連接跟蹤系統軟硬件結構
圖2說明了跟蹤連接系統的三層結構。每一層被定義為具有類似屬性和狀態的流組條目。第一層由控制器及相應的流程規則組成,并以最高優先級處理數據狀態交互;中間層用于檢測新的狀態連接;最下層用于廣義交換機的流量轉發規則。進入跟蹤連接系統的數據將按照從第一到第三流的順序進行比較和分析。
連接跟蹤系統主要用于跟蹤啟動和停止兩個通信連接狀態[8]。對于連接啟動跟蹤,數據包只有在與任何現有的監控連接不匹配時才被轉發給控制器,連接跟蹤系統只需確保首個發起連接的數據包被報告即可。對于連接終止跟蹤,使用不同的方法來處理TCP和UDP連接:在UDP連接中,使用超時參數來檢測流量,因此不存在UDP的連接跟蹤開銷;在TCP連接中,交換機必須連續發送數據包到控制器以檢查TCP FIN標記,此時存在通信開銷。
連接跟蹤系統由專業技術公司設計并提供,將其輸出的數據包頭進行比較,如果不匹配,數據包被分類為新的連接發起數據包。對于TCP協議,連接跟蹤系統通過檢測FIN標志來判斷連接是否終止,同時將數據包發送到目的地;對于UDP協議,沒有明確的標志來檢測連接拆除,因此需要在流條目中會設置好截至時間,在特定的時間之后,如果沒有UDP分組被發送,則數據流將被移除并且結束連接。
為了提高SDN解決方案的效率,設計了基于拓撲數據的交換機流量表簡化方法:通過在每臺交換機上選擇性地安裝控制流入口,可以達到簡化防火墻的設置,實現連接交換機的快速檢查[9]。
為了實現連接跟蹤系統三層架構的可靠信息交互,提出了一種新型的入站流量高效分類方法:通過將反應流和主動流進行混合使用,可以預先將重要的防火墻控制流部署到相應的交換機中,從而保證在連接檢測之后,跟蹤連接得到穩定保持且不會有任何額外的延遲。
防火墻構建過程包括通過編程實現一些特定的防火墻配置功能。運行于防火墻監控服務器上,如圖3所示。

圖3 防火墻構建的軟件實現流程
1)通過REST API接口接收防火墻WEB應用模塊上系統管理員下發的RULE規則。
2)將流匹配規則以底層OPENFLOW軟交換機能夠理解的流表形式按OPENFLOW協議進行封裝。
3)通過安全通道將上述包含新流表信息的控制信息下發至相關底層交換機節點。
采用在GITHUB上獲取最新的RYU的源碼,在UBUNTU 4.15.1-13環境下進行二次開發和實驗。
源碼結構如圖4所示。

圖4 源碼結構圖
其中CMD目錄下的代碼是RYU框架的入口程序,它會調用RYU核心組件的初始化程序,而組件的初始化是在BASE目錄下進行的,TOPOLOGY目錄是有關拓撲的組件,控制也作為一個組件存在于CONTROLLER目錄中。
拒絕服務(denial of service,DoS)攻擊通過癱瘓計算機或網絡提供的正常服務來達到入侵損害系統的目的,是防火墻系統中需要重點防護的攻擊形式[10-11]。為了減輕控制器DoS的損害,提出一種優先級分類與維護的多消息隊列檢測方法:實時監視每個特定主機正在進行的連接的峰值數目,同時借助以前時間段的累計峰值歷史記錄,估算每個主機的峰值連接;如果來自主機的連接請求的數量超過了某個預定義值,那么它將被識別為攻擊者,其請求將被放入優先級較低的“警告隊列”中,并在處理完“正常隊列”中的所有請求后在對其進行處理[12]。
DoS攻擊的消息隊列處理過程如圖5所示。通信網絡中由MAC地址標識的主機可以根據其行為分配一個隊列線程。MAC地址散列使防火墻能夠對來自不同主機的入站數據進行分類,這樣可令控制器在不需要逐個檢查數據包的情況下立即丟棄惡意數據包。具有不同優先級的消息隊列確保優先處理來自沒有攻擊歷史的主機的合法請求,來自可疑主機的具有被攻擊歷史或當前正在增加連接數量的可疑主機的請求僅在普通隊列完全為空之后才被處理。如果沒有優先級隊列機制,等待上線的合法數據包就會因為有許多惡意數據包填滿了隊列而被丟棄。

圖5 DoS攻擊的防火墻處理方法
設計的防火墻狀態線程包括:狀態防火墻系統,REST API 服務系統,包過濾系統,二次轉發系統,DoS緩解系統。
1)狀態防火墻系統:通過控制層來獲取網絡的狀態信息,可用于狀態的跟蹤和監測。例如,當底層交換機收到的數據包中含有惡意數據,或者網絡中的鏈路失效時,該系統能及時檢測網絡的狀態,通過調整對當前網絡檢測查詢頻率,利用控制器發出一系列包過濾規則以確保網絡安全。
2)REST API 服務系統:該系統處在控制層中,其功能是實現控制層與應用層的連接,實現與狀態防火墻模塊的通信交互。REST API 服務系統包含許多可編程接口,它們遵循HTTP系列的協議規定。
3)包過濾系統:規定了關于數據包的一系列過濾操作規則,對接收到的數據包執行通過或者舍棄決策。包頭中有源和目標的IP地址、源和目標的MAC地址以及通信協議號等信息,設置過濾規則的主要目的是為了匹配包頭中的參數信息。
4)二次轉發系統:該與數據轉發層中的信息交互,將有關數據包的信息轉發到數據轉發層中。它可以統計數據轉發層中的流表項等信息,并將該信息發送至控制器。
5)DoS緩解系統:用于識別網絡攻擊,并激活DoS檢測與損害緩解功能。
同各國充分整合學校實驗室現有的硬件資源,建立基于校內云存儲、控制器陣列和高速通信網絡的防火墻系統。
云存儲系統如圖6所示。云存儲服務器選用10臺WD/西部數據My Cloud Pro PR4100 32TB,如圖7所示。并與校內現有的分散計算與存儲服務器進行整合,其功能包括:支持硬盤寄送,海量數據快速上傳;基于CIFS協議配合存儲網關,像讀寫本地數據存儲磁盤;支持Bucket鏡像,第三方數據無縫遷移;支持多用戶訪問控制、STS臨時授權;支持HTTPS加密傳輸和加密存儲。

圖7 WD/西部數據My Cloud Pro PR4100 32TB
控制器陣列(連接跟蹤系統)由專業公司設計研發,主要由Intel/英特爾8核CPU處理器及其外部電路組成,用于控制防火墻系統運行過程中的數據交換過程,并對工程中產生的網絡攻擊、異常數據注入等問題進行實時監控,從而實現基于軟件定義網絡的防火墻核心安全防護。
高速通信網絡由實驗室網絡升級改造而來。實驗室現原有網絡為典型的環形網,采用以太網接口設備及通信線纜,傳輸速度僅為1 Gbit/s,不僅不利于數據的快速傳遞,也會產生通信延時并降低防火墻安全防護處理的功能。通過將實驗室現有網絡改造為星形網,并采用光纖通信技術,使得數據通信速度提升至10 Gbit/s,不僅保障了數據的高速傳輸,而且降低了功耗,加大了通信距離。此外,借助交換機將實驗室通信網絡與校園高速寬帶網絡進行連接,可以實現數據在實驗室和校園內的快速共享。
DoS攻擊是一種非常常見的網絡攻擊,為了驗證實驗室建設的防火墻系統對于網絡攻擊的堅強性,并為學生進行相關實驗做好準備,本文給出了實驗室防火墻系統的實驗結果與分析。
第一步:模擬DoS攻擊。在正常情況下,主機每個時隙的請求數量在所有時隙都是靜態的,通過突然增加和減少攻擊者的時隙請求數量,用來以模擬TCP SYN洪泛攻擊。攻擊是以脈沖模式進行的,重復10個正常時隙,然后是10個攻擊時隙,Singe攻擊波時長為5個時隙,數據包到達率為10000packets/s,這種攻擊模式如圖8所示,這個實驗的參數在表3中列出。

圖8 攻擊模式
第二部:實驗與分析。連接跟蹤的DoS緩解功能利用多個具有不同優先級的哈希隊列來快速丟棄惡意包,并減少合法用戶的處理延遲。為了測試這個功能,本文將運行多個散列消息隊列的連接跟蹤與單個消息隊列進行比較。緩解時間被定義為從檢測到DoS到控制器隊列中所有惡意數據包被丟棄的時間。記錄所有攻擊波的緩解時間。
對于多個哈希隊列,連接跟蹤只需在正常和警告列表中檢查攻擊者的MAC地址對應的隊列,并將其全部刪除即可。當使用單個隊列時,連接跟蹤必須檢查每個單獨的數據包以匹配攻擊者信息。這些不需要的請求在隊列中出現的時間越長,控制器占用的內存資源越多。此外,這些惡意數據包的數量過多會對合法數據包產生負面影響,如額外的延遲以及由于溢出隊列而導致丟棄的機會增加。如圖8所示,使用多個哈希隊列的緩解時間范圍僅為0.3~0.85 毫秒。對于單個隊列來說,緩解時間是使用多個哈希隊列緩解時間的10~25倍,使用多個哈希隊列比使用單個消息隊列更能有效緩解DoS攻擊。

圖9 緩解時間對比
圖9為在發生DoS攻擊的情況下,不同優先級隊列對處理合法請求的影響。整個處理時間為來自正常主機請求的總處理時間,總處理時間標志著連接跟蹤在每個時隙處理來自普通主機的所有請求的持續時間。從圖10中可以看出,使用單個隊列的普通用戶的處理時間大部分是穩定的,只是隨著請求總數的增加而略微增加。可以注意到,傳入的數據包以塊形式到達,并且來自一個主機的所有請求數據包同時來到,隨后是其他主機的數據包。這與本文推測兩個主機之間數據包的混合到達不同,這是因為數據包在產生以及鏈路傳輸方面有延遲,單個隊列的連接跟蹤本身將處理從一個主機到另一個主機的所有請求。
相反,使用循環隊列查找的多個哈希隊列允許連接跟蹤依次處理來自兩個主機的請求。因此,在沒有攻擊的時隙內正常用戶的處理時間是單個隊列的兩倍。另外,從攻擊期的第二時隙到冷卻期的第一時隙為重復模式。普通用戶的處理持續時間大大減少,與單個隊列的持續時間相匹配。在第二個攻擊時隙(6,16,26,36,46)期間,攻擊者在第一個攻擊時隙被識別并標記為可疑主機,并且所有來自攻擊者的請求包被放入警告隊列。因此,正常隊列中的普通主機的請求首先被處理,這導致處理持續時間減半。另一方面,在正常時間的第一個時隙(11,21,31,41),由于攻擊者主機仍然有可疑的信譽,請求的數據包仍然具有較低的優先級,所以正常請求的處理持續時間不會被接收。在下一個時隙中,攻擊者信譽由于沒有違規而在下一個時隙正常重置,因此處理持續時間隨著分組查找而加倍。由以上分析可以得出結論,連接跟蹤能夠降低違反主機的處理優先級,以減少合法請求的延遲和丟棄概率。

圖10 正常主機的處理時間
在網絡信息安全知識體系中,防火墻實驗室系統的建設有利于培養學生系統的網絡安全知識,激發學習熱情和動手能力,提升軟硬件使用能力。通過整合校內已有的計算資源,同時充分利用校企聯合研發模式,建立了基于分散式云存儲、控制器陣列和高速通信網絡的集成化防火墻系統,解決了現有系統計算資源不足,通信控制性能較弱,數據傳輸速度較慢的問題。此外,提出了極有軟件定義網絡的新型防火墻安全防防護技術,通過實驗分析了所提技術的優越性,該技術可以大幅度提高校內網絡安全實驗室的科研水平,在保障學生完成高質量實驗的同時,也可以微笑內的教師和科研團隊的進一步創新提供保證。