一種基于sdn控制器的安全流過濾器及過濾方法
【技術領域】
[0001]本發明涉及計算機技術和網絡領域,尤其涉及軟件定義網絡(SDN)和網絡安全控制領域。
【背景技術】
[0002]對于創新的新技術而言,人們很容易忽略安全問題。發明人在部署SDN時注意到幾個安全問題,使得SDN技術面臨諸多挑戰,如惡意數據流、交換機流表篡改,應用程序漏洞、數據管理機密性與可用性威脅等,這些都是傳統網絡中常見的攻擊,在SDN網絡中依然存在。大多數軟件定義網絡的安全問題主要圍繞控制器本身,控制器可以被認為是交換/路由的“大腦”,它允許來自每個系統的控制平面得到集中管理。控制器一旦失效,整個網絡就會崩潰。對于安全管理人員而言,SDN的最大挑戰是不惜一切代價地保護控制器。現在“大腦”已經從路由器或交換機中取出,并使用新的控制器來替代。一個很重要的安全問題是了解和審核誰訪問過控制器以及控制器在網絡中的位置,訪問控制器可能讓攻擊者完全控制,因此,必須保護控制器的安全。
[0003]網絡信息在控制器上的維護,通常依賴開辟專門的存儲模塊。控制器及應用程序根據網絡狀態下發策略。控制器維護的網絡信息分為靜態和動態兩種。由于可控制器根據網絡信息在網絡中執行相應功能,當信息被非法寫入時才會對網絡傳輸產生破壞,因此控制器上網絡信息維護的安全問題主要指數據完整性和可用性被破壞。數據信息被惡意程序或者攻擊者篡改,是傳統網絡中常見的問題。在多控制器系統工作時,被篡改的控制器可以通過東西向接口修改其他控制器的信息,也可通過南北向的接口修改SDN交換機和應用程序的信息,擾亂正確的控制邏輯和用戶數據。多控制器協同管理是存在數據可用性問題,比如,一個控制器節點出現錯誤導致與之協商的所有控制器都得到錯誤的網絡信息,影響最終數據流向的策略。應用程序通過控制器提供的北向接口接入控制器,調用控制器管理資源,如果沒有身份認證、權限管理、日志管理等功能模塊,依然會出現傳統網絡中常見的非法應用程序接入、應用程序越權操作、繞過審計追蹤等安全問題。此外,多個應用程序同時運行時可能由于控制邏輯完備性的缺失,導致策略不一致,主要表現為策略沖突和局部策略失效等冋題。
[0004]攻擊者可能會將攻擊目標鎖定為網絡中的網元。理論上,攻擊者能夠非法獲取對網絡的物理或虛擬訪問權,或是威脅到已與SDN連接的主機,然后發動攻擊破壞網元的穩定性。這種攻擊類似于拒絕服務(DoS)攻擊,或是一種企圖攻擊網元的模糊攻擊。目前控制器與網元之間的通信使用了大量的API(應用程序編程接口)和通信協議。SDN南向通信可能會用到OpenFlow(OF)、0pen vSwitch數據庫管理協議(OVSDB)、路徑計算單元通信協議(PCEP)、路由系統接口(I2RS)、BGP-LS、0penStack Neutron、開放管理基礎設施(OMI)、卩卯口61:、016;1^、0丨31116丨61'、1^(1;[118、他1'(]0即、可擴展消息處理現場協議(XMPP )、定位/標識分離協議(LISP)、簡單網絡管理協議(SNMP)、CL1、嵌入式事件管理器(EEM)、思科onePK、應用中心基礎設施(ACI)、0pf Iex等協議。這些協議各自都有著一些確保與網絡單元通信安全的方法。盡管如此,許多協議都非常新,部署者們可能并沒有以最安全的方式設置它們。
[0005]在目前的SDN安全攻擊中,攻擊者可以利用這些協議嘗試著將一些新流實例化至設備的流表中。攻擊者會企圖偽造一些新流,以讓不應當通過網絡的流量被允許通過。盡管流量定向負責指導流量通過防火墻,但如果攻擊者能夠創建一個可繞開流量定向的流,攻擊者將會攻擊成功。如果攻擊者能夠控制流量轉向自己設定的方向,那么他們可能會嘗試利用這一功能對流量進行嗅探,然后發動“中間人(MITM)”攻擊。
[0006]由于目前SDN網絡的安全性管理使用的技術大多和傳統網絡的技術大同小異,還沒有形成專門針對SDN網絡進行防護的技術和設備,而傳統的技術過于復雜冗余,維護成本也非常的高,在目前SDN網絡還不具有相當規模的情況下,適用程度不高。隨著SDN網絡安全性問題的日益顯著,各種針對SDN網絡的安全協議也會不斷出現,傳統的安全技術可擴展能力不足,也失去了軟件定義(Software Define)的精髓。
【發明內容】
[0007]針對【背景技術】的不足,本發明可以讓來自各種類型的未知流量信息在寫入SDN控制器中流表之前,在流的必經之處建立安全流過濾器,讓其進行流的分析處理,識別各種攻擊(中間人、Dos等)或者嗅探流量,保證流表中數據的合法性,彌補防火墻帶來的不足。同時本發明能夠處理和控制SDN交換機ACL,能夠組建全局中的流視圖、各類策略庫、規則庫和日志庫等,能夠動態實時管理安全設備,根據策略協調安全設施。
[0008]本發明的技術方案是:一種基于SDN控制器的安全流過濾器,包括流監測器、流用戶管理模塊、流生成器、策略規則管理模塊、安全設備管理模塊、安全信息庫,其特征在于:
[0009]所述的流用戶管理模塊獲得用戶信息,在經過策略規則管理模塊審核通過后,將用戶信息寫入安全信息庫;如果審核未通過,屬于非法用戶,直接向Orchestrat1n Layer層的管理模塊發送報警信息;
[0010]流監測器:使用DPDK架構和驅動程序,監控SDN網絡北向應用程序和東西向SDN控制器發送的各種流,根據策略規則管理模塊提交的信息對流是否合法進行審核,如果合法則將該流發送至流生成器模塊進行轉發,否則發送報警信息;
[0011]流生成器:使用DPDK驅動程序,向網絡中某個SDN控制器轉發流信息;流生成器解析流監控器提供的流信息,獲得該流需要發送的目標對象,根據目標對象信息從安全性信息庫中查詢目標控制器北向或東西向接口標準化數據,然后對其進行標準協議的解析,重新包裝該流使其和發送對象控制器一致,對于源和目的地標準相同的流,該模塊只進行透傳
[0012]策略規則管理模塊:該模塊定義SDN網絡中的安全策略和規范,只有符合這些策略和規則的流才是合法的;
[0013]安全設備管理模塊:該模塊管理現網的傳統安全設備,并記錄到安全信息庫中;
[0014]安全信息庫:用戶存儲整個SDN網絡的數據信息。
[0015]根據如上所述的基于SDN控制器的安全流過濾器,其特征在于:所述的流用戶管理模塊獲得的用戶信息為:連接SDN網絡的北向應用程序和東西向的SDN控制器,對SDN網絡中已知的應用服務和相鄰的SDN控制器進行注冊,獲得北向應用程序和東西向的SDN控制器發來的用戶信息。
[0016]一種基于SDN控制器的安全流過濾方法,其特征在于:它包括如下步驟:
[0017]流用戶管理模塊根據接收到的流信息自動探測網絡中具有已知的北向應用程序和東西向的SDN控制器信息,并將這些信息記錄到安全信息庫中;
[0018]安全設備管理模塊會探測網絡中的傳統安全設備,并將設備信息和它們的策略和規則記錄到本系統安全信息庫中;
[0019]流監控器通過DPDK驅動程序,接收北向應用程序和東西向的SDN控制器發送的待審查的流,并觸發策略規則管理模塊,反復的對待審查的流進行監控;
[0020]策略規則管理模塊中定義的安全策略進行審核,向流監控器返回是否審核通過的消息;
[0021]策略管理模塊定期向安全設備管理模塊發送消息,獲得傳統安全設備更新的安全策略和規則;
[0022]審查合法后流監控器將合法的流轉交給流生成器,通過DPDK驅動程序打包并SDN控制器轉發。
[0023]本發明的有益效果是:
[0024]本發明可以防止攻擊者建立繞開流量定向的流,規避防火墻的防護,對SDN網絡的核心網元進行攻擊。本發明對現有網絡是透明的,不需要修改現有網絡的任何網元和架構,而且使用DPDK驅動程序使得流量過濾效率極高,不影響網絡性能,并具有彈性軟件自定義的能力,可以針對具體應用搭建全局的安全控制策略、流視圖和各自安全規則庫等。在不修改已經存在的SDN網絡的前期下,利用最小的投資,加固整個網絡的安全性。該系統還給SDN網絡的北向用戶提供了一種安全虛擬化網絡接入的能力。同時本發明還適應SDN網絡未來安全性的要求,為其安全性的擴展預留了空間。
【附圖說明】
[0025]圖1為本系統結構圖;
[0026]圖2為本系統的工作流程圖。
【具體實施方式】
[0027]名詞解釋:SDN控制器是軟件定義網絡(SDN)中的應用程序,負責流量控制以確保智能網絡。SDN控制器是基于如OpenFlow等協議的,允許服務器告訴交換機向哪里發送數據包。
[0028]SDN網絡:通過將網絡設備控制面與數據面分離開來,從而實現了網絡流量的靈活控制,為核心網絡及應用的創新提供了良好的平臺。
[0029]Orchestrat1n Layer:即SDN網絡中的服務編排層,它是一個處于SDN控制器和業務層之間的一個抽象層。