軟件定義網絡(SDN)將網絡從硬件平面轉移到了軟件平面,受到軟件控制器的管理。其好處包括自動化和簡化網絡管理工作以及提高應用程序性能。但同時,作為一項新的技術,SDN也很容易受到攻擊。
首先,根據Casaba Security公司共同創始人Chris Weber表示,將控制集中到SDN控制器中能夠模糊了防護的分層硬件的界限,例如防火墻。
其次,根據Gartner分析師Neil MacDonald表示,通過從數據平面解耦控制平面,SDN引入了新的攻擊面,例如網絡控制器、其協議以及API。
第三,SDN的一個優勢在于,軟件控制器可以安裝在操作系統(例如Windows或者Linux)之上的COTS硬件上,這能夠節省部署和其他成本。但根據Casaba公司合作貨幣Ramsey Dow表示,反復出現緩沖區溢出等攻擊的主機會導致遠程代碼執行,從而危及這些系統。這使得SDN控制器面臨著與操作系統相同的風險。
第四,由于SDN控制器的集中化性質,高級持續性攻擊(APT)只需要感染這個控制器就可以有效地獲取對整個網絡的控制權。
為了解決這些問題,讓我們來看看一些有效的安全選項和控制措施。
SDN漏洞
在談到SDN如何替代用于保護傳統網絡的防火墻、內部交換機和其他硬件時,Dow說道:“對于SDN,我最大的擔憂是,我們從網絡設計中移除了歷史悠久的物理部分,并將這一切都虛擬化了。”
并且,當SDN替代這些分層硬件時,取而代之的是高度敏感的網絡層面,這很容易受到攻擊,MacDonald 表示:“SDN創建了一個抽象層,帶來了新的攻擊面,例如網絡控制器、OpenFlow協議,SDN可能部署的XMPP等協議,甚至供應商的API也可能受到攻擊。”
不僅控制平面的北向變得容易受到攻擊,而且其“軟肋”處更易受攻擊。通過在Windows或者linux之上安裝SDN控制器,企業讓它暴露在各種軟件問題面前,這些是日常電腦操作系統反復面對的問題。
微軟最新的安全公告公布了五個新的Windows安全漏洞,這些漏洞都能夠用于遠程代碼執行。開發人員最近還在Ubuntu中發現了四個新的漏洞,Ubuntu是流行的Linux發行版。
除了操作系統漏洞、新的攻擊面,以及消失的硬件防護線,最可能困擾SDN的可能是最常見的問題—錯誤配置。Enterprise CyberSecurity Architects公司首席執行官Neil Rerup表示:“大部分攻擊利用的是錯誤配置,而不是漏洞本身。”Rerup通過思科UCS錯誤配置的實例來說明這個問題:
一家企業部署了思科UCS,除了應用范圍不同(它解決服務器而不是網絡),這基本與SDN控制器是相同的概念。該企業部署UCS采用了默認設置,UID和密碼配置,沒有進行必要的控制來保護它。
Rerup表示:“我可以訪問這個控制平面,因為默認角色、默認密碼并沒有改變,訪問控制平面是通過用于訪問底層設備的正常的網絡連接。”
Rerup表示,由于SDN控制器相對較新,大多數安全人員并沒有完全了解它們,這往往導致他們沒有部署必要的控制措施。安全通常被視為SDN解決方案的一個“附加物”。雖然新技術意味著幫助企業提高生產力和降低成本,但這通常是沒有考慮企業的安全態勢得出的結論。
攻擊者只要通過高級持續攻擊獲得對SDN控制器的控制權,就可能導致整個網絡“淪陷”。作為直接與網絡設備通信的應用程序系統,SDN控制器是在所有組件直接建立通信的軟件系統。Dow表示:“就其本質而言,這些控制器觸及一切事物。如果你攻擊了一個控制器,你就有可能不受限制地訪問整個環境。”